대부분의 사람들이 학습에 촛점을 맞추고 이야기를 나누고 전후 관계는 소외되기 때문에 실제로 IT 또는 ML에서 일하는 사람이라고 하더라도 명확하게 알지 못하는 경우가 있다. 모델 학습은 업무의 굉장히 작은 부분이다.전체의 10-20% 정도를 차지한다.
모델 개발 여정
Offline data --> EDA
Offline data --> Data Preparation --> Model Training <--> Model evaludation and validation --> Trained Model (Saved keras weights) 모델 하나 만드는데 6개월에서 1년 정도 소요됨. 기업의 비즈니스를 위해 활용되게 됨.
1) 학습 데이터 준비
머신러닝 모델의 목적에 맞춰서 학습 데이터 준비 - 전처리, 샘플링, 라벨링 등
2) Feature Engineering
클렌징, feature selection, feature reduction, data augmentation, data scaling and encoding
3) 모델 학습 및 최적화 평가
Model Training, evaluation, hyperparameter tuning, model selection, ensembles & Auto ML
Personal Insight: 대부분의 모델이 Production ML이라고 하더라도 50개 이상의 모델에 일반적으로 적용되는 모델을 만드는 경우는 적을 것 같다. 회사가 B2B일 때 모든 B2B에 기본적으로 활용될 수 있는 ML모델을 개발하고, (데이터 포인트가 모두 다름) 추가적인 기능을 가진 모델을 배포.
숙박 데이터 수집 방법 설계
외부 데이터베이스에서 호텔 정보와 리뷰 데이터를 수집하여 데이터셋을 구성 설계. 어떤 데이터를 수집하는 등의 프로토콜 설계.
개인 정보 보호 검토
숙박 데이터 수집
레이블링
데이터 정제 및 결측치 처리
크롤링으로 호텔 정보와 리뷰 데이터를 가져왔을 때, 정보 처리
데이터 분석
데이터 불균형 문제가 있는지, 어떤 특성을 가지고 있는지 확인하기
변환 및 스케일링
범주형 특성이 있는 경우, One-hot 인코딩 등으로 수치화 진행
데이터 분할 및 검증 세트 구성
전체 데이터 셋을 훈련,검증 및 테스트로 나누어 모델 훈련에 활용할 수 있도록 저장.
Personal Insight : 핸즈온 머신러닝 한번 더 훑어보기.
여러 가지 머신러닝 알고리즘 검토 - LR, Descision Tree, Random Forest, SVM, NN etc.
모델 선택 프로세스 - Evaluation Matrix - Validation set, algorithm
모델 훈련 및 성능 평가 - 하이퍼파라미터 튜닝
모델 성능 향상, 최적화
하이퍼파라미터 튜닝 - 모델의 출력을 최적화 하기 위해서 옵션값들을 변경하는 과정
앙상블 기법 - 다양한 알고리즘의 결과를 결합하여, 보다 정확한 예측이 가능한지 테스트함.
오차 분석 및 해결 - 모델이 잘못 예측한 샘플에 대한 오차를 분석
모델 개발이 완성되고나면, 정확도가 XX %이상인지 확인하고, 성능 개선의 가능성을 확인한다. 데이터의 양이 추가된다거나, 특성값이 추가된다거나, 더 나은 성능을 보이는 알고리즘의 도입 등을 고려할 수 있다. 해석가능성을 고려하여 LR 분류 를 신경망보다 우선하여 사용할 수도 있다. 적용가능한지 검토한다. 추론 속도, 지연 시간 등을 검토하고 A/B test 검토.
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (실습1) (0) | 2023.11.27 |
---|---|
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (3) (0) | 2023.11.27 |
[패스트 캠퍼스] 10개 프로젝트로 한 번에 끝내는 MLOps 파이프라인 구현 (1) (0) | 2023.11.25 |
[SQL] Programmers (1) | 2023.11.11 |
[SQL] Investigating a Drop in User Engagement (0) | 2023.11.11 |