머신러닝 파이프라인이란
머신러닝 분야는 최근 몇 년간 정말 눈부신 성장을 이루었다.
연구 분야는 물론 각종 필드에서 머신러닝을 비즈니스와 결합하려는 시도를 하고 있다. 간단한 작업에서부터, 개인화된 서비스를 제공하기 위한 분야, 심지어는 무언가 새로운 것을 만들어내는 분야에까지 확장되고 있는 상황이다.
하지만, 이러한 관심과 대비되게도, 머신러닝은 소프트웨어 산업이 앞서 경험한 프로세스의 표준화를 거치지 못하였다.
머신러닝이 표준화된다면, 머신러닝 개발자와 데이터 사이언티스트들은 더욱 빠른 속도로 개발할 수 있게 되고, 이미 만들어둔 모델을 다시 쓸 수 있는 재사용성이 높아지며, 관리 및 배포가 더욱 용이해질 것이다.
머신러닝 파이프라인은, 앞서 말한 머신러닝 모델의 가속, 재사용, 관리 및 배포하는 프로세스를 구현하고 표준화한다.
이는 이전 세대 소프트웨어 산업에서 CI/CD(Continuous Integration/Continuous Deployment)를 도입하며 겪은 변화와 유사하다.
과거 오랜 시간이 소요됐던 웹 앱의 테스트 및 배포는 오늘날 몇 가지 도구와 개념들로 굉장히 간소화되었고 빨라졌다. DevOps 엔지니어와 소프트웨어 개발자 간의 협업이 필요했던 과거와 달리, 오늘날에는 몇 분만에 앱을 안정적으로 테스트하고 구현할 수 있게 된 것이다.
이러한 선례들로부터, (머신러닝을 공부하는) 우리는 워크플로우의 많은 부분을 배울 수 있다. 물론 데이터의 변경이 잦고, 시간이 지남에 따라 성능이 저하될 우려가 있다는 점 등 좀 더 신경 써야 할 부분이 있긴 하지만, 전반적인 플로우는 비슷하리라고 생각된다.
파이프라인의 단계
자동화되고 재현 가능한 파이프라인은 모델의 배포를 도와준다. 다음은 파이프라인에 필요한 단계이다.
- 효율적 데이터 버저닝과 새로운 모델 학습 실행
- 새로운 데이터의 유효성 및 데이터 드리프트 확인
- 모델 학습 및 검증을 위한 효율적인 데이터 전처리
- 효과적인 머신러닝 모델 학습
- 모델 학습 추적
- 학습 및 튜닝된 모델의 분석 및 검증
- 검증된 모델의 배포
- 배포된 모델 스케일링
- 피드백 루프 이용 새로운 학습 데이터 수집 및 성과 지표 모델링
위 목록에는 중요한 한 가지가 빠져있다. 바로 모델 아키텍처 선택이라는 굉장히 기본적이면서도 필수적인 것이 빠져있는데, 이는 중요한 만큼 ML/DL 카테고리로 분리하여 따로 다루도록 하겠다.
'MLOps' 카테고리의 다른 글
TFX 컴포넌트 개요 (0) | 2021.12.11 |
---|---|
TFX - 텐서플로우 익스텐디드 (0) | 2021.12.08 |
파이프라인 오케스트레이션 (0) | 2021.12.06 |
머신러닝 파이프라인 단계 (0) | 2021.12.03 |
머신러닝 파이프라인의 필요성 (0) | 2021.12.01 |
댓글