제퍼넷 로고

종단 간 MLOps 아키텍처 및 워크플로

시간

개요

모든 기계 학습 산업 비즈니스 문제를 위해 개발된 프로젝트는 문제를 개발하고 생산에 신속하게 배포하는 것을 목표로 합니다. 따라서 자동화된 ML 파이프라인을 개발하는 것은 어려운 일이 되며, ed ML 파이프라인은 기계 학습 작업(MLOps) 개념을 다룰 수 있습니다. 많은 산업용 ML 프로젝트는 개념 증명에서 생산까지 진행되지 않습니다. 오늘날에도 데이터 과학자는 ML 파이프라인을 수동으로 관리하므로 작업 중에 많은 문제가 발생합니다. 이 문서에서는 MLOps 아키텍처 및 워크플로를 통해 문제를 자세히 설명합니다.

출처: 발로하이

학습 O

이 기사에서는 다음을 학습합니다.

  1. 아키텍처에는 OP가 포함됩니다.
  2. MLOps 아키텍처의 각 구성 요소에서 데이터 엔지니어, 데이터 과학자 및 ML 엔지니어의 역할.
  3. 아키텍처에서 각 단위의 워크플로우 및 중요성.
  4. 업계에서 MLOps의 응용 프로그램을 이해합니다.

이 기사는 데이터 과학 Blogathon.

차례

  1. MLOP용 아키텍처
  2. MLOps 프로젝트를 시작하기 위한 단계
  3. 기능 엔지니어링을 위한 파이프라인
  4. 실험
  5. 자동화된 ML 워크플로
  6. 업계에서의 MLOps 적용
  7. 결론

MLOps를 위한 아키텍처

이 섹션에서는 MLOps와 관련된 프로젝트 시작부터 모델 제공까지 일반화된 MLOps 엔드투엔드 아키텍처에 대해 설명합니다. 여기에는 다음이 포함됩니다.

  1. MLOps 프로젝트 시작을 위한 단계입니다.

  2. 기능 엔지니어링을 위한 파이프라인

  3. 실험

  4. 모델 제공까지 자동화된 모델을 위한 파이프라인.

MLOps의 아키텍처

출처: MLOps(머신 러닝 작업)

그림 1은 MLOps 아키텍처를 보여줍니다. 각각에 대해 자세히 논의해 봅시다.

MLOps 프로젝트 시작 단계

MLOps 아키텍처 및 워크플로의 첫 번째 단계에는 비즈니스 이해 관계자, 솔루션 설계자, 데이터 과학자 및 데이터 엔지니어가 포함됩니다. 각자 맡은 역할이 다릅니다. 다음 사항은 각각의 역할을 설명합니다.

  • 이해 관계자는 기계 학습을 사용하여 해결할 수 있는 비즈니스 및 문제를 분석할 책임이 있습니다.
  • 그런 다음 기계 학습 솔루션의 아키텍처는 솔루션 설계자입니다.
  • 데이터 엔지니어가 있는 데이터 과학자는 소스에서 들어오는 데이터를 분석합니다. 데이터 및 잠재적 데이터 소스의 분포 및 품질을 포함하는 유효성 검사를 수행합니다.
  • 데이터 과학자는 비즈니스 문제를 해결하기 위한 알고리즘 유형을 결정합니다. 목표는 피드백에 따라 지속적으로 개선되는 모델 훈련을 위해 데이터를 적절한 형식으로 가져오는 것입니다.

다음 섹션에서는 기능 엔지니어링을 위한 파이프라인 설계에 대해 설명합니다.

기능 엔지니어링을 위한 파이프라인

MLops의 기능 엔지니어링을 위한 파이프라인

출처: 라이브북

기능 엔지니어링에 대한 요구 사항 정의

데이터 과학자 또는 ML 엔지니어는 탐색적 데이터 분석을 통해 원시 데이터를 분석한 후 MLOps의 이 단계에서 사용되는 기능을 결정합니다. 기능은 모델 학습의 중요한 부분입니다. 기능 엔지니어링을 위한 파이프라인 설계에 대한 요구 사항이 있습니다. 이 단계에서 데이터 엔지니어는 정의를 담당합니다. 데이터 변환 집계, 정규화 및 데이터 정리 규칙과 같은 규칙을 사용하여 정보를 유용한 형식으로 수정하고 변경합니다. 데이터 엔지니어는 일반적으로 데이터 변환 규칙을 정의할 때 데이터 과학자의 도움을 받습니다. 규칙은 실험 목적으로 훈련된 ML 모델의 피드백에 따라 구성되어야 합니다.

기능 엔지니어링 파이프라인

이전 단계에서 데이터 엔지니어와 소프트웨어 개발자는 정의된 기능을 사용하여 기능 엔지니어링을 위한 파이프라인을 만듭니다. 모델 엔지니어링 실험 또는 생산 수준 모니터링의 피드백은 초기 규칙 및 사양을 조정하는 데 사용됩니다. 이 단계에서 데이터 엔지니어의 책임에는 지속적인 통합 및 전달을 위한 코드 작성과 여러 스토리지 소스에서 받은 데이터를 체계적으로 관리하는 것이 포함됩니다. 첫 번째 단계는 스트리밍 데이터 및 클라우드 스토리지와 같은 소스에서 원시 데이터를 얻은 다음 필요에 따라 데이터를 변환하고 정리하기 위해 전처리됩니다.

실험

MLOps 단계에서 작업은 주로 소프트웨어 엔지니어의 지원을 받는 데이터 과학자가 주도합니다. 첫 번째 단계는 다양한 소스에서 원시 데이터를 추출하고 전처리한 다음 데이터를 검증하고 훈련 및 테스트 세트로 분할하는 것입니다. 그런 다음 데이터 과학자는 이 데이터를 사용하여 가장 효과적인 기계 학습 알고리즘을 결정하고 하이퍼파라미터를 최적화합니다. 소프트웨어 엔지니어는 모델 훈련을 위해 잘 구조화된 코드를 개발하는 데 도움을 줍니다. 하이퍼파라미터는 미세 조정되며 성능 메트릭을 기반으로 가장 성능이 좋은 모델 매개변수가 선택됩니다. 교육은 "모델 엔지니어링"으로 알려진 최적의 성능이 달성될 때까지 계속됩니다. 마지막 단계는 나중에 사용할 수 있도록 모델을 저장소에 저장하는 것입니다.

자동차

MLOps의 이 단계에서 ML 엔지니어와 DevOps 엔지니어는 자동화된 ML 워크플로 파이프라인을 관리하고 모델 교육 및 계산에 필요한 인프라가 준비되었는지 확인하는 일을 담당합니다. 작업은 자동화된 기계 학습 파이프라인의 일부로 컨테이너와 같은 격리된 환경에서 수행됩니다. 파이프라인은 다음 작업을 자동화합니다.

  1. 데이터 추출: 오프라인 또는 온라인 매장에서 자동으로 데이터를 가져옵니다.

  2. 자동화된 데이터 준비 및 검증: 여기에는 교육 및 테스트 목적으로 데이터 세트를 분할하는 것이 포함됩니다.

  3. 새로운 미확인 데이터에 대한 자동화된 최종 모델 교육: 모델이 선택되고 이전 실험 단계에 따라 하이퍼파라미터가 미리 정의됩니다.

  4. 하이퍼파라미터 조정과 함께 자동 모델 평가. 모델의 우수한 성능이 달성되면 모델의 학습이 중지됩니다.

  5. 모델이 가장 성능이 좋은 매개변수로 학습되면 내보냅니다.

  6. 내보낸 모델은 레지스트리에 저장됩니다.

모델이 생성되면 DevOps 엔지니어가 관리하는 생산 단계로 이동합니다. 모델의 테스트 및 교육을 포함하여 지속적인 배포 파이프라인이 시작됩니다. 최종 빌드는 데이터베이스에서 들어오는 데이터의 실시간 예측을 위해 클라우드에 배포됩니다. 모델의 배포 및 모니터링은 컨테이너 내에서 REST API를 사용하여 수행됩니다. 파이프라인의 모니터링 구성 요소는 모델의 성능을 정기적으로 평가하여 지속적인 재훈련 및 최적화를 가능하게 합니다.

산업에서의 MLOps 적용

MLOps는 기계 학습 모델 관리를 개선하기 위해 다양한 산업에 널리 적용됩니다. 업계에서 MLOps의 일부 응용 프로그램은 다음과 같습니다.

  1. 의료 산업에서 MLOps는 약물 발견 프로세스를 간소화하고 임상 시험의 시간과 비용을 줄일 수 있습니다. 예를 들어 Microsoft의 Project InnerEye는 AI를 사용하여 3D 방사선 이미지를 분석하고 종양과 건강한 해부학을 구별하여 의료 전문가의 치료 계획을 지원합니다. 목표는 각 환자에게 약을 맞춤화하는 것입니다.
  2. 금융 부문에서 MLOps는 사기 탐지 시스템을 실시간으로 자동화하고 모니터링하여 사기 활동의 위험을 줄일 수 있습니다. 예를 들어, 5개의 네덜란드 은행이 협력하는 TMNL은 MLOps를 사용하여 AI 및 ML을 사용하여 잠재적인 자금 세탁 또는 테러 자금 조달에 대한 지불 거래를 모니터링합니다.
  3. 소매 업계에서 MLOps를 사용하여 커스토언스를 개인화하고 공급망 운영을 최적화할 수 있습니다. 소매업체는 ML 모델의 배포 및 유지 관리를 자동화하여 변화하는 고객 선호도 및 시장 상황에 신속하게 대응할 수 있습니다. 이를 통해 소매업체는 경쟁력을 유지하고 수익을 개선할 수 있습니다. 예를 들어 장바구니 분석은 소매업체가 자주 구매하는 항목 간의 연결을 찾고 연관 규칙을 사용하여 고객의 구매 습관을 발견하는 데 사용하는 기술입니다.
  4. MLOps의 또 다른 중요한 응용 분야는 MLOps를 사용하여 네트워크 운영을 개선하고 가동 중지 시간을 줄일 수 있는 통신 산업입니다. ML 모델의 배포 및 유지 관리를 자동화함으로써 통신 회사는 네트워크 문제를 신속하게 감지하고 해결하여 서비스 중단 위험을 줄일 수 있습니다. MLOps를 사용하는 통신 회사의 예로는 AT&T, Verizon 및 Ericsson이 있습니다. MLOps를 사용하여 이러한 프로세스를 자동화하고 일관된 모델 성능을 보장하며 모델 배포 속도를 높입니다. 목표는 수동 작업을 줄이면서 통신 산업에서 기계 학습의 정확성과 효율성을 개선하는 것입니다.

결론적으로 MLOps는 운영에서 머신 러닝의 힘을 활용하려는 회사에 점점 더 중요해지고 있습니다. 전체 ML 개발 및 배포 수명 주기를 자동화하고 간소화함으로써 MLOps는 기업이 운영을 최적화하고 오류 위험을 줄이며 수익을 개선하도록 도울 수 있습니다.

MLOps 전체 수명 주기
출처: 디에고 고스마르

이 문서에서는 MLOps 아키텍처를 사용하여 기계 학습 모델용 파이프라인을 자동화할 때의 이점에 대해 설명했습니다. 백서에 설명된 단계는 MLOps가 개념 증명 구현에 대한 간단한 접근 방식을 제공하는 방법을 보여줍니다. 프로세스 전체에서 효율성을 극대화하기 위해 데이터 엔지니어, 데이터 과학자 및 ML 엔지니어는 아키텍처의 각 측면에서 중요한 역할을 합니다. 이 기사에서는 MLOps 아키텍처가 기계 학습 모델을 위한 자동화된 파이프라인을 생성하는 문제를 해결하는 방법과 아이디어를 구현하는 간단한 솔루션을 제공하는 방법을 강조했습니다. 아키텍처의 각 단계에서 데이터 엔지니어, 데이터 과학자 및 ML 엔지니어의 참여는 전반적인 효율성을 향상시키는 데 필수적입니다.

MLOps 아키텍처는 여러 부분으로 구성됩니다. 다음은 몇 가지 주요 사항입니다.

  • MLOps 프로젝트를 시작하는 첫 번째 단계에는 품질 검사를 포함하여 소스에서 데이터를 수집하고 분석하는 작업이 포함됩니다. 주로 사용 가능한 데이터와 모델 개발에 사용해야 하는 데이터를 이해하는 데 중점을 둡니다.

  • 두 번째 단계는 변환 방법과 같은 기능 엔지니어링 규칙을 정의한 다음 모든 전처리가 자동으로 수행되는 완전한 기능 엔지니어링 파이프라인을 개발하는 기능 엔지니어링 파이프라인입니다.

  • 세 번째 단계는 데이터를 훈련 세트와 테스트 세트로 분할한 다음 모델을 훈련하고 하이퍼 매개변수를 미세 조정하는 실험을 포함합니다. 또한 모델이 저장되고 내보내집니다.

  • 마지막 단계는 단일 파이프라인을 통해 위에서 논의한 모든 프로세스를 자동화하는 자동화된 파이프라인의 개발입니다.

따라서 MLOps는 프로덕션 준비가 된 ML 모델을 개발하기 위한 완전한 파이프라인을 제공합니다.

이 기사에 표시된 미디어는 Analytics Vidhya의 소유가 아니며 작성자의 재량에 따라 사용됩니다. 

spot_img

최신 인텔리전스

spot_img