NAVER AI Tech(87)
-
2. How to make sequence data
4가지 대회의 솔루션들을 살펴보면서 알아보자. 1. Data Science Bowl - 게임을 통해 개념을 학습하고, 얼마나 학습했는지를 평가하여 특정 문제를 맞출 수 있을 것인가를 예측 - 범주형 변수 → embedding → reshape(-1,1) → Linear layer 통과 → LayerNorm → feature1 - 연속형 변수 → Linear layer 통과 → LayerNorm → feature2 - concat(feature1, feature2) → sequence data - 범주형 변수 개당 100dim으로 embedding후 1차원으로 concat (3개의 범주형 변수, 따라서 300dim 벡터) - 300dim → Linear layer 통과 → 64dim - 연속형 변수 → L..
2024.01.03 -
1. Deep Knowledge Tracing
Deep Knowledge Tracing : 딥러닝을 이용한 지식 상태 추적 - 추적 : Sequence Data 처리(RNN, LSTM, Transformer 등 시계열 모델을 사용) i-Scream Dataset 예시 - userid, 문제id, answerCode(corret or not), Timestamp, KnowledgeTag **EDA 첫 스텝 : 기술통계량(평균,중앙값, 분산, 표준편차, 최대/최소 값)부터 살펴보기 및 시각화 - 문제를 많이 푼 학생일 수록 정답률이 높나? - 더 많이 노출된 태그일수록 정답률이 높나? - 목적에 유의미한 feature를 찾기 위해 다양한 시각에서 확인 Sequence Data를 만들기 위해 사용자 별로 데이터를 생성해서 모델의 input으로 제공해야함...
2024.01.03 -
10. (Streamlit)ML 모델 배포하기
ML project 프로토타입을 위한 모델 서빙 툴 Streamlit - 다양한 component를 활용하여 대시보드 UI를 벡엔드 개발이나 HTTP 요청없이 구현할 수 있음 - Streamlit Cloud가 있어 쉽게 배포 가능. - streamlit의 gallery를 참고해서 다양한 대시보드를 확인하고 활용해보자. streamlit 라이브러리 설치 후 - cmd에서 streamlit run 명령어를 이용하여 파이썬 파일을 실행시키면 된다. 1) text 작성 2) button, check box 생성 3) dataframe 띄우기 4) Chart(Line, Map, Plot) 그리기 5) Input Box 를 이용해 input 받기 **streamlit document에 더 많은 component가 ..
2024.01.02 -
9. ML project LifeCycle
문제 정의 : 해결하는 문제는 무엇이고 어떻게 해결해야할까? 1) 현상 파악 2) 구체적인 문제 정의 3) 목표 설정, 지표 설정, 제약 조건 탐색(일정, 예산) 4) 베이스라인 구축 5) 평가 진행 6) 배포 후 모니터링 7) 추가 원인 분석 **ML 문제를 고려할 때는 얼마나 흥미로운지가 아니라 제품,회사의 비즈니스에서 어떤 가치를 줄 수 있는지를 고려해야 함. 산업에 대해 정리해둔 논문이 있는지 찾아보고, 해당 산업군에서 사용하는 기술, AI가 비즈니스에 영향을 주는 과정을 탐구해보는 것. - 회사의 비즈니스 모델을 파악하고, 현업분들에게 물어보는게 좋다. - 무엇을 고민중이고, 어떤것에 관심이 있는지 알아보자. AI Model develop cycle 1. make baseline with no ..
2024.01.02 -
8. Model Serving
Serving : ML 모델을 개발하고, 현실 세계(앱, 웹)에서 사용할 수 있게 만드는 행위 - 서비스화라고도 부름. API(Application Programming Interface) - 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스 - 쉽게는 기상청 API, 지도 API가 있고 PyTorch, Tensorflow 와 같은 라이브러리 함수 또한 API라고 볼 수 있다. 서버 구축 1. Flask, FastAPI등을 사용하여 직접 서버 구축(python 기반) 2. AWS의 SageMaker, GCP의 Vertex AI등을 이용하여 클라우드 서비스를 활용하여 서버 구축 - 비용문제 발생 3. Tensorflow Serving, Torch Serve, MLFlow, Ben..
2024.01.02 -
7. MLOps
MLOps : ML + Ops(Operations) - 머신러닝 모델을 운영하면서 반복적으로 필요한 업무를 자동화시키는 과정 - 데이터 엔지니어링 + ML + 인프라 - 모델링에 집중할 수 있도록 관련된 인프라를 만들고, 자동으로 운영되도록 만드는 일 MLOps component 1. 클라우드 : AWS, GCP, Azure, NCP 등 2. 서빙 : input이 주어졌을 때 모델을 동작시켜서 output을 전달하는 것 3. 모델링, 실험 : WanB, 인터랙티브 AI수업시간에 배웠던 Tool을 사용해보기 4. 데이터 Validation : feature 분포 확인(research, production 간 차이 확인) 5. 지속적인 학습 : 새로운 input dataset이 생성되었을 때 retrain하..
2023.12.28