생산화

프로덕션을 위해 ML 파이프라인을 준비하려면 다음 단계를 따르세요.

  • 파이프라인용 컴퓨팅 리소스 프로비저닝
  • 로깅, 모니터링, 알림 구현

컴퓨팅 리소스 프로비저닝

ML 파이프라인을 실행하려면 RAM, CPU, GPU/TPU와 같은 컴퓨팅 리소스가 필요합니다. 충분한 컴퓨팅이 없으면 파이프라인을 실행할 수 없습니다. 따라서 프로덕션에서 파이프라인을 실행하는 데 필요한 리소스를 프로비저닝할 수 있는 충분한 할당량을 확보해야 합니다.

  • 제공, 학습, 검증 파이프라인 이러한 파이프라인에는 TPU, GPU 또는 CPU가 필요합니다. 사용 사례에 따라 다른 하드웨어에서 학습하고 제공하거나 동일한 하드웨어를 사용할 수 있습니다. 예를 들어 학습은 CPU에서 이루어지지만 서빙은 TPU를 사용할 수 있습니다. 일반적으로 더 큰 하드웨어에서 학습한 다음 더 작은 하드웨어에서 제공하는 것이 일반적입니다.

    하드웨어를 선택할 때는 다음 사항을 고려하세요.

    • 비용이 저렴한 하드웨어로 학습할 수 있나요?
    • 다른 하드웨어로 전환하면 성능이 향상되나요?
    • 모델의 크기는 어느 정도이며 어떤 하드웨어가 성능을 최적화할 수 있나요?
    • 모델의 아키텍처에 따라 어떤 하드웨어가 이상적인가요?
  • 데이터 파이프라인 데이터 파이프라인에는 RAM 및 CPU 파이프라인에서 학습 및 테스트 데이터 세트를 생성하는 데 필요한 할당량을 추정해야 합니다.

각 파이프라인에 할당량을 할당하지 않을 수도 있습니다. 대신 파이프라인이 공유하는 할당량을 할당할 수 있습니다. 이러한 경우 모든 파이프라인을 실행할 수 있는 할당량이 충분한지 확인하고 단일 오류 파이프라인이 모든 할당량을 소비하지 않도록 모니터링 및 변경을 설정하세요.

할당량 추정

데이터 및 학습 파이프라인에 필요한 할당량을 추정하려면 추정의 기반이 되는 유사한 프로젝트를 찾으세요. 제공 할당량을 추정하려면 서비스의 초당 쿼리를 예측해 보세요. 이러한 메서드는 기준을 제공합니다. 실험 단계에서 솔루션 프로토타입을 제작하기 시작하면 더 정확한 할당량 추정치를 얻을 수 있습니다.

할당량을 추정할 때는 프로덕션 파이프라인뿐만 아니라 진행 중인 실험의 할당량도 고려해야 합니다.

이해도 확인

예측을 제공할 하드웨어를 선택할 때는 모델을 학습시키는 데 사용된 하드웨어보다 성능이 더 뛰어난 하드웨어를 선택해야 합니다.
거짓
정답입니다. 일반적으로 학습에는 서비스보다 큰 하드웨어가 필요합니다.

로깅, 모니터링, 알림

프로덕션 모델의 동작을 로깅하고 모니터링하는 것은 매우 중요합니다. 강력한 모니터링 인프라를 통해 모델이 안정적이고 고품질의 예측을 제공하는지 확인할 수 있습니다.

적절한 로깅 및 모니터링 관행은 ML 파이프라인의 문제를 사전 예방적으로 식별하고 잠재적인 비즈니스 영향을 완화하는 데 도움이 됩니다. 문제가 발생하면 알림을 통해 팀 구성원에게 알리고, 포괄적인 로그를 통해 문제의 근본 원인을 쉽게 진단할 수 있습니다.

로깅 및 모니터링을 구현하여 ML 파이프라인에서 다음 문제를 감지해야 합니다.

파이프라인 모니터링
서빙
  • 학습 데이터와 비교한 서빙 데이터의 편향 또는 드리프트
  • 예측의 편향 또는 드리프트
  • 값이 누락되거나 손상된 것과 같은 데이터 유형 문제
  • 할당량 사용
  • 모델 품질 측정항목
데이터
  • 특성 값의 편향 및 드리프트
  • 라벨 값의 왜곡 및 드리프트
  • 값이 누락되거나 손상된 것과 같은 데이터 유형 문제
  • 할당량 사용률
  • 할당량 한도에 곧 도달함
학습
  • 학습 시간
  • 학습 실패
  • 할당량 사용
유효성 검사
  • 테스트 데이터 세트의 편향 또는 드리프트

다음 항목에 대한 로깅, 모니터링, 알림도 필요합니다.

  • 지연 시간. 예측을 제공하는 데 얼마나 걸리나요?
  • 서비스 중단. 모델이 예측 제공을 중지했나요?

이해도 확인

다음 중 ML 파이프라인을 로깅하고 모니터링하는 주요 이유는 무엇인가요?
사용자에게 영향을 주기 전에 문제점을 미리 감지
할당량 및 리소스 사용량 추적
잠재적인 보안 문제 식별
위 항목 모두
정답입니다. ML 파이프라인을 로깅하고 모니터링하면 문제가 심각해지기 전에 문제를 방지하고 진단하는 데 도움이 됩니다.

모델 배포

모델 배포의 경우 다음을 문서화하는 것이 좋습니다.

  • 배포를 시작하고 출시를 늘리는 데 필요한 승인
  • 모델을 프로덕션에 배치하는 방법
  • 모델이 배포되는 위치입니다(예: 스테이징 또는 카나리아 환경이 있는 경우).
  • 배포가 실패한 경우 취해야 할 조치
  • 이미 프로덕션에 있는 모델을 롤백하는 방법

모델 학습을 자동화한 후에는 검증 및 배포를 자동화해야 합니다. 배포를 자동화하면 책임이 분산되고 한 사람으로 인해 배포가 병목 현상이 발생할 가능성이 줄어듭니다. 또한 잠재적인 실수를 줄이고, 효율성과 안정성을 높이며, 당직 교대 및 SRE 지원을 지원합니다.

일반적으로 모델이 예상대로 작동하는지 확인하기 위해 일부 사용자에게 새 모델을 배포합니다. 그렇다면 배포를 계속 진행합니다. 문제가 해결되지 않으면 배포를 롤백하고 문제 진단 및 디버깅을 시작합니다.