公平性指標:公平性評価について考える

公平性インジケーターは、バイナリおよびマルチクラス分類器の公平性を評価するのに便利なツールです。最終的には、皆さんと協力してこのツールを拡張し、さらに多くの考慮事項を評価できるようにしたいと考えています。

定量的な評価は、より広範なユーザー エクスペリエンスを評価する一部分にすぎないことに留意してください。まず、ユーザーが製品を体験するさまざまなコンテキストについて考えることから始めます。あなたの製品がサービスを提供すると予想されるさまざまなタイプのユーザーは誰ですか?他に誰がこの経験の影響を受けるでしょうか?

AI が人間に与える影響を考えるとき、人間社会は非常に複雑であることを常に覚えておくことが重要です。人々とその社会的アイデンティティ、社会構造、文化システムを理解することは、それ自体がオープンな研究の巨大な分野です。世界中で異文化の違いが複雑に絡み合っており、社会への影響を理解する足がかりを得るのも困難な場合があります。可能な限り、社会科学者、社会言語学者、文化人類学者などの適切な分野の専門家や、テクノロジーを導入する集団のメンバーに相談することをお勧めします。

単一のモデル、たとえばcolab の例で利用する毒性モデルは、さまざまなコンテキストで使用できます。たとえば、不快なコメントをフィルタリングするために Web サイトにデプロイされた有害性モデルは、ユーザーが文を入力してモデルが与えるスコアを確認できるサンプル Web UI にデプロイされたモデルとは非常に異なるユースケースです。ユースケースと、ユーザーがモデル予測をどのように体験するかに応じて、製品にはさまざまなリスク、影響、機会があり、さまざまな公平性の懸念について評価する必要がある場合があります。

上記の質問は、ML ベースの製品を設計および開発する際に、公平性を含むどのような倫理的考慮事項を考慮する必要があるかの基礎となります。これらの質問は、どの指標とどのユーザー グループを評価するためにツールを使用する必要があるかという動機付けにもなります。

さらに詳しく説明する前に、始めるために推奨される 3 つのリソースを以下に示します。

  • 人間中心の AI 設計のためのPeople + AI ガイドブック:このガイドブックは、機械学習ベースの製品を設計する際に留意すべき質問や側面について説明する優れたリソースです。このガイドブックはデザイナーを念頭に置いて作成しましたが、原則の多くは上記のような質問に答えるのに役立ちます。
  • 私たちの公平性の教訓: Google I/O でのこの講演では、包括的な製品を構築および設計するという目標において私たちが学んだ教訓について説明します。
  • ML クラッシュ コース: 公平性: ML クラッシュ コースには、公平性に関する懸念の特定と評価に特化した 70 分のセクションがあります。

では、なぜ個々のスライスに注目するのでしょうか?全体的なメトリクスが強力であると、特定のグループのパフォーマンスの低下が見えにくくなる可能性があるため、個々のスライスに対する評価が重要です。同様に、特定の指標 (精度、AUC) で良好なパフォーマンスが得られたとしても、ユーザーにとっての機会と損害を評価する上で同様に重要な他の指標 (偽陽性率、偽陰性率) で許容可能なパフォーマンスが常に得られるとは限りません。

以下のセクションでは、考慮すべきいくつかの側面について説明します。

どのグループでスライスすればよいでしょうか?

一般に、いつ他方のパフォーマンスに差が生じるかわからないため、製品の影響を受ける可能性があるできるだけ多くのグループごとにスライスすることをお勧めします。ただし、確信が持てない場合は、製品に関与している可能性のあるさまざまなユーザーと、彼らがどのような影響を受ける可能性があるかを考えてください。特に、人種、民族、性別、国籍、収入、性的指向、障害の有無などのデリケートな特性に関連するスライスを考慮してください。

調査したいスライスのラベルが付けられたデータがない場合はどうすればよいですか?

良い質問。多くのデータセットには、個々の ID 属性に対するグラウンド トゥルース ラベルが存在しないことがわかっています。

このような状況に陥った場合は、いくつかのアプローチをお勧めします。

  1. グループ全体のパフォーマンスについての洞察を得ることができる属性があるかどうかを特定します。たとえば、地理は民族や人種と同等ではありませんが、パフォーマンスの異なるパターンを明らかにするのに役立つ可能性があります。
  2. 問題によく対応する代表的な公開データセットがあるかどうかを特定します。 Google AI サイトでは、 Project RespectInclusive ImagesOpen Images Extendedなどの多様で包括的なデータセットを見つけることができます。
  3. 関連する場合はルールまたは分類子を活用して、客観的な表面レベルの属性でデータにラベルを付けます。たとえば、文中恒等項が存在するかどうかについてテキストにラベルを付けることができます。分類子には独自の課題があり、注意しないと別のバイアス層が導入される可能性があることに留意してください。分類器が実際に何を分類しているのかを明確にしてください。たとえば、画像上の年齢分類子は、実際には知覚された年齢を分類しています。さらに、可能であれば、データ内で客観的に識別できる表面レベルの属性を活用します。たとえば、人種や民族性の画像分類器を構築することは賢明ではありません。これらは画像内で定義できる視覚的特徴ではないからです。分類子はプロキシまたはステレオタイプを検出する可能性があります。代わりに、肌の色合いの分類器を構築する方が、画像にラベルを付けて評価するためのより適切な方法である可能性があります。最後に、そのような属性にラベルを付ける分類子の高精度を確保します。
  4. ラベルが付けられたより代表的なデータを検索する

常に複数の多様なデータセットで評価するようにしてください。

評価データがユーザー ベース、または遭遇する可能性のあるデータの種類を適切に表していない場合、公平性の指標が一見優れたものになる可能性があります。同様に、あるデータセットでモデルのパフォーマンスが高いからといって、他のデータセットでも高いパフォーマンスが保証されるわけではありません。

サブグループは個人を分類する最良の方法であるとは限らないことに注意してください。

人々は多次元的であり、単一の次元内であっても複数のグループに属しています。多人種であるか、複数の人種グループに属している人を考えてみましょう。また、特定の人種グループの全体的な指標は公平に見えるかもしれませんが、人種と性別などの特定の相互作用は、意図しない偏りを示す可能性があります。さらに、多くのサブグループには曖昧な境界があり、常に再描画されます。

いつ十分なスライスをテストしましたか?また、どのスライスをテストするかをどのように判断すればよいですか?

私たちは、テストに関連する可能性のあるグループやスライスが膨大な数にあることを認識しており、可能であれば、多様で幅広いスライスをスライスして評価し、改善の機会を特定する箇所を深く掘り下げることをお勧めします。また、テストしたスライスに懸念が見られなかったとしても、それは製品がすべてのユーザーに対して機能することを意味するわけではないことを認識することも重要です。新しい製品を継続的に特定するには、多様なユーザーのフィードバックとテストを取得することが重要です。チャンス。

まず、特定のユースケースと、ユーザーが製品に関与する可能性のあるさまざまな方法について検討することをお勧めします。ユーザーが異なれば、どのように異なるエクスペリエンスが得られるのでしょうか?評価すべきスライスにとって、それは何を意味するのでしょうか?多様なユーザーからフィードバックを収集すると、優先すべき潜在的な部分が浮き彫りになる場合もあります。

どの指標を選択すればよいでしょうか?

システムを評価するメトリクスを選択するときは、モデルを誰が体験するのか、どのように体験するのか、その体験の効果を考慮してください。

たとえば、あなたのモデルは人々にどのように尊厳や自主性を与え、感情的、身体的、経済的な幸福にプラスの影響を与えますか?対照的に、あなたのモデルの予測は人々の尊厳や自律性を低下させたり、感情的、身体的、経済的な幸福に悪影響を及ぼしたりする可能性がありますか?

一般に、既存のパフォーマンス指標をすべてスライスすることを推奨します。また、しきい値がさまざまなグループのパフォーマンスにどのような影響を与えるかを理解するために、複数のしきい値にわたってメトリクスを評価することをお勧めします

さらに、一様に「良好」または「不良」である予測ラベルがある場合は、そのラベルが予測される割合を (サブグループごとに) 報告することを検討してください。たとえば、「良い」ラベルは、その予測によって人に何らかのリソースへのアクセスが許可される、または人が何らかのアクションを実行できるようにするラベルです。

分類のための重要な公平性指標

分類モデルについて考えるときは、エラーの影響 (実際の「グラウンド トゥルース」ラベルとモデルからのラベルの違い) について考えてください。一部のエラーがユーザーにさらなる機会や損害をもたらす可能性がある場合は、ユーザーのグループ全体でこれらのエラーの割合を必ず評価してください。これらのエラー率は、Fairness Indicators ベータ版で現在サポートされているメトリクスで以下に定義されています。

来年にかけて、さまざまなユースケースのケーススタディとそれに関連する指標をリリースして、さまざまな指標が最適である時期をより適切に強調できるようにしたいと考えています。

公平性インジケーターで現在利用可能なメトリクス

ポジティブ率 / ネガティブ率

  • 定義:グランド トゥルースとは無関係に、正または負として分類されるデータ ポイントの割合
  • 関連項目:サブグループ全体で等しい場合の人口統計的平等と結果の平等
  • このメトリクスを使用する場合:グループの最終パーセンテージが等しいことが重要である公平性のユースケース

真陽性率 / 偽陰性率

  • 定義:正しく陽性として分類された陽性データ ポイント (グランド トゥルースでラベル付けさた) の割合、または誤って陰性として分類された陽性データ ポイントの割合
  • 関連項目:サブグループ全体で平等な場合の機会の平等 (肯定的なクラスの場合)
  • この指標を使用する場合:各グループ内で適格な候補者の同じ割合が肯定的に評価されることが重要である公平性のユースケース。これは、ローンの申請、学校への入学、コンテンツが子供向けかどうかなど、肯定的な結果を分類する場合に最も一般的に推奨されます。

真陰性率 / 偽陽性率

  • 定義:正しく負として分類された負のデータ ポイント (グラウンド トゥルースでラベル付けされた) の割合、または誤って正として分類された負のデータ ポイントの割合
  • 関連項目:サブグループ全体で平等な場合の機会の平等 (ネガティブ クラスの場合)
  • このメトリクスを使用する場合:正の分類よりもエラー率 (または何かを正として誤分類すること) が懸念される公平性のユースケース。これは虐待の場合に最も一般的で、ポジティブな行動がネガティブな行動につながることがよくあります。これらは、顔検出や顔属性などの顔分析テクノロジーにとっても重要です。

精度とAUC

  • 関連項目:サブグループ間で等しい場合の予測パリティ
  • これらのメトリクスを使用する場合:顔の識別や顔のクラスタリングなど、タスクの精度が最も重要な場合 (特定の方向である必要はありません)

誤検出率

  • 定義:正として分類されたすべてのデータ ポイントのうち、誤って正として分類された負のデータ ポイント (グラウンド トゥルースでラベル付けされている) の割合。これもPPVの逆です
  • 関連項目:サブグループ全体で等しい場合の予測パリティ (キャリブレーションとも呼ばれます)
  • このメトリクスを使用する場合:正しい陽性予測の割合がサブグループ間で等しい必要がある場合

誤脱落率

  • 定義:陰性として分類されたすべてのデータ ポイントのうち、誤って陰性として分類された陽性データ ポイント (グラウンド トゥルースでラベル付けされている) の割合。これも NPV の逆です
  • 関連項目:サブグループ全体で等しい場合の予測パリティ (キャリブレーションとも呼ばれます)
  • この指標を使用する場合:正しい陰性予測の割合がサブグループ間で等しい必要がある場合

全体的なフリップ レート / ポジティブからネガティブへの予測フリップ レート / ネガティブからポジティブへの予測フリップ レート

  • 定義:特定の特徴の ID 属性が変更された場合に、分類子が異なる予測を与える確率。
  • 関連項目:反事実的公平性
  • このメトリクスを使用する場合:例で参照されている機密属性が削除または置換されたときにモデルの予測が変化するかどうかを判断するとき。該当する場合は、Tensorflow モデル修復ライブラリ内で Counterfactual ロジット ペアリング手法を使用することを検討してください。

フリップ カウント / 正から負への予測 フリップ カウント / 負から正への予測 フリップ カウント*

  • 定義:特定の例の恒等項が変更された場合に、分類器が異なる予測を与える回数。
  • 関連項目:反事実的公平性
  • このメトリクスを使用する場合:例で参照されている機密属性が削除または置換されたときにモデルの予測が変化するかどうかを判断するとき。該当する場合は、Tensorflow モデル修復ライブラリ内で Counterfactual ロジット ペアリング手法を使用することを検討してください。

選択するメトリクスの例

  • カメラ アプリで顔の検出が体系的に失敗すると、特定のユーザー グループにとってマイナスなユーザー エクスペリエンスが生じる可能性があります。この場合、顔検出システムの偽陰性は製品の故障につながる可能性があり、一方、偽陽性(顔が存在しないのに顔を検出する)はユーザーに若干の煩わしさをもたらす可能性があります。したがって、この使用例では、偽陰性率を評価して最小限に抑えることが重要です。
  • モデレーションシステムで特定の人々からのテキストコメントを不当に「スパム」または「有害性が高い」としてマークすると、特定の声が沈黙されることにつながります。一方で、高い誤検知率は不当な検閲につながります。一方、高い偽陰性率は、特定のグループからの有害なコンテンツの拡散につながる可能性があり、ユーザーに損害を与えるだけでなく、それらのグループに対する表象的な損害を構成する可能性があります。したがって、精度や AUC などのあらゆる種類のエラーを考慮するメトリクスに加えて、両方のメトリクスを考慮することが重要です。

探している指標が見つかりませんか?

ここのドキュメントに従って、独自のカスタム メトリックを追加します。

最終メモ

2 つのグループ間のメトリックのギャップは、モデルに不当な歪みがある可能性があることを示している可能性があります。結果はユースケースに応じて解釈する必要があります。ただし、あるユーザー セットを不公平に扱っている可能性がある最初の兆候は、そのユーザー セットと全体のメトリクスが大きく異なる場合です。これらの違いを確認するときは、必ず信頼区間を考慮してください。特定のスライスのサンプルが少なすぎる場合、メトリクス間の差異が正確ではない可能性があります。

公平性指標に関してグループ間の平等を達成しても、モデルが公平であることを意味するわけではありません。システムは非常に複雑であり、提供された指標の 1 つ (またはすべて) で平等を達成しても、公平性は保証できません。

公平性評価は、開発プロセス全体および発売後 (発売前日ではなく) 実行する必要があります。製品の改善が継続的なプロセスであり、ユーザーや市場からのフィードバックに基づいて調整されるのと同じように、製品を公平かつ公平なものにするためには、継続的な注意が必要です。トレーニング データ、他のモデルからの入力、設計自体など、モデルのさまざまな側面が変化すると、公平性の指標も変化する可能性があります。一度「バーをクリアする」だけでは、相互作用するすべてのコンポーネントが長期間にわたって完全なままであることを保証するのに十分ではありません。

まれな悪意のある例に対しては、敵対的テストを実行する必要があります。公平性評価は、敵対的テストに代わるものではありません。これらの例はトレーニング データや評価データには現れない可能性が高いため、まれな対象を絞った例に対する追加の防御が重要です。