본문 바로가기
반응형

전체 글15

MongoDB 기초 - CRUD Todo 1. 가상환경 설정 및 접근 #python 가상환경 설정 python3 -m venv ./mondodb #가상환경 활성화 source mongodb/bin/activate #pip 설치 pip3 install pymongo pip3 install uvicorn pip3 install "pymongo[srv]" 2. 전체 폴더 구조 3. 폴더별 설명 main.py : uvicorn 명령어를 실행하게 하는 파일(uvicorn main:app --reload) config : 원하는 database에 접근하게 하는 세팅파일 client : MongoDB링크 등록(Cluster 접근) db : Cluster 내의 database 들 중 어떤 database 가져올 지 확인(todo_db) collection(t.. 2024. 3. 31.
MLOps Level 1 : ML pipeline automation ML Pipeline(Source code) 도입 Source Repository에 있는 모델을 활용하여 배포 과정 시작, 반드시 개발 환경을 포함하여 배포할 것(docker를 활용하는 부분일 것이라고 추측) Automatic pipeline(Production 과정에서) 기존의 0 단계에서 지적되었던 데이터 관리 문제를 해결하기 위해 Feature store 도입 Data source와 연동되어 데이터 자동 수집 수집된 데이터에 대한 형상관리 기능 추가 데이터 변환(엔지니어링 과정에서 처리도 가능) 가능 및 버전관리 ML metadata store : log 담당 ML Pipeline 실행 기록 어떤 데이터를 활용하여 어떤 모델이 만들어져서 model registry에 어떻게 저장되었는 지 에 대한 기.. 2024. 3. 23.
MLOps Level 0 0 단계 : 기본단계 Research 과정과 유사한 프로세스를 가져가는 것으로 보임 1. Offline 데이터 추출 및 분석 데이터를 수동관리하고 필요한 시점마다 특정 위치에 데이터를 옮기는 방식 데이터 유출, 일관성 부족, 접근성 저하 의 문제가 있음 데이터의 변화 적용이 어렵기 때문에 모델에서 문제 발생 시 파악할 때 어려움이 존재 2. 학습된 모델을 모델 레지스트리에 저장 실험적인 단계에서는 상관이 없지만 자동화가 되어있지 않기 때문에 휴먼 에러 발생 가능성 존재 Model Registry : 배포(프로덕션) 가능한 모델인지 확인 불가, 모델에 문제가 있을 경우 재학습이 불가능(대응이 어려움) Model Serving : 모니터링 및 로깅 시스템이 없음, 디버깅이 어려움. 데이터 관리 시스템 구축 .. 2024. 3. 23.
Applications of RNNs RNN의 종류 그림 예시 One-to-one 전통적인 신경망 One-to-many 음악 생성, 이미지 자막달기(image captioning) Many-to-one 문장 분류, 영상 분류 Many-to-many 개체명 인식 Many-to-many 번역기 Reference : [1] Afshine Amidi, Shervine Amidi, "CS 230 - Deep Learning", https://stanford.edu/~shervine/teaching/cs-230/cheatsheet-recurrent-neural-networks 2024. 3. 23.
Recurrent Neural Network RNN? 이전의 hidden state를 가지면서 이전 출력을 입력으로 사용가능하도록 하는 신경망(이전 시점을 고려) 관련 수식 1. hidden state : $$ a^{} = g_1\left(W_{aa}a ^{t-1} + W_{ax}x^{t}+b_a \right) $$ 2. output state : $$ y^{} = g_{2}\left ( W_{ya}a^{} + b_y \right )$$ RNN의 내부 장점(Advantages) 단점(Cons) 임의의 길이의 입력 처리 가능 입력 크기에 따라 모델 크기가 증가하지 않음 과거 정보를 활용하여 계산 가중치는 시간 축 상에서 공유 계산 속도가 느림 오래 전 정보에 대한 접근이 어려움 현재 상태에 대한 향후 입력을 고려할 수 없음 Loss function .. 2024. 3. 23.
Model Decay의 이유(1) : Data Drift, Training-serving Skew 그렇다면 이런 이유에는 어떤 것들이 있을까? 1. Data drift - feature drift, population, or covariate shift 데이터가 지속적으로 변경되고, 그에 따라 변수들의 분포가 의미있게 달라지게 된다.(과거 형태의 데이터에는 유효한 모델!) 연구용 ML에서는 같은 데이터(주로 benchmark)를 사용하기 때문에 문제가 되는 부분이 아니지만 프로덕션 ML에서는 중요한 부분이라고 생각된다. 2. Training-serving skew 학습한 데이터가 너무 깔끔해서(artificially constructed or cleaned data) 실제로 모델 사용 과정에서 받는 데이터셋(Production data)과 차이가 발생하는 경우 이럴 경우에는 주로 모델을 실제 데이터를.. 2024. 2. 23.
반응형