Explorables

公平性を測る

Measuring Fairness

There are multiple ways to measure accuracy. No matter how we build our model, accuracy across these measures will vary when applied to different groups of people.

異なる人々のグループに対して、モデルが同じようにうまく機能しているとどうやって確かめればよいでしょうか? 実は多くの状況では、想像以上に難しい課題です。

というのも、モデルの精度の測り方にはさまざまな指標があり、それらすべてをグループ間で同時に等しくすることは、数学的に不可能な場合が多いからです。

ここでは架空の医療モデルを作り、病気のスクリーニングに使ってみることで、その難しさを見ていきます。

正解ラベル

この人たちの約半分は実際に病気を患っています a。残りの半分は健康です b

モデルの予測

理想的な世界では、病気の人だけが陽性になり、健康な人だけが陰性になるはずです。

モデルのミス

しかし、モデルや検査は完璧ではありません。

病気の人を健康だと誤判定することがあります c

その逆に、健康な人を病気だと判定してしまうこともあります f

病気を決して見逃さないには…

簡単な追検査があるなら、モデルを攻め気味に設定して、病気を見逃すケースをほとんどなくすという方法が考えられます。

これは、病気の人 a のうち陽性と判断される割合 gで定量化できます。

…それとも過剰診断を避ける?

一方で、追加の検査ができない場合や、治療に使う薬に限りがある場合には、陽性と判定された人のうち、実際に病気である割合 gを重視したくなるかもしれません。

こうした指標の選択やトレードオフは目新しい話ではありませんが、病気の診断をどれだけ厳しく行うかを細かく調整できるようになると、改めて重要性が浮かび上がります。

モデルがどれくらい積極的に病気を診断するか、スライダーで試してみてください

サブグループの分析

モデルが異なるグループを公平に扱っているかを確認すると、状況はさらに複雑になります。¹

どの指標を重視するにしても、異なる人々のグループ間でその値が大きく偏らないようにしたいところです。

たとえば資源を均等に配りたい場合、子どものほうが大人より多く見逃されるようなモデルでは困ります! ²

ベースレート

よく見ると、子どものほうが病気にかかっている人が多いことがわかります。つまり、グループごとに病気の「ベースレート」(基礎発生率)が異なっています。

ベースレートが違うと、状況は驚くほど厄介になります。たとえば、検査で病気の大人と子どもを同じ割合でとらえていたとしても、陽性になった大人が病気である確率は、陽性になった子どもより低くなってしまいます。

指標の不均衡

なぜ大人と子どもで診断の偏りが生まれるのでしょうか? 健康な大人の割合が高いため、検査の誤判定によって陽性とされる健康な大人が、健康な子どもより多くなってしまうからです(陰性の誤判定でも同様です)。


これを是正するには、モデルに年齢を考慮させるという方法があります。


スライダーを動かして、子どもより大人の診断を控えめにしてみましょう。

これでひとつの指標は揃えられますが、今度は病気の大人が診断されにくくなってしまいます。


どれだけスライダーを操作しても、両方の指標を同時に公平にすることはできません。ベースレートが異なり、テストが完璧でない限り、これは避けられないのです。

公平性を数学的に定義する方法は複数ありますが、そのすべてを満たすことは通常できません。³

Conclusion

満たすべき公平性の定義はモデルの文脈によって変わります。すべての定義を同時に達成できなくても、自分たちのユースケースで意味のある公平性に集中できます。

あらゆる側面で完全な公平性が実現できないとしても、バイアスの点検をやめてはいけません。Hidden Bias のエクスプローラブルでは、人間のバイアスがどのように ML モデルへ入り込むかを解説しています。

More Reading

文脈によっては、集団ごとに異なる閾値を設定することが認められない場合もあります。Can you make AI fairer than a judge? は、人を刑務所に送る可能性のあるアルゴリズムを取り上げています。

アルゴリズムの公平さを判断する指標は多数存在します。Attacking discrimination with smarter machine learning では、そのうちいくつかの指標がどのように機能するかを紹介しています。Fairness IndicatorsWhat-If Tool、その他の fairness tools を組み合わせれば、一般的に使われている fairness metrics に照らして自分のモデルを検証できます。

機械学習の実務者は、「再現率(recall)」のような言葉で、病気の人のうち何割が陽性になるかを表します。モデルを作る人たちと会話するための用語は PAIR Guidebook Glossary で学べます。

Appendix

¹ ここで扱っている公平性は、非常にアカデミックで数学的な定義に基づいており、日常的な意味での公平さに含めたい要素がすべて 網羅されているわけではありません。ここでのアルゴリズムの技術的な説明と、それが導入される社会的な状況とのあいだには 隔たり が存在します。

² グループによって重視したい誤りのタイプが異なることもあります。たとえば子どもの治療リスクが高いなら、子どもに対する診断は控えめにしたいと考えるかもしれません。

³ 上の例では、モデルが「病気である確率」に基づいて人々をソートしスコアを付けていると仮定しています。両方のグループで、過小診断と過剰診断の割合を完全に制御できるなら、ここまでに議論した 2 つの指標は揃えることも可能です。下のモデルで両方を揃えられるか試してみてください。

ここにもうひとつ指標を追加して、健康な人 a のうち陰性と判定される割合 e を揃えようとすると、完全な公平性は不可能になります。両方のグループで病気のベースレートが同じでない限り、3 つの指標が同時に整わない理由がわかるでしょうか?

⁠— を動かしてモデルの精度を調整し、⁠| を動かして病気の発生率を調整してください

Credits

Adam Pearce // 2020 年 5 月

Carey Radebaugh、Dan Nanas、David Weinberger、Emily Denton、Emily Reif、Fernanda Viégas、Hal Abelson、James Wexler、Kristen Olson、Lucas Dixon、Mahima Pushkarna、Martin Wattenberg、Michael Terry、Rebecca Salois、Timnit Gebru、Tulsee Doshi、Yannick Assogba、Yoni Halpern、Zan Armstrong、そして Google の他の同僚たちに感謝します。

シルエットは ProPublica の Wee People からお借りしています。