[해외DS] MLOps로 PoC 생산 문제 해결한다 (2)

비즈니스 이해 관계자, ML 파이프라인 초기부터 참여해야 성공 가능성 높아져 MLOps 인프라 구성 요소 굉장히 많아, 내가 어디까지 왔는지 항상 확인해야 MLOps 지원 생산 우선 접근 방식 도입한 뒤 팀 협업 방식까지 정의해야 완벽한 마무리

6
pabii research

[해외DS]는 해외 유수의 데이터 사이언스 전문지들에서 전하는 업계 전문가들의 의견을 담았습니다. 저희 데이터 사이언스 경영 연구소(MDSA R&D)에서 영어 원문 공개 조건으로 콘텐츠 제휴가 진행 중입니다.

사진=AI 비즈니스

[해외DS] MLOps로 PoC 생산 문제 해결한다 (1)에서 이어집니다.

2단계: 비즈니스 이해관계자의 지속적인 참여

ML 파이프라인의 첫 단계는 바로 범위를 지정하는 것입니다. 이 단계에서는 비즈니스의 적용 사례가 기술적인 요구 사항으로 변환되고, 머신 러닝 이니셔티브가 성공할 수 있는 길이 마련됩니다.

모든 ML 파이프라인은 궁극적으로 일부 유틸리티를 ‘제공한다’는 목적을 갖습니다. 아무리 뛰어난 성능을 발휘하는 모델이라도 비즈니스와 무관하다면 그저 무용지물일 뿐이라는 것입니다.

그렇기 때문에 모델의 파이프라인 초기에 비즈니스 이해관계자를 참여시키는 건 의미 있는 유틸리티 지표를 함께 정의하기 위한 기본적인 요소가 됩니다. 이후 이러한 측정 항목(이미 정의된 유틸리티 지표)은 모델 평가와 미세 조정에 사용할 수 있는 해당 ML의 측정 항목과 파라미터로 변환됩니다.

MLOps 인프라 내부에서 모니터링 시스템을 구축할 땐 비즈니스 및 ML 메트릭을 모두 추적해야 합니다. 아울러 가시성을 높이고 효율적인 검토를 하기 위해서는 비즈니스 이해 관계자가 보고서와 대시보드에 액세스할 수 있어야 합니다.

3단계: MLOps라는 여정에서 내가 어디에 있는지 확인하기

아래 다이어그램에서 확인할 수 있듯이 MLOps 인프라의 구성 요소는 굉장히 많습니다.

MLOps 인프라의 구성 요소/사진=데이빗 스컬리(David Sculley) 외, 머신 러닝 시스템의 숨겨진 기술 부채(Hidden Technical Debt in Machine Learning Systems)

이러한 구성 요소를 도입한다는 것은 조직이 ML 파이프라인의 요구 사항을 확인하고 이를 채택하는 계획을 세운다는 의미입니다. 다시 말하자면, 구글 클라우드 아키텍처 센터에 게재된 ‘MLOps: 머신러닝의 지속적 배포 및 자동화 파이프라인’에서 제시된 프레임워크에 맞춰 해당 프로세스의 수준을 MLOps 모범 사례가 지닌 보다 높은 성숙도 수준까지 높이는 과정이 MLOps의 여정인 겁니다.

이 인프라는 첫 번째 성숙도 수준에 도달하기 위한 최소 조건입니다. 모델 교육은 데이터 스냅샷(특정한 시점에 데이터 스토리지 내의 파일 시스템을 포착, 보관하는 기술)에 기반한 수동 프로세스이고, 모델 배포에는 단일 예측 서비스 생성이 포함됩니다.

프로젝트 팀이 MLOps 여정을 이어가고 성숙도 수준을 점점 높여가는 과정에서 가장 먼저 도입되는 것은 교육 파이프라인의 자동화입니다. 그 다음에는 서비스 파이프라인이 자동화됩니다. 이후 모델 블레싱(model blessing, blessed model은 모든 평가 기준을 성공적으로 통과한, 현재 모델보다 우수한 모델을 뜻합니다.) 및 데이터 드리프트(data drift, 모델 훈련 때 입력한 데이터의 통계적 분포와 실제 배포된 이후에 입력된 데이터의 통계적 분포가 어떠한 요소 때문에 달라지는 것) 감지 등 더 많은 모범 사례가 포함되면서 궁극적으로는 모니터링 시스템과 자체적인 내결함성을 보유한, 완전하고 완전히 자동화된 CI/CD 파이프라인이 탄생합니다.

만일 당신이 생산화할 파이프라인을 한 개 갖고 있다면, 가장 좋은 선택은 사내에서 혹은 다른 회사의 도움을 받아 성숙한 종단 간 MLOps 프로세스와 도구를 지금 당장 개발하는 것입니다. 또한 여기서 다른 회사의 도움을 받는다면 MLOps 도구와 사례 모음을 학습, 개발 그리고 유지 관리하는 데 들어가는 엔지니어링 오버헤드를 최소화할 수 있겠습니다.

생산화할 파이프라인이 여러 개 있고, MLOps 모범 사례를 받아들이려는 상황이라면 여러 개의 파이프라인 중 가장 대표적인 것을 선택하고, 이를 안정적으로 지원하기 위해 필요한 종단 간 MLOps 프로세스와 도구를 개발하는 것이 가장 현명한 접근 방식입니다. 일단 그렇게 하고 나서 모듈성과 컨테이너화를 활용하면 그 인프라를 차순위 파이프라인으로 지속적으로 확장할 수 있습니다.

실행 가능한 MLOps 계획을 설계할 땐 다음 두 가지 사항이 중요합니다.

  • 설령 가능한 생산 경로가 줄어든다 하더라도 일관성과 안정성, 그리고 확장성을 우선적으로 생각하십시오.
  • 기술 프로세스뿐 아니라 팀 내 그리고 팀 간 프로세스도 설계하십시오.

4단계: 잘 정의된 생산 경로 만들기

MLOps가 지원하는 생산 우선 접근 방식을 AI 애플리케이션 개발에 도입하는 건 ML을 지속적으로 성공시키는 열쇠입니다.

여러 파이프라인을 지원하기 위해 종단 간 MLOps 인프라를 확장할 땐 생산 시스템을 안정적이고, 유지 관리가 쉬운 형태로 유지해야 합니다. 이는 ML 애플리케이션의 데이터 형식과 알고리즘 접근 방식 및 프레임워크가 굉장히 다양하고, 지속적으로 변화하기 때문에 어려울 수 있습니다.

이때 종종 제시되는 해결책은 모델 실험 중에 ‘완전한 자유’를 허용하면서 모델 파이프라인을 생산할 수 있는 방법을 제한하는 것입니다.

데이터 과학자는 생산을 위한 모델 개발 방법을 제시하는 템플릿 파이프라인과 명확한 문서에 액세스할 수 있어야 합니다. 또한 머신 러닝 엔지니어는 MLOps 인프라를 지원하는 업데이트의 우선 순위를 지정하기 위해 요구 사항을 정기적으로 수집해야 합니다.

5단계: 팀이 협업하는 방법 정의하기

종단 간 ML 수명 주기 안에는 데이터 과학자, MLOps 엔지니어, DevOps 엔지니어 그리고 다양한 비즈니스 이해 관계자와 같은 많은 ‘팀’이 포함됩니다. 이러한 ‘당사자’ 모두는 성공적인 MLOps 이니셔티브를 위해 팀 내외의 책임과 협업에 동의해야 합니다.

종단 간 ML 수명 주기의 전반에 걸쳐 ‘할당된 책임’을 강조하는 책임 할당 매트릭스(RACI(responsible, accountable, consulted and informed) matrix; 책임있고, 신뢰할 수 있으며, 상담하고, 정보를 받는 것)는 이들에게 훌륭한 도구가 됩니다. 이 도구를 이용하면 모든 사람이 MLOps 인프라와 연관된 다양한 구성 요소와 프로세스와 관련해 행동하고, 상호 작용할 시기를 알 수 있기 때문입니다.

그 결과 팀의 협업은 원활해지고, 환경에 기민하게 대응하는 개발, 원활한 인계, 효율적인 모니터링 그리고 완전한 가시성이 보장되면서 수익과 생산 시간이 최소화됩니다.


Step 2. Continuously involve business stakeholders

The first phase of any ML pipeline is scoping. This is where a business use case is transformed into technical requirements and the road is paved for your machine learning initiative to succeed.

Ultimately, the purpose of any ML pipeline is to provide some utility. Even the most extraordinary performing model will be useless if it is not relevant to the business.

Involving business stakeholders early in the model pipeline is thus fundamental to defining meaningful utility metrics together. These metrics are then translated into corresponding ML metrics and parameters you can use to evaluate and fine-tune the model.

When setting up monitoring within your MLOps infrastructure, you need to track both business and ML metrics. Business stakeholders should also have access to reports and dashboards for better visibility and review.

Step 3. Identify where you are in the MLOps journey

MLOps infrastructures entail many components, as seen in this diagram: Components of an MLOps infrastructure (Source: Hidden Technical Debt in Machine Learning Systems)

Introducing these components is an iterative process in which organizations look at their ML pipeline needs and come up with a plan of adoption.

Following Google’s framework, we can refer to this process as an MLOps journey that leads to higher maturity levels of MLOps best practices.

At the first maturity level, this infrastructure is minimal: Model training is a manual process based on a data snapshot, and model deployment involves creating a single prediction service.

As teams progress in their MLOps journey and achieve greater maturity, automation is introduced first for the training pipeline and, secondly, for the serving pipeline. More best practices are embedded, such as model blessing and data drift detection, ultimately leading to a complete and fully automated CI/CD pipeline with monitoring and built-in fault tolerance.

If you have one pipeline to productionize, it is best to develop mature end-to-end MLOps processes and tools now, either in-house or through third-parties. The latter option will help in minimizing engineering overhead in learning, developing and maintaining the vast and ever-changing suite of MLOps tools and practices.

If you have multiple pipelines to productionize and you want to embrace MLOps best practices, a smart approach is to take a highly representative pipeline and develop the end-to-end MLOps processes and tools required to reliably support it. You can then iteratively expand the infrastructure with other high-priority pipelines while taking advantage of modularity and containerization.

When designing an actionable MLOps plan, it is important to

  • Prioritize consistency, reliability, and scalability, even if that means reducing the possible paths to production.
  • Design not only the technological processes but also the intra- and inter-team processes.

Step 4. Create a well-defined path to production

An MLOps-enabled production-first approach to developing AI applications is the key to continuous success in ML.

When expanding an end-to-end MLOps infrastructure to support multiple pipelines, you must keep the production system reliable and easy to maintain. This can prove difficult for ML applications where data formats, algorithmic approaches, and frameworks are so varied and continuously changing.

As a solution, it is often recommended that you allow for full freedom during model experimentation but limit the ways in which a model pipeline can be productionized.

Data scientists should have access to templated pipelines and clear documentation to guide model development for production. Machine learning engineers should also regularly gather requirements to prioritize updates in support of the MLOps infrastructure.

Step 5. Define how teams collaborate

The end-to-end ML lifecycle involves many teams: data scientists, MLOps engineers, DevOps engineers, and various business stakeholders.

As part of any successful MLOps initiative, all parties should agree on responsibilities and collaboration within and across these teams.

A RACI (responsible, accountable, consulted and informed) matrix highlighting the assigned responsibilities throughout an end-to-end ML lifecycle for all parties is a great tool. It allows everyone to know when to act and interact concerning the various components and processes involved in your MLOps infrastructure.

The resulting seamless team collaboration ensures agile development, smooth handovers, efficient monitoring, and full visibility — which, in turn, minimizes time to revenue and production.

Similar Posts