머신러닝 디자인 패턴 요약
- Serving 패턴 : 모델을 Production 환경에 서빙하는 패턴
- QA 패턴 : 모델의 성능을 Production 환경에서 평가하기 위한 패턴
- Training 패턴 : 모델을 학습하는 패턴
- Operation 패턴 : 모델을 운영하기 위한 패턴
Serving patterns : 실제 운영 환경에서 머신러닝 모델을 이용할 수 있도록 만드는 시스템 디자인
- Web single pattern
- Synchronous pattern
- 예측 결과에 따른 별도의 워크플로우 진행시 활용
- Asynchronous pattern
- Batch pattern
- 실시간으로 예측 결과를 얻을 필요가 없는 경우 활용 (스케쥴링 활용 / 주, 월, 분기, …)
- Prep-pred pattern
- 데이터 전처리와 예측의 분리가 필요한 경우 활용
- Etc.
QA patterns : 예측 서버와 모델 평가하기 위한 패턴
- Shadow AB-testing pattern
- 여러 예측 모델 및 서버를 운영 환경 데이터를 사용해 검증
- Online AB-testing pattern
- 여러 예측 모델 및 예측 서버를 프러덕션 데이터에서 시험
- Loading test pattern
- 예측 대기시간 확인 및 예측 서비스 부하 테스트
- Etc.
Training patterns : 학습 파이프라인을 구성하기 위한 패턴