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

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

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

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

単一のモデル、たとえば、コラボの例で活用している毒性モデルは、さまざまな状況で使用できます。たとえば、不快なコメントをフィルタリングするためにWebサイトにデプロイされた毒性モデルは、ユーザーが文を入力してモデルのスコアを確認できるサンプルWebUIにデプロイされたモデルとは非常に異なるユースケースです。ユースケース、およびユーザーがモデル予測をどのように体験するかに応じて、製品にはさまざまなリスク、効果、および機会があり、さまざまな公平性の懸念について評価することができます。

上記の質問は、MLベースの製品を設計および開発する際に、公平性を含む倫理的な考慮事項を考慮に入れる必要がある場合の基礎となります。これらの質問は、ツールを使用して評価する必要があるメトリックとユーザーのグループの動機にもなります。

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

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

では、なぜ個々のスライスを見るのですか?個々のスライスを評価することは重要です。強力な全体的なメトリックにより、特定のグループのパフォーマンスが低下する可能性があるためです。同様に、特定のメトリック(精度、AUC)で良好に機能することが、ユーザーの機会と害を評価する上で等しく重要な他のメトリック(偽陽性率、偽陰性率)の許容可能なパフォーマンスに必ずしも変換されるとは限りません。

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

どのグループでスライスする必要がありますか?

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

調査したいスライスのラベルが付いたデータがない場合はどうなりますか?

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

この立場にいる場合は、いくつかのアプローチをお勧めします。

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

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

評価データがユーザーベースを適切に表していない場合、または遭遇する可能性のあるデータのタイプがない場合は、一見優れた公平性メトリックになってしまう可能性があります。同様に、あるデータセットでの高いモデルパフォーマンスは、他のデータセットでの高いパフォーマンスを保証するものではありません。

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

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

十分な数のスライスをテストしたのはいつですか。また、テストするスライスを確認するにはどうすればよいですか。

テストに関連する可能性のあるグループまたはスライスは非常に多数あることを認識しており、可能であれば、多様で幅広いスライスをスライスして評価し、改善の機会を見つけるためにディープダイビングすることをお勧めします。また、テストしたスライスに懸念がない場合でも、製品がすべてのユーザーに対して機能することを意味するわけではないことを認識することも重要です。また、新しいユーザーを継続的に特定するには、さまざまなユーザーフィードバックとテストを取得することが重要です。機会。

開始するには、特定のユースケースと、ユーザーが製品を使用するさまざまな方法について検討することをお勧めします。異なるユーザーはどのように異なる経験をする可能性がありますか?評価する必要があるスライスにとって、それはどういう意味ですか?多様なユーザーからフィードバックを収集することで、優先順位を付ける可能性のあるスライスを強調することもできます。

どのメトリックを選択する必要がありますか?

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

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

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

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

分類のための重要な公平性メトリック

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

来年中に、さまざまなユースケースとそれに関連する指標のケーススタディをリリースして、さまざまな指標が最も適切な場合をより明確に示すことができるようにしたいと考えています。

公平性指標で今日利用可能な指標

ポジティブレート/ネガティブレート

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

真陽性率/偽陰性率

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

真の陰性率/偽陽性率

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

精度とAUC

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

偽発見率

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

誤省略率

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

全体的なフリップ率/正から負の予測フリップ率/負から正の予測フリップ率

  • 定義:特定の機能のID属性が変更された場合に、分類子が異なる予測を行う確率。
  • 関連:事実に反する公平性
  • このメトリックを使用する場合:例で参照されている機密属性が削除または置換されたときにモデルの予測が変更されるかどうかを判断する場合。その場合は、TensorflowModelRemediationライブラリ内でCounterfactualLogitPairingテクニックを使用することを検討してください。

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

  • 定義:特定の例の同一性用語が変更された場合に、分類器が異なる予測を行う回数。
  • 関連:事実に反する公平性
  • このメトリックを使用する場合:例で参照されている機密属性が削除または置換されたときにモデルの予測が変更されるかどうかを判断する場合。その場合は、TensorflowModelRemediationライブラリ内でCounterfactualLogitPairingテクニックを使用することを検討してください。

選択するメトリックの例

  • カメラアプリで顔を体系的に検出できないと、特定のユーザーグループのユーザーエクスペリエンスが低下する可能性があります。この場合、顔検出システムでの偽陰性は製品の故障につながる可能性があり、偽陽性(顔がないときに顔を検出する)はユーザーにわずかな迷惑をかける可能性があります。したがって、この使用例では、誤検知率を評価して最小化することが重要です。
  • モデレーションシステムで特定の人々からのテキストコメントを「スパム」または「高毒性」として不当にマークすると、特定の声が沈黙することになります。一方では、高い偽陽性率は不当な検閲につながります。一方、高い偽陰性率は、特定のグループからの有毒なコンテンツの拡散につながる可能性があり、ユーザーに害を及ぼす可能性があり、それらのグループの代表的な害を構成する可能性があります。したがって、精度やAUCなどのすべてのタイプのエラーを考慮に入れるメトリックに加えて、両方のメトリックを考慮することが重要です。

探している指標が表示されませんか?

こちらのドキュメントに従って、独自のカスタムメトリックを追加してください。

最終メモ

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

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

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

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