기본 콘텐츠로 건너뛰기

2023의 게시물 표시

큰 JSON 파일 파싱 Python 라이브러리 성능 비교

큰 JSON 파일 파싱 Python 라이브러리 성능 비교 1. 개요 1.1. 이 문서의 목적 큰 JSON 파일을 파싱할 때 메모리 사용량과 속도 측면에서 JSON 파싱 Python 라이브러리들을 비교해 봅니다. 1.2. 독자 큰 JSON 파일을 파싱하여 처리하고자 하는 개발자 1.3. 사전 지식 Python 프로그래밍 기초 JSON 파일 형식 2. 준비 2.1. 테스트 환경 테스트를 위해 사용한 환경은 다음과 같습니다. CPU: 12th Gen Intel Core i7-12700H x 20 Memory: 32GB OS: Ubuntu 22.04.2 LTS 2.2. 데이터 샌프란시스코의 지리 정보를 담고 있는 City Lots San Francisco in .json 파일을 테스트 데이터로 사용합니다. 데이터의 JSON 구조는 아래와 같습니다. { "type": "FeatureCollection", "features": [ { "type": "Feature", "properties": { "MAPBLKLOT": "0001001", ... "LOT_NUM": "001", ... }, "geometry": { "type": "Polygon", "coordinates": [ ... ] ...

텍스트 분류를 위한 순환 신경망 이해

텍스트 분류를 위한 순환 신경망 이해 1. 개요 텍스트의 정서가 긍정적인지, 부정적인지 분류하는 순환 신경망(Recurrent Neural Network, RNN) 모델에 대하여 설명 RNN 모델의 오류 역전파에 대하여 상세히 설명 구현 코드를 작성하지는 않지만 구현이 가능한 수준으로 설명 2. 문제 정의 텍스트의 정서가 긍정적인지, 부정적인지 표시되어 있는 데이터 세트를 사용하여 텍스트의 정서 분류 기능을 학습 데이터 세트는 N N N 개의 텍스트와 각각의 텍스트에 대한 정서 분류값을 가지고 있음 각각의 텍스트를 구성하고 있는 단어 수는 서로 다른 값을 가질 수도 있음 정서 분류는 부정적(0), 긍정적(1)으로 구분 새로운 텍스트에 대하여 정서가 긍정적인지, 부정적인지 예측 3. 문제 해결 과정 데이터 기반 예측 문제의 해결 과정을 아래의 세 단계로 나누어 볼 수 있습니다. 주어진 데이터 세트의 특성을 잘 나타내는 모델 함수를 정의 합니다. 모델 함수가 가지고 있는 파라미터들은 데이터 세트에 맞도록 값이 조정되는 요소들입니다. 데이터 세트의 참값과 모델 함수가 예측하는 값의 차이의 정도를 나타내는 비용 함수를 정의 합니다. 데이터 세트에 대하여 비용을 줄여나가는 방향으로 모델 파라미터를 조정 합니다. 비용이 최솟값에 가까워질 때까지 파라미터 조정 과정을 반복합니다. 이렇게 얻은 모델 함수를 사용하여 새로운 데이터가 주어질 때 예측하고자 하는 값이 얼마일지 추정합니다. 4. 모델 함수 정의 h t = t a n h ( W x h ⋅ x t + W h h ⋅ h t − 1 + b h ) y = W h y ⋅ h n + b y p i = s o f t m a x ( y i ) = e y i ∑ i = 0 1 e y i \begin{alignat}{4} h_{t}& = tanh (W_{xh} \cdot x_{t} + W_{hh} \cdot h_{t-1}+ b_{h}) \...