모니터링 - AWS 규범적 지침

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

모니터링

모델이 이미 프로덕션 상태이고 비즈니스 가치를 제공하는 경우 지속적인 검사를 실행하여 모델을 재훈련하거나 조치를 취해야 하는 시기를 식별합니다.

모니터링 팀은 환경의 데이터 동작을 더 잘 이해하고 데이터 드리프트의 빈도, 속도 및 돌연성을 식별하기 위해 사후 대응이 아닌 선제적으로 행동해야 합니다. 팀은 훈련 세트, 검증 세트 및 기타 엣지 케이스 조각에 과소 표시될 수 있는 데이터에서 새로운 엣지 케이스를 식별해야 합니다. 서비스 품질(QoS) 지표를 저장하고, 문제가 발생하면 경보를 사용하여 즉시 조치를 취하고, 현재 데이터 세트를 수집 및 수정하는 전략을 정의해야 합니다. 이러한 관행은 모델에 대한 요청 및 응답을 로깅하여 문제 해결 또는 추가 인사이트에 대한 참조를 제공하는 것으로 시작됩니다.

이상적으로는 데이터 변환을 처리 중에 몇 가지 주요 단계로 로깅해야 합니다.

  • 모든 종류의 사전 처리 전

  • 모든 종류의 특성 저장소 보강 후

  • 모델의 모든 기본 단계 이후

  • 모델 출력에서 다음과 같은 모든 종류의 손실 함수 이전 argmax

다음 다이어그램은 이러한 단계를 보여줍니다.

데이터 변환을 위한 로깅 모델

SageMaker AI 모델 모니터를 사용하여 입력 및 출력 데이터를 자동으로 캡처하여 Amazon Simple Storage Service(Amazon S3)에 저장할 수 있습니다. 사용자 지정 제공 컨테이너에 로그를 추가하여 다른 유형의 중간 로깅을 구현할 수 있습니다.

모델에서 데이터를 로깅한 후 배포 드리프트를 모니터링할 수 있습니다. 경우에 따라 추론 직후에 실측 정보(올바른 레이블이 지정된 데이터)를 얻을 수 있습니다. 일반적인 예는 사용자에게 표시할 가장 관련성이 높은 광고를 예측하는 모델입니다. 사용자가 페이지를 떠나자마자 광고를 클릭했는지 여부를 확인할 수 있습니다. 사용자가 광고를 클릭한 경우 해당 정보를 기록할 수 있습니다. 이 간단한 예제에서는 훈련 및 배포 모두에서 측정할 수 있는 정확도 또는 F1과 같은 지표를 사용하여 모델의 성공을 쉽게 정량화할 수 있습니다. 데이터에 레이블을 지정한 이러한 시나리오에 대한 자세한 내용은 SageMaker AI 설명서의 모델 품질 모니터링을 참조하세요. 그러나 모델이 실제 비즈니스 성과에 대한 프록시일 뿐인 수학적으로 편리한 지표를 최적화하도록 설계되는 경우가 많기 때문에 이러한 간단한 시나리오는 자주 발생하지 않습니다. 이러한 경우 모범 사례는 모델을 프로덕션에 배포할 때 비즈니스 성과를 모니터링하는 것입니다.

검토 순위 모델의 사례를 고려합니다. ML 모델의 정의된 비즈니스 성과가 웹 페이지 상단에 가장 관련성이 높고 유용한 리뷰를 표시하는 경우 '이것이 도움이 되나요?'와 같은 버튼을 추가하여 모델의 성공을 측정할 수 있습니다. 각 검토에 대해. 이 버튼의 클릭률을 측정하는 것은 모델이 프로덕션 환경에서 얼마나 잘 작동하고 있는지 측정하는 데 도움이 되는 비즈니스 성과 측정 방법일 수 있습니다.

SageMaker AI에서 입력 또는 출력 레이블의 드리프트를 모니터링하기 위해 입력과 출력을 모두 모니터링하는 SageMaker AI 모델 모니터의 데이터 품질 기능을 사용할 수 있습니다. 사용자 지정 컨테이너를 구축하여 SageMaker AI 모델 모니터에 대한 자체 로직을 구현할 수도 있습니다.

개발 시간과 런타임 모두에서 모델이 수신하는 데이터를 모니터링하는 것이 중요합니다. 엔지니어는 스키마 변경뿐만 아니라 배포 불일치에 대해서도 데이터를 모니터링해야 합니다. 스키마 변경 사항을 감지하는 것이 더 쉽고 규칙 세트로 구현할 수 있지만 배포 불일치는 특히 경보를 발생시킬 시점을 정량화하기 위해 임계값을 정의해야 하기 때문에 더 까다롭습니다. 모니터링되는 배포가 알려진 경우 가장 쉬운 방법은 배포의 파라미터를 모니터링하는 것입니다. 정규 분포의 경우 평균 및 표준 편차가 됩니다. 누락된 값의 백분율, 최대값 및 최소값과 같은 다른 주요 지표도 유용합니다.

또한 훈련 데이터와 추론 데이터를 샘플링하고 배포를 비교하는 지속적인 모니터링 작업을 생성할 수 있습니다. 모델 입력 및 모델 출력 모두에 대해 이러한 작업을 생성하고 데이터를 시간 대비 그래프로 표시하여 갑작스럽거나 점진적인 드리프트를 시각화할 수 있습니다. 이는 다음 차트에 나와 있습니다.

드리프트에 대한 훈련 및 추론 데이터 모니터링

데이터 배포 빈도, 속도 또는 갑작스런 속도 등 데이터의 드리프트 프로파일을 더 잘 이해하려면 지속적으로 새 모델 버전을 배포하고 성능을 모니터링하는 것이 좋습니다. 예를 들어, 팀이 매주 새 모델을 배포하고 모델 성능이 매번 크게 향상되는 것을 관찰하는 경우 최소 1주일 이내에 새 모델을 제공해야 한다고 결정할 수 있습니다.