- skt-fly ai 6기 패기반 MLOps 스터디 공부
-
Core components of mlflow
DS 프로젝트의 사이클
- Data Preparation
- ETL 파이프라인, DB에서 데이터 가져오기
- EDA
- Feature Engineering
- 카테고리, 실수형 피처 구분 등등
- Model training
- Model Validation
- Deployment
- Monitoring
- 모델이 재학습이 필요한지
-
why use mlflow
-
who uses mlflow
-
usecase of mlflow
데이터 사이언티스트가 mlflow를 이용하는 방법
- 실험을 트래킹하고 가정을 실험
- 코드 스트럭처링 ( 파이프라인 만드는 과정 )
- 모델 패키징과 의존성 관리(setup.py)
- 하이퍼파라미터 평가하기 ** 핵심기능
- 모든 하이퍼파라미터 tuning시 tracking 가능
- 파라미터별 시각화도 해둠
- 모델의 (재)학습 결과들을 비교함 → 최적 모델 선택
MLOPS 전문가가 mlflow를 사용하는 법
- 모델 학습 life cycle 관리, 모델 배포
- 보안상 안전하게 모델 배포하기
- 배포 의존성 관리하기
Prompt Engineering 유저
- LLM 평가, 실험
- 커스텀 프롬프트 만들기 , 실험
- 최고의 모델 선택하기
Usecase
- 실험 트랙킹 ( 파라미터, 매트릭) → UI로
- 모델 선택과 배포
- 모델 성능 모니터링
- 협동 프로젝트에서 유용
Extraction , Transformation , Loading
API | Preprocessing | Mongo DB, Database
- 도메인의 전문가, 비즈니스 분석가가 필요사항들은 모을거다. 데이터 사이언스팀이 Identify(정의) the Data 할거임
- DB나 API 로 데이터의 소스를 가져오고 파이프라인이 생겨진다.
- 데이터 파이프라인이 ETL을 하는 과정이다.
- Load를 어디서할지는 s3, mongoDB, mysql, postgres
Data Injection -> Feature Selection -> Model Creation & Hyper parameter tuning -> Model Deployment -> Model Monitoring & Retraining
- Dag (Directed Acyclic Graph) : 일들이 방향에 스케줄, 수행이 맞게 연결되어 있음
- Task : individual unit of work in a dag
- Dependencies : 의존성 테스크들은 이전 테스크가 진행되어야 된다.
MLOPS에서 데이터 파이프라인, 모델 학습, 배포 작업이 자동으로 스무스하게 진행되는 ml workflow 중요하다.
이러한 작업에 airflow는 적절하고 왜냐하면 정의, 자동화, 모니터 할 수 있다 ml pipeline의 모든 스탭을
-
Orchestrating ML Pipeline and ETL pipeline
- Data Injection -> Data Preprocessing -> Model training and Eval -> Model deployment
- 이걸 하기 적절한 것이 Airflow
-
Task Automation
-
Monitoring and alert
- real time monitoring ->
airflow UI - task logs
- alerts and notification -> email, slack
- retraining mechanism -> retry task -> pre define rules
- real time monitoring ->
