メインコンテンツまでスキップ

Responsible AI Toolbox

本ページでは、Microsoft がオープンソースで提供している Responsible AI を実装するツールである Responsible AI Toolbox を紹介します。


Responsible AI Toolbox とは?

Responsible AI Toolbox は Responsible AI の実装をサポートするツール群です。

Responsible AI dashboard

Resposible AI dashboard は Responsible AI Toolbox の UI 機能を提供しています。特に緑色にハイライトされた Identify (特定)Diagnose (診断)Inform Action (アクションの通知) のプロセスをサポートしています。

caution

Mitigate は Responsible AI dashboard の機能では提供されていませんが、Responsible AI Toolbox Mitigate や Fairlearn ライブラリを用いることが実行できます。


ツール

Responsible AI Toolbox は複数のツールで構成されています。それぞれについて紹介します。

機能ベース技術概要
Error AnalysisError Analysisモデルの誤差の大きいコホートを特定します。
Fairness AssessmentFairlearnモデルの公平性を評価します。
Model InterpretabilityInterpretMLブラックボックスなモデルに説明性を付与します。
Counterfactual AnalysisDiCE予測値を変化させる反実仮想のデータを生成します。

Error Analysis

Error Analysis では学習済みの機械学習モデルの誤差の大きいコホート (データのサブセット) を特定します。機械学習モデルを評価する際、精度 73.8 % などと集計された数値で見ることが多いと思います (下図) が、ユースケース次第ではそれでは不十分な場合があります。

集計された数値指標では、誤差がデータのどこに潜んでいるのかはこれでは分かりません。次のようなケースでは特に問題になりやすいです。

  • 病理診断モデルにおいて子供や高齢者の誤差が他と比べて大きい
  • 与信モデルや異常検知モデルなどで特定の性別・人種だけ誤差大きい

誤差が大きくなる・小さくなるコホートを特定することで、ステークホルダーに対してモデルの潜在的なリスクを伝えることができたり、誤差が大きいコホートのデータの品質を改善することで精度が向上することが期待できます。

なお、Error Analysis は Responsible AI Toolbox に直接組み込まれています。


参考情報


Fairness Assessment

Fairness Assessment では学習済み機械学習モデルの公平性の評価を行います。Python ライブラリの Fairlearn をベースにしています。

人種、ジェンダー、年齢などによってマイナスの影響がでるような機械学習モデルは許容されない場合があるため注意が必要です。

note

モデルから不公平性を軽減する機能は Responsible AI Toolbox に含まれていませんが、Fairlearn には含まれています。

ライブラリ : Fairlearn

Fairlearn は機械学習モデルの公平性を評価し、必要に応じて不公平性を軽減することができる Python ライブラリです。



Fairlearn が想定している不公平性による損害 (Harm) のパターンは Quality-of-service harmsAllocation harms の 2 通りです。


参考情報


Model Interpretability

学習モデルに説明性を付与する機能を提供します。Python ライブラリの InterpretML をベースにしています。

ライブラリ : InterpretML


InterpretML は、主要な「解釈可能性が高い Glass-box なモデル」 と 「任意の学習済みモデル (Black-box) に対する説明性付与手法」が実装されているライブラリ群です。それぞれに共通してモデル全体の傾向を見る大域的な説明とテストデータ個々の予測値に対する局所的な説明があります。


GAM Changer

インタラクティブな UI で GAM のモデルを編集できるツールが公開されています。Interpret で公開しているツールです。


参考情報


Counterfactual Analysis and What If

DiCE をベースにした反実仮想サンプルの生成と What if 分析の機能を提供しています。

ライブラリ : DiCE


DiCE (Diverse Counterfactual Explanations) は Microsoft が主導で開発している反実仮想説明 (Counterfactual Explanation, CE) の Python ライブラリです。

参考情報


Azure での実装

Responsible AI dashboard は Azure Machine Learning と連携しており、登録されているモデルに紐づけてクラウド上で構築・管理することができるようになっています。

補足

2023年3月現在、Azure Machine Learning と Responsible AI dashboard の連携機能には制限があります。

  • mlflow の scikit learn flavor モデルのみサポート
  • AutoML モデルで利用される dashboard は古いバージョンのもの (Error Analysis や Counterfactual などの機能なし)

参考情報