BigQuery Explainable AI の概要
このドキュメントでは、BigQuery ML が XAI とも呼ばれる Explainable AI(AI)をサポートする仕組みについて説明します。
Explainable AI は、データ行の各特徴がどのように予測結果に影響を与えるかを定義することで、予測 ML モデルが分類タスクと回帰タスクに対して生成する結果の理解を容易にします。この情報は多くの場合、特徴アトリビューションと呼ばれます。この情報を使用して、モデルが期待どおりに動作していることを検証すること、モデルのバイアスを認識すること、モデルやトレーニング データの改善方法を知ることができます。
各モデルタイプでサポートされている SQL ステートメントと関数については、各モデルのエンドツーエンドのユーザー ジャーニーをご覧ください。
ローカルとグローバルの説明可能性
説明可能性には、ローカルの説明可能性とグローバルの説明可能性の 2 種類があります。これらはそれぞれ、ローカルな特徴の重要度とグローバルな特徴の重要度とも呼ばれています。
- ローカルの説明可能性は、説明された各例の特徴アトリビューション値を返します。これらの値は、特定の特徴がベースライン予測に対して予測にどの程度影響するかを示します。
- グローバルの説明可能性は、モデルに対する特徴の全体的な影響を返し、多くの場合、データセット全体にわたる特徴アトリビューションを集計することで得られます。絶対値が大きいほど、特徴がモデルの予測により大きな影響を与えたことを示します。
BigQuery ML の Explainable AI サービス
BigQuery ML の Explainable AI は、時系列モデルと非時系列モデルの両方を含む、さまざまな ML モデルをサポートしています。各モデルは、異なる説明可能性のメソッドを利用しています。
Model Registry に登録した 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 |
||
ブーストされたツリー ランダム フォレスト |
Tree SHAP | Tree SHAP は、ディシジョン ツリーベースのモデルで正確な SHAP 値を計算するアルゴリズムです。 | ML.EXPLAIN_PREDICT 1 |
ML.GLOBAL_EXPLAIN 2 |
|
近似特徴量の寄与 | 特徴量の寄与の値を近似する。Tree SHAP に比べ、高速かつシンプルです。 | ML.EXPLAIN_PREDICT 1 |
ML.GLOBAL_EXPLAIN 2 |
||
ジニ係数ベースの特徴量の重要度 | トレーニング中にブーストされたツリーまたはランダム フォレスト モデルを構築する際の各特徴の有効性や重要度を示すグローバル特徴量の重要度スコア。 | なし | 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 と同様)。
各外部リグレッサーのアトリビューションは、Shapley 値(model weight * feature value に等しい)に基づいて計算されます。 |
ML.EXPLAIN_FORECAST 3 |
なし |
1ML_EXPLAIN_PREDICT
は ML.PREDICT
の拡張バージョンです。
2ML.GLOBAL_EXPLAIN
は、評価データセット内のすべての行に対して各特徴が受け取る平均絶対アトリビューションに基づいて、グローバルな説明可能性を返します。
3ML.EXPLAIN_FORECAST
は ML.FORECAST
の拡張バージョンです。
4ML.ADVANCED_WEIGHTS
は ML.WEIGHTS
の拡張バージョンです。