モデルが偏った結果を生み出すかどうかを判断するために、公平性評価を設定することができます。 公平性評価を使用して、モデルがあるグループに対して他のグループよりも有利な結果をより頻繁に提供する傾向を示す場合を特定する。
機械学習モデルの公平性評価の設定
モデル評価の準備を行う際に、ペイロードデータを記録する場合、公平性評価を設定できます。
公平性評価を手動で構成することも、 カスタム・ノートブック を実行して構成ファイルを生成することもできます。 構成ファイルをアップロードして、評価の設定を指定できます。
公平性評価を手動で構成する場合、好ましい結果を表すと予想される参照グループ (値) を指定できます。 参照グループに対して比較されるバイアス (年齢や性別など) をモニターするために、対応するモデル属性 (特徴量) を選択することもできます。 トレーニングデータに応じて、評価用の最小サンプルサイズと最大サンプルサイズを指定することもできます。
好ましい結果と好ましくない結果を選択する
公正な評価を設定する際には、有利な結果と不利な結果を指定しなければならない。 好ましい結果を表す値は、 トレーニング・データの label
列から導き出されます。 デフォルトでは、 predictedLabel
列は prediction
列として設定されます。 prediction
列の値をストリング・データ・タイプとして使用して、好ましい値と好ましくない値を指定する必要があります。例えば、トレーニング・データをアップロードする場合の 0
または 1
です。
フィーチャーの選択
バイアスを検出するために評価したいモデルの属性であるフィーチャーを選択する必要があります。 たとえば、Sex
やAge
のように、偏りを評価することができます。 公平性のデータ・タイプが、カテゴリカル、数値 (整数)、浮動小数点、または倍精度の特徴量だけがサポートされます。
特徴量の値は、参照グループまたはモニター・グループのいずれかとして指定されます。 モニター・グループは、偏りのある結果のリスクが最も高い値を表します。 例えば、 Sex
機能の場合、 Female
とNon-binary
をモニター・グループとして設定できます。 Age
などの数値変数の場合、 [18-25]
をモニター・グループとして設定できます。 これにより、フィーチャーの他のすべての値が参照グループ ( Sex=Male
または Age=[26,100]
など) と見なされます。
公平性のしきい値を設定する
公平性のしきい値を設定することで、監視対象グループの好結果のパーセンテージと参照グループの好結果のパーセンテージの許容できる差を指定することができます。 例えば、モデル内のグループの好ましい結果の割合が 70% で、公平性しきい値が 80% に設定されている場合、公平性モニターはモデル内のバイアスを検出します。
サンプル・サイズの設定
サンプルサイズは、評価されるトランザクションの数をどのように処理するかをスピードアップするために使用される。 評価したいトランザクションの最低数を示す最小サンプル・サイズを設定する必要があります。 また、評価したいトランザクションの最大数を示す最大サンプルサイズを設定することもできます。
間接バイアスのテスト
追加フィールドと呼ばれるトレーニングフィーチャではないフィールドを選択した場合、トレーニングフィーチャから関連する値を見つけることで間接的なバイアスが特定されます。 例えば、「学生」という職業は、「年齢」フィールドがモデル・トレーニングから除外されていても、若い個人を意味する場合があります。 間接的なバイアスを考慮した公平性評価の設定についての詳細は、間接的なバイアスを考慮した公平性モニターの設定を参照してください。
バイアスの緩和
機械学習モデルの評価には、パッシブデビアスとアクティブデビアスが使用される。 受動的なバイアス緩和では、バイアスが明らかになりますが、アクティブなバイアス緩和では、現行のアプリケーションに対してリアルタイムでモデルを変更してそのバイアスが渡らないようにします。 モデルにおける結果の解釈とバイアスの緩和について詳しくは、 公平性評価からの結果の確認を参照してください。
watsonx.governance での公正評価の設定
プロンプト テンプレートを評価すると、テキスト分類タスクの公正評価結果のサマリーを確認できます。
好ましい結果と好ましくない結果を選択する
公正な評価を設定する際には、有利な結果と不利な結果を指定しなければならない。 有利な結果を示す値は、提供されたテストデータのlabel
列から導き出されます。 デフォルトでは、predictedLabel
カラムがprediction
カラムとして設定されています。 有利な値、不利な値は、prediction
列の値を0
や1
のように文字列データ型で指定する必要があります(トレーニングデータをアップロードする場合)。
メタフィールドの選択
watsonx.governanceが、提供されたテスト データで機能として指定されていないフィールドを識別できるようにするには、メタ フィールドを選択する必要があります。
公平性のしきい値を設定する
公正性評価を独自の設定で構成するには、各指標の最小サンプルサイズと最大サンプルサイズを設定します。 最小サンプル数または最大サンプル数は、評価したいモデル・トランザクションの最小数または最大数を示す。
また、ベースラインデータを設定し、各メトリクスのしきい値を設定することもできます。 しきい値は、評価スコアがしきい値に違反したときに表示されるアラートを評価サマリーページに作成します。 値は0から1の範囲で設定しなければならない。 違反を避けるためには、メトリックスコアがしきい値より低くなければならない。
サンプル・サイズの設定
Watsonx.governanceは、評価中に評価されるトランザクション数の処理方法を理解するためにサンプルサイズを使用します。 watsonx.governanceに評価させたいトランザクションの最小数を示す最小サンプル・サイズを設定する必要があります。 また、watsonx.governanceに評価させたいトランザクションの最大数を示す最大サンプル・サイズを設定することもできます。
サポートされている公平性指標
機械学習モデルやジェネレーティブAI資産の公平性評価を有効にすると、評価対象のモデルの種類に応じた評価指標で評価結果のサマリーを表示できます。
機械学習モデルの公正評価の結果は、インサイトダッシュボードで確認できます。 詳しくは、公正結果を見直すをご覧ください。
以下の指標は、公平性の評価によって裏付けられている:
差別的影響
格差影響は、異なるグループの公平性スコアとして規定される。 差別的影響は、モニター対象グループの好ましい結果の割合を、参照グループの好ましい結果の割合と比較します。
How works: モデルのデプロイの詳細を表示すると、表示されるモデルの概要の Fairness セクションでは、メトリクスとして記述されるさまざまなグループの公平性スコアが提供されます。 公平性スコアは、差別的影響式を使用して計算されます。
パフォーマンス測定に混同行列を使用: いいえ
計算してみろ:
(num_positives(privileged=False) / num_instances(privileged=False))
Disparate impact = ______________________________________________________________________
(num_positives(privileged=True) / num_instances(privileged=True))
num_positives
値はグループ内の肯定的な結果を受け取った個人の数を表し、num_instances
値はグループ内の個人の総数を表します。 privileged=False
ラベルは非特権グループを指定し、privileged=True
ラベルは特権グループを指定します。 ポジティブな結果を好ましい結果、ネガティブな結果を好ましくない結果とする。 優遇されるグループを参照グループとして表し、優遇されないグループをモニター対象グループとして表します。
この計算では、非特権グループが肯定的な結果を受け取る頻度が、特権グループが肯定的な結果を受け取る頻度と同じ頻度であることを示すパーセントが生成されます。 例えば、信用リスク・モデルで、非特権申請者の 80% と特権申請者の 100% に「リスクなし」の予測を割り当てた場合、そのモデルの差別的影響は 80% になります。
サポートされている公平性の詳細
- 以下のフェアネス・メトリクスの詳細がサポートされています:
- 各グループの好感度
- すべての公平性グループに関する公平性の平均
- モニター対象グループごとのデータの分布
- ペイロード・データの分布
- 以下のフェアネス・メトリクスの詳細がサポートされています:
統計パリティーの差
統計的同等性の差は、監視対象群と参照群の良好な転帰の割合を比較したものである。
説明:モデル予測の公平性を表す公平性メトリック。 モニター群と基準群における良好な転帰の比率の差である
- 0歳以下:監視対象グループの給付額が高い。
- 0点時:両グループとも利益は等しい。
- 0以上 参照グループの利益が高いことを意味する。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
num_positives(privileged=False) num_positives(privileged=True)
Statistical parity difference = ________________________________ - ________________________________
num_instances(privileged=False) num_instances(privileged=True)
影響スコア
インパクト・スコアは、監視対象グループが選ばれて好ましい結果を受ける割合と、参照グループが選ばれて好ましい結果を受ける割合を比較したものである。
- 計算してみよう:
以下の計算式は、各グループの選考率を算出するものである:
number of individuals receiving favorable outcomes
Selection rate = ________________________________________________________
total number of individuals
以下の計算式でインパクトスコアを算出する:
selection rate for monitored groups
Impact score = ________________________________________________________
selection rate for reference groups
しきい値:
- 下限:0.8
- 上限:1.0
どのように機能するか:スコアが高いほど、監視対象グループの選考率が高いことを示す
偽陰性率の差
偽陰性率の差は、モデルによって陰性と誤って採点された陽性取引の割合を示す。
説明:監視グループと参照グループの偽陰性率の差を返す
- 0点時:両グループとも利益は等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
偽陰性率(FNR)の計算には以下の式を用いる:
false negatives
False negative rate = __________________________
all positives
偽陰性率差の計算には以下の式を用いる:
False negative rate difference = FNR of monitored group - FNR of reference group
偽陽性率の差
偽陽性率の差は、モデルによって陽性と誤って採点された陰性トランザクションの割合を示す。
説明:監視グループと参照グループの偽陽性率の比率を返す。
- 0時点:両グループのオッズは等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
偽陽性率(FPR)の計算には以下の式を使用する:
false positives
False positive rate = ________________________
total negatives
偽陽性率差の計算には以下の式を使用する:
False positive rate difference = FPR of monitored group - FPR of reference group
偽のディスカバリー率の差
偽発見率の差は、偽陽性のトランザクションの量を、陽性の結果を持つ全トランザクションに対するパーセンテージで示す。 これは、すべての肯定的なトランザクションの間での誤検出の普及を記述します。
説明:監視群と参照群の偽発見率の差を返す。
- 0時点:両グループのオッズは等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
偽発見率(FDR)の計算には以下の式が使われる:
false positives
False discovery rate = _________________________________________
true positives + false positives
偽発見率の差の計算には以下の式が使われる:
False discovery rate difference = FDR of monitored group - FDR of reference group
偽の除外率の差
偽の省略率の差は、否定的な結果を持つ全取引に占める偽の否定的取引の数の割合を示す。 これは、すべての負のトランザクションの間で偽陰性の普及を記述します。
説明:被監視グループと参照グループの誤省略率の差を返す
- 0時点:両グループのオッズは等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
誤脱落率(FOR)の算出には、以下の式が使用される:
false negatives
False omission rate = ________________________________________
true negatives + false negatives
誤脱落率の差は以下の式で求められる:
False omission rate difference = FOR of monitored group - FOR of reference group
エラー率の差
エラー率差は、モデルによって誤って採点されたトランザクションの割合を計算する。
説明:監視グループと参照グループのエラー率の差を返す。
- 0時点:両グループのオッズは等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
エラー率(ER)の計算には、以下の式が使用される:
false positives + false negatives
Error rate = ___________________________________________
all positives + all negatives
エラー率差の計算には以下の式を使用する:
Error rate difference = ER of monitored group - ER of reference group
平均オッズ差
平均オッズ差は、モデルによって不正確に採点された取引の割合を示す。
説明:監視グループと参照グループのエラー率の差を返す。
- 0時点:両グループのオッズは等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
偽陽性率(FPR)の計算には以下の式を使用する:
false positives
False positive rate = _________________________
total negatives
真陽性率(TPR)の計算には以下の式を用いる:
True positives
True positive rate = ______________________
All positives
平均オッズ差の算出には、以下の式が用いられる:
(FPR monitored group - FPR reference group) + (TPR monitored group - TPR reference group)
Average odds difference = ___________________________________________________________________________________________
2
平均絶対オッズ差
平均絶対オッズ差は、監視群と参照群の偽陽性率と真陽性率の差の絶対値の平均を比較したものである。
説明:監視グループと参照グループの偽陽性率と真陽性率の差の絶対値の平均を返す。
- 0時点:両グループのオッズは等しい。
パフォーマンス測定に混同行列を使用: はい
計算してみよう:
偽陽性率(FPR)の計算には以下の式を使用する:
false positives
False positive rate = ____________________________
all negatives
真陽性率(TPR)の計算には以下の式を用いる:
True positives
True positive rate = ________________________
All positives
平均絶対オッズ差の算出には以下の式を用いる:
|FPR monitored group - FPR reference group| + |TPR monitored group - TPR reference group|
Average absolute odds difference = ______________________________________________________________________________________________
2
コンフュージョンマトリックスでパフォーマンスを測定
混同行列は、次の例に示すように、正と負の予測値を、実際の値と予測値の測定値を表す4つの象限に分類し、パフォーマンスを測定します:
実績/予想 | 負 | 正の値 |
---|---|---|
負 | TN | FP |
正の値 | FN | TP |
トゥルーネガティブ(TN)の象限は、実際にネガティブでネガティブと予測された値を表し、トゥルーポジティブ(TP)の象限は、実際にポジティブでポジティブと予測された値を表す。 偽陽性(FP)象限は、実際には陰性であるが陽性と予測された値を表し、偽陰性(FN)象限は、実際には陽性であるが陰性と予測された値を表す。
親トピック: 公平性評価の設定