分類モデルの公平性とバイアスを監視する
Databricks レイクハウス モニタリングを使用すると、分類モデルの予測を監視して、異なるグループに関連付けられているデータに対してモデルが同様に実行されるかどうかを確認できます。 たとえば、ローンのデフォルトの分類器が、異なる人口統計の申請者に対して同じ偽陽性率を生成するかどうかを調査できます。
公平性と偏見のメトリクスを扱う
公平性とバイアスを監視するには、 Boolean スライス式を作成します。 True
を評価するスライス式によって定義されたグループは、保護されたグループ (つまり、バイアスをチェックするグループ) と見なされます。たとえば、 slicing_exprs=["age < 25"]
を作成した場合、 slice_key
= "年齢 < 25" および slice_value
= True
で識別されるスライスは保護グループと見なされ、 slice_key
= "年齢 < 25" および slice_value
= False
で識別されるスライスは保護されていないグループと見なされます。
グループ間で分類モデルの性能を比較する自動的にコンピュートメトリクスをモニタする。 次のメトリックがプロファイルメトリクステーブルに報告されます。
predictive_parity
グループ間でモデルの精度を比較します。predictive_equality
これは、グループ間の偽陽性率を比較します。equal_opportunity
これは、ラベルが両方のグループで等しくよく予測されているかどうかを測定します。statistical_parity
これは、グループ間の予測結果の差を測定します。
これらのメトリクスは、解析タイプが InferenceLog
で、 problem_type
が classification
の場合にのみ計算されます。
これらのメトリクスの定義については、次のリファレンスを参照してください。
機械学習の公平性に関するウィキペディアの記事:
https://en.wikipedia.org/wiki/Fairness_(machine_learning)
公平性とバイアスメトリクスの出力
これらのメトリクスの詳細と、メトリクステーブルでの表示方法については、 API リファレンス を参照してください。 すべての公平性とバイアスメトリクスは、以下に示すように同じデータ型を共有し、すべての予測クラスにわたる公平性スコアをキーと値のペアとして「1対すべて」の方法で示します。
これらのメトリクスでアラートを作成できます。 たとえば、モデルの所有者は、公平性メトリクスがしきい値を超えたときにアラートを設定し、そのアラートをオンコールの担当者またはチームにルーティングして調査することができます。