bokyoung3***
2023-04-22

프로덕션 환경에서 머신러닝을 다룰 때 무수히 생겨나는 물음표를 해결해줄 MLOps 지침서
한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
ML 시스템은 다양한 요소로 구성된 복잡한 시스템입니다. 프로덕션에서 ML 시스템을 작업하는 데이터 과학자와 ML엔지니어는 ML 알고리즘에만 집중하는 걸로는 절대 충분치 않다는 사실을 깨달을 겁니다. 알고리즘 외에 시스템의 다른 측면, 예컨대 데이터 스택, 배포, 모니터링, 유지 관리, 인프라에 관해 아는 것이 중요합니다.
비즈니스 요구 사항, 데이터 스택, 인프라, 배포와 모니터링 등 구성 요소와 각 요소에 속하는 이해관계자가 협업할 수 있도록 ML 시스템을 전반적으로 고려한다는 의미입니다.
ML 시스템 개발은 반복적이며 대부분 끝이 없는 프로세스입니다. 시스템을 프로덕션 환경에 배포하면 지속적으로 모니터링하고 업데이트 해야합니다.
1. 최적화할 지표 선택(ex. 광고를 부여주는 횟수 즉, 노출 횟수를 최적화)
2. 데이터를 수집하고 레이블을 얻음
3. 피쳐 엔지니어링 작업 진행
4. 모델 훈련
5. 오류 분석 중에 오류가 잘못된 레이블 때문에 발생한다는 사실 깨달음. 데이터를 다시 모델링함
6. 모델 다시 훈련
7. 오류 분석 중에 모델이 항상 광고를 노출하지 말라고 예측한다는 사실 깨달음. 이는 보유한 데이터 중 99.99%에 음성레이블(광고를 노출하지 않음)이 있기 때문. 노출된 광고에 대해 더 많은 데이터 수집 필요
8. 모델 다시 훈련
9. 모델은 2개월 된 테스트 데이터에는 잘 작동하지만 어제 데이터에는 성능이 좋지 않음. 모델이 구식 데이터에 맞춰져있으므로 최신 데이터로 업데이트 해야함.
10. 모델 다시 훈련
11. 모델 배포
12. 모델이 잘 작동하는 듯 함. 그런데 담당 실무자가 수익이 감소하는 이유에 대해서 물어봄. 광고를 노출하고 있지만 클릭하는 사람이 거의 없어 모델을 변경해 노출 횟수 대신 클릭률을 최적화 하고자 함
13. 1단계로 돌아가며 반복
<<머신러닝 시스템 설계>>는 한달전에 나온 따끈따끈한 책입니다.다른 머신러닝 책과는 다르게 머신러닝 모델 생성에서 끝나는 것이 아니라 실제 프로덕션 환경에서 머신러닝을 다룰때 꼭 챙겨야하는 부분을 알려주고 그 과정에서 생기는 궁금증을 해결해주는 책입니다. 프로덕션 환경에 모델을 적용할 때 고려해야 것들이 많고 놓치기 쉬운 부분도 많아서 꼭 ML 관련 업무를 하시는 분들에게 추천해주고 싶은 책입니다. 믿고보는 OREILLY! 강추!