ML Observability: 시간 경과에 따른 모델 동작 모니터링¶
모델 동작은 기본 하드웨어 및 소프트웨어의 변경, 트래픽의 유동적인 특성 등 일반적인 요인뿐만 아니라 입력 드리프트, 오래된 학습 가정, 데이터 파이프라인 문제 등으로 인해 시간이 지남에 따라 변경될 수 있습니다. ML Observability를 사용하면 성능, 드리프트 및 볼륨과 같은 여러 측면에서 Snowflake Model Registry를 통해 배포한 프로덕션 모델의 품질을 추적할 수 있습니다.
현재, 모델 모니터는 회귀 및 이진 분류 모델을 지원합니다.
참고
ML Observability를 자세히 살펴보고 사용을 시작하려면 빠른 시작 섹션을 참조하십시오.
ML Observability 워크플로¶
추론을 위해 Snowflake Model Registry에 로그된 모델을 사용하면 추론 메서드에 전달된 입력 유형 DataFrame 에 따라 Snowpark 또는 pandas DataFrame 의 형태로 결과를 받게 됩니다. 이 데이터는 일반적으로 Snowflake에서 생성됩니다. 추론이 Snowflake 외부에서 실행되는 경우에도 그 결과를 Snowflake에 저장하는 것이 일반적입니다. ML Observability를 사용하면 저장된 추론 데이터로 작업하여 이 두 가지 시나리오에서 모델의 성능을 모니터링할 수 있습니다. 일반적인 워크플로는 아래와 같습니다.

모니터링 로그는 추론 데이터와 예측을 저장하여 ML Observability 기능이 시간에 따른 예측의 변화를 관찰할 수 있도록 합니다. 모니터링 로그는 ID, 타임스탬프, 특성, 예측, 그리고 주어진 행이 예측인지 또는 관측된 데이터인지를 나타내는 기준 데이터 레이블이 포함된 테이블에 저장됩니다. 기본 구조는 아래와 같습니다.

모니터링하려는 각 모델 버전에 대해 모델 모니터 오브젝트를 명시적으로 만들어야 합니다. 각 모델 버전은 정확히 하나의 모니터를 가질 수 있고 각 모니터는 정확히 하나의 모델 버전을 모니터링할 수 있으며 공유할 수 없습니다. 모니터 오브젝트는 원본 데이터를 쿼리하여 모니터 로그를 자동으로 새로 고치고 로그를 기반으로 모니터링 보고서를 업데이트합니다.
각 모니터에는 다음 정보가 캡슐화되어 있습니다.
모니터링할 모델 버전입니다.
모니터 로그가 저장되는 테이블입니다.
데이터가 저장되는 최소 시간 단위(집계 기간)로, 현재 최소 1일입니다.
드리프트와 같은 비교 메트릭 작업을 위한 기준 테이블(선택 사항)입니다.
전제 조건¶
시작하기 전에 다음이 있는지 확인하십시오.
Snowflake 계정.
snowflake-ml-python
Python 패키지 버전 1.7.1 이상.Snowflake Model Registry 에 익숙해야 함.
모델 모니터 만들기¶
CREATE MODEL MONITOR 명령을 사용하여 모델 모니터를 만듭니다. 모델 모니터는 모니터링할 모델 버전과 동일한 스키마로 만들어야 합니다. 모니터가 만들어지는 스키마에 대해 CREATE MODEL MONITOR 권한이 있어야 합니다. 계정당 최대 250개의 모델 모니터를 만들 수 있습니다.
CREATE MODEL MONITOR 명령에 대한 자세한 내용은 CREATE MODEL MONITOR 섹션을 참조하십시오.
팁
모델 모니터에 사용할 수 있는 다른 SQL 명령에 대한 자세한 내용은 모델 모니터 명령 섹션을 참조하십시오.
일시적으로 모니터링 중지 및 재개하기¶
ALTER MODEL MONITOR … SUSPEND 를 사용하여 모델 모니터를 일시 중단(일시 중지)할 수 있습니다. 모니터링을 다시 시작하려면 ALTER MODEL MONITOR … RESUME 을 실행하십시오.
새로 고침 실패 시 자동 일시 중단¶
모델 모니터는 원본 테이블과 관련된 새로 고침 실패가 5회 연속 발생하면 자동으로 새로 고침을 일시 중단합니다. DESCRIBE MODEL MONITOR 명령을 사용하여 새로 고침 일시 중단의 상태와 원인을 볼 수 있습니다. 출력에는 다음과 같은 열이 포함됩니다.
aggregation_status
: 이 열의 값은 JSON 오브젝트입니다. 모델 모니터가 일시 중단된 경우 이 오브젝트의 값 중 하나 이상은 SUSPENDED 입니다.aggregation_last_error
: 이 열의 값은 일시 중단을 일으킨 특정 SQL 오류가 포함된 JSON 오브젝트입니다.
새로 고침 실패의 루트 원인을 해결한 후 ALTER MODEL MONITOR … RESUME 을 실행하여 모니터를 다시 시작하십시오.
모니터링 보고서 보기¶
모니터 보고서를 보려면 Snowsight의 모니터링 대시보드(ML)를 방문하십시오. Snowsight 탐색 창에서 AI & ML 을 선택한 다음 Models 를 선택합니다. 결과 목록에는 현재 역할이 액세스할 수 있는 모든 데이터베이스 및 스키마에 있는 Snowflake Model Registry의 모든 모델이 포함됩니다.
Models 목록에서 해당 행을 선택하여 모델의 세부 정보 페이지를 엽니다. 세부 정보 페이지에는 모델의 설명, 태그, 버전, 모니터 등 주요 모델 정보가 표시됩니다.
세부 정보 페이지의 Monitors 목록에는 모델 모니터 목록, 연결된 모델 버전, 상태 및 생성된 시기가 표시됩니다.
모니터 목록에서 해당 행을 선택하여 모델 모니터 대시보드 페이지를 엽니다. 대시보드에는 시간 경과에 따른 모델의 주요 메트릭을 표시하는 그래프가 채워집니다. 표시되는 정확한 그래프는 모니터의 기반이 되는 모델 유형(이진 분류 또는 회귀)에 따라 달라집니다.
대시보드에서 다음 작업을 수행할 수 있습니다.
시간 범위 선택기를 클릭하여 그래프의 범위를 변경할 수 있습니다.
Settings 버튼을 클릭하여 표시되는 그래프를 변경합니다. (자세한 정보를 보려면 메트릭 이름 위에 마우스를 올려놓습니다.)
Compare 모델 선택기 드롭다운을 클릭하여 모델 모니터를 비교하십시오.
Display monitor details 를 선택하여 모델 모니터에 대한 자세한 정보를 표시합니다.
액세스 제어 요구 사항¶
모델 모니터 오브젝트로 작업하려면 다음 권한이 필요합니다.
명령 |
필수 권한 |
---|---|
CREATE MODEL MONITOR |
|
SHOW MODEL MONITORS |
모델 모니터에 대한 모든 권한 |
DESCRIBE MODEL MONITOR |
모델 모니터에 대한 모든 권한 |
ALTER MODEL MONITOR |
모델 모니터에 대한 MODIFY |
DROP MODEL MONITOR |
모델 모니터에 대한 OWNERSHIP |
모델 모니터 대시보드 |
모델 및 모델 모니터에 대한 USAGE |
알려진 제한 사항¶
모델 모니터에는 다음과 같은 제한 사항이 적용됩니다.
모니터는 모니터링 중인 모델 버전과 동일한 데이터베이스 및 스키마에서 만들어야 합니다.
현재는 단일 출력 회귀 및 이진 분류 모델만 지원됩니다.
하나 이상의 예측 열(클래스 또는 점수)이 요구 사항입니다. 실제 열은 선택 사항이지만 정확도 메트릭을 계산하려면 필수입니다.
기준 데이터가 제공되지 않으면 드리프트를 계산할 수 없습니다. 기준 데이터를 추가하려면 모니터를 삭제했다가 다시 만들어야 합니다.
지정된 열은 모니터에서 한 번만 사용할 수 있습니다. 예를 들어 동일한 열을 ID 및 예측으로 모두 사용할 수 없습니다.
모델 모니터는 데이터에 null, NaNs, +/-Inf, 0-1 범위를 벗어난 확률 점수, 정확히 0 또는 1이 아닌 클래스, PREDICTION_CLASS_COLUMNS 열에 2개 이상의 클래스 등 유효하지 않은 값이 포함되어 있지 않아야 합니다. 이러한 문제로 인해 모니터가 고장나 결국 일시 중단될 수 있습니다.
타임스탬프 열은 TIMESTAMP_NTZ 또는 DATE 유형이어야 합니다. 예측 및 실제 열은 NUMBER 유형이어야 합니다.
집계 기간은 일 단위로 지정해야 합니다.
모니터링되는 특성의 수는 최대 500개까지 가능합니다.
최대 250대의 모니터를 만들 수 있습니다.
비용 고려 사항¶
- 가상 웨어하우스 컴퓨팅
모델 모니터는 가상 웨어하우스에서 실행됩니다. 이 웨어하우스는 사용자가 서비스를 생성할 때와 모니터를 새로 고칠 때마다 비용이 발생합니다. 가상 웨어하우스는 연결된 Snowsight 대시보드를 로딩할 때에도 사용되며 요금이 발생합니다.
- 저장
모델 모니터는 원본 데이터를 계정에 저장된 테이블로 구체화합니다.
- 클라우드 서비스 컴퓨팅
모델 모니터는 클라우드 서비스 컴퓨팅을 사용하여 기본 오브젝트가 변경되면 새로 고침을 트리거합니다. 클라우드 서비스 컴퓨팅 비용은 일일 클라우드 서비스 비용이 계정의 일일 웨어하우스 비용의 10%를 초과하는 경우에만 청구됩니다.