BigQuery Explainable AI 개요
이 문서에서는 XAI라고도 하는 Explainable AI(인공지능)를 BigQuery ML이 어떻게 지원하는지를 설명합니다.
Explainable AI는 데이터 행의 각 특성이 예측 결과에 어떻게 기여했는지 정의하여 예측 머신러닝 모델이 분류 및 회귀 태스크에 대해 생성하는 결과를 이해하는 데 도움을 줍니다. 이 정보를 특성 기여 분석이라고도 합니다. 이 정보를 활용하여 모델이 예상대로 작동하는지 확인하고, 모델의 편향을 인식하고, 모델 및 학습 데이터를 개선할 방법을 모색할 수 있습니다.
BigQuery ML과 Vertex AI는 모두 특성 기반 설명을 제공하는 기존 Explainable AI 서비스를 제공합니다. BigQuery ML에서 설명 가능성을 실행하거나 Vertex AI에 모델을 등록하고 거기에서 설명 가능성을 실행할 수 있습니다.
각 모델 유형에 지원되는 SQL 문과 함수에 대한 자세한 내용은 각 모델의 엔드 투 엔드 사용자 경험을 참조하세요.
로컬 설명 기능과 글로벌 설명 기능
설명 기능에는 로컬 설명 기능과 글로벌 설명 기능이라는 두 가지 유형이 있습니다. 이들을 각각 로컬 특성 중요도와 글로벌 특성 중요도라고도 합니다.
- 로컬 설명 기능은 설명된 각 예시의 특성 기여 분석 값을 반환합니다. 이 값은 기준 예측과 비교하여 특정 특성이 예측에 영향을 미친 정도를 나타냅니다.
- 글로벌 설명 기능은 모델에 대한 특성의 전반적인 영향을 반환하며 종종 전체 데이터 세트에 대한 특성 기여 분석을 집계하여 얻을 수 있습니다. 절댓값이 높을수록 해당 특성이 모델의 예측에 더 큰 영향을 준 것입니다.
BigQuery ML의 Explainable AI 제품
BigQuery ML의 Explainable AI는 시계열 모델과 비시계열 모델 등 다양한 머신러닝 모델을 지원합니다. 각 모델은 서로 다른 설명 기능 방식을 활용합니다.
모델 카테고리 | 모델 유형 | 설명 기능 메서드 | 메서드 기본 설명 | 로컬 설명 함수 | 글로벌 설명 함수 |
---|---|---|---|---|---|
지도 모델 | 선형 및 로지스틱 회귀 | Shapley 값 | 선형 모델의 Shapley 값은 model weight * feature
value 와 같습니다. 여기에서 특성 값은 표준화되고 모델 가중치는 표준화된 특성 값으로 학습됩니다. |
ML.EXPLAIN_PREDICT 1 |
ML.GLOBAL_EXPLAIN 2 |
표준 오류 및 P값 | 표준 오류 및 p값은 모델 가중치에 대한 중요도 테스트에 사용됩니다. | 해당 사항 없음 | ML.ADVANCED_WEIGHTS 4 |
||
부스티드 트리 랜덤 포레스트 |
트리 SHAP | 트리 SHAP는 결정 트리 기반 모델의 정확한 SHAP 값을 계산하는 알고리즘입니다. | ML.EXPLAIN_PREDICT 1 |
ML.GLOBAL_EXPLAIN 2 |
|
대략적인 특성 기여도 | 특성 기여도 값의 근사치입니다. 트리 SHAP보다 빠르고 간단합니다. | ML.EXPLAIN_PREDICT 1 |
ML.GLOBAL_EXPLAIN 2 |
||
Gini 색인 기반 특성 중요도 | 학습 중 부스티드 트리 또는 랜덤 포레스트 모델을 생성할 때 각 특성의 유용성 또는 중요성을 나타내는 글로벌 특성 중요도 점수입니다. | 해당 사항 없음 | ML.FEATURE_IMPORTANCE |
||
심층신경망(DNN) 와이드 앤 딥 |
적분 경사 | Shapley 값과 동일한 공리 속성으로 특성 기여 분석을 효율적으로 계산하는 경사 기반 메서드입니다. 정확한 특성 기여 분석의 샘플링 근사값을 제공합니다. 정확성은 integrated_gradients_num_steps 파라미터에 의해 제어됩니다. |
ML.EXPLAIN_PREDICT 1 |
ML.GLOBAL_EXPLAIN 2 |
|
AutoML Tables | 샘플링된 Shapley | 샘플링된 Shapley는 각 특성에 모델 결과에 대한 기여도를 할당하고 특성의 다양한 순열을 고려합니다. 이 방식은 정확한 Shapley 값의 샘플링 근사값을 제공합니다. | 해당 사항 없음 | ML.GLOBAL_EXPLAIN 2 |
|
시계열 모델 | ARIMA_PLUS | 시계열 분해 | 시계열에 여러 구성요소가 있는 경우 시계열을 해당 구성요소로 분해합니다. 구성요소에는 추세, 계절, 휴일, 단계 변경, 급증, 하락이 포함됩니다. 자세한 내용은 ARIMA_PLUS 모델링 파이프라인을 참조하세요. | ML.EXPLAIN_FORECAST 3 |
해당 사항 없음 |
ARIMA_PLUS_XREG | 시계열 분해 및 Shapley 값 |
시계열을 추세, 계절, 휴일, 단계 변경, 급증, 하락 등 여러 구성요소로 분해합니다(ARIMA_PLUS와 유사).
각 외부 회귀의 기여도는 model weight * feature value 와 동일한 Shapley 값을 기준으로 계산됩니다. |
ML.EXPLAIN_FORECAST 3 |
해당 사항 없음 |
1ML_EXPLAIN_PREDICT
는 ML.PREDICT
의 확장된 버전입니다.
2ML.GLOBAL_EXPLAIN
은 각 특성이 평가 데이터 세트의 모든 행에 대해 수신하는 평균 절대 기여 분석을 취하여 얻은 전역 설명 가능성을 반환합니다.
3ML.EXPLAIN_FORECAST
는 ML.FORECAST
의 확장된 버전입니다.
4ML.ADVANCED_WEIGHTS
는 ML.WEIGHTS
의 확장된 버전입니다.
Vertex AI의 Explainable AI
Explainable AI는 Vertex AI에서 내보내기 가능한 지도 학습 모델의 다음 하위 집합에 사용할 수 있습니다.
모델 유형 | Explainable AI 메서드 |
---|---|
dnn_classifier | 적분 경사 |
dnn_regressor | 적분 경사 |
dnn_linear_combined_classifier | 적분 경사 |
dnn_linear_combined_regressor | 적분 경사 |
boosted_tree_regressor | 샘플링된 Shapley |
boosted_tree_classifier | 샘플링된 Shapley |
random_forest_regressor | 샘플링된 Shapley |
random_forest_classifier | 샘플링된 Shapley |
이러한 메서드에 대한 자세한 내용은 특성 기여 분석 메서드를 참조하세요.
모델 레지스트리에서 Explainable AI 사용 설정
BigQuery ML 모델이 Model Registry에 등록되어 있고 Explainable AI를 지원하는 모델 유형인 경우 엔드포인트에 배포할 때 모델에 Explainable AI를 사용 설정할 수 있습니다. BigQuery ML 모델을 등록하면 연결된 모든 메타데이터가 자동으로 채워집니다.
- Model Registry에 BigQuery ML 모델을 등록하세요.
- Google Cloud 콘솔의 BigQuery 섹션에서 Model Registry 페이지로 이동합니다.
- Model Registry에서 BigQuery ML 모델을 선택하고 모델 버전을 클릭하여 모델 세부정보 페이지로 리디렉션합니다.
- 모델 버전에서 작업 더보기를 선택합니다.
- 엔드포인트에 배포를 클릭합니다.
- 엔드포인트를 정의합니다. 엔드포인트 이름을 만들고 계속을 클릭합니다.
- 머신 유형을 선택합니다(예:
n1-standard-2
). - 모델 설정의 로깅 섹션에서 체크박스를 선택하여 설명 기능 옵션을 사용 설정합니다.
- 완료를 클릭한 후 계속을 클릭하여 엔드포인트에 배포합니다.
Model Registry의 모델에서 XAI를 사용하는 방법을 알아보려면 배포된 모델을 사용한 온라인 설명 가져오기를 참조하세요. Vertex AI의 XAI에 대한 자세한 내용은 설명 보기를 참조하세요.
다음 단계
- Vertex AI에서 BigQuery ML 모델을 관리하는 방법을 알아보세요.