Contenu connexe
Similaire à XAI (説明可能なAI) の必要性 (20)
XAI (説明可能なAI) の必要性
- 2. 自己紹介
✤ 名前: 西岡 賢一郎
✤ 鹿児島出身、一児のパパ
✤ Twitter: @ken_nishi
✤ note: 西岡賢一郎@研究者から経営者へ (https://note.com/kenichiro)
✤ YouTube: 【経営xデータサイエンスx開発】西岡 賢一郎のチャンネル (https://www.youtube.com/channel/UCpiskjqLv1AJg64jFCQIyBg)
✤ 経歴
✤ 東京大学で位置予測アルゴリズムを研究し博士 (学術) を取得
✤ 東京大学の博士課程在学中にデータサイエンスをもとにしたサービスを提供する株式会社トライディアを設立
✤ トライディアを別のIT会社に売却し、現在CTOを務める
✤ 自社および他社のプロダクト開発チーム・データサイエンスチームの立ち上げ経験
- 14. 2つの説明
✤ 大域的な説明:モデル全体の振る舞いを説明する
✤ Feature Importance (Gini Impurity)
✤ Permutation Feature Importance
✤ 局所的な説明:特定のインプットに対してどうやってアウトプットが出たか説明す
る
✤ LIME: 局所的に線形近似
✤ SHAP: 協力ゲーム理論
例: モデルが重視している
特徴量はどれか
例: ある予測のときに重視された
特徴量はどれか
Notes de l'éditeur
- それでは早速ですが、私の発表の方に入らせていただきます。
今回私からは、XAI (説明可能なAI) の必要性についてお話しします。
- こちらが私のプロフィールです。
もともとは機械学習のアルゴリズムを大学院で研究しており、博士課程の途中で起業しました。
現在は、立ち上げた会社を売却した先でCTOとして勤務しています。
今までおもにプロダクト開発やデータサイエンスチームの立ち上げや支援をやってきました。
業務外では、この勉強会の開催や、YouTubeやnoteで機械学習やスクラムの話の解説をしています。
- ディープラーニングなどの高度なアルゴリズムや高性能な計算マシン、そして大量のデータが手に入るようになり、高性能なAIがどんどん登場しています。
もはや、高性能なAIに判断を任してしまえば、全てがうまくいくような感じもします。
正答率が99%のAIがあれば、それを使ってしまえばいいような気もしてしまいますよね。
- しかし、実際は、AIが出してきた何かしらの予測をそのまま使おうとしても、AIがなぜその判断をしたのか理由をつけられないときAIの判断をそのまま受け入れることができないことも多い。
例えば、ビジネスで意思決定をするときに、高性能だが中身がよくわかっていないAIのいうことをそのまま上司に提案しても、導き出された結論に対する根拠がブラックボックスだから分かりませんと言ってしまっては、無責任だと思われ、提案を却下されてしまいます。
- AIに対する説明責任は、人間が納得する必要があるときや、AIにより導き出された結果を用いて、次に何かしらのアクションを起こすときや、AIが正しい挙動をしているかを理解したいときなどに必要となります。
AIの説明責任では、医療の例がよく出される事が多いです。
ガンだと診断されて、その理由を医者に聞いてもAIが判断したので分かりませんと言われたら、その医者を信頼することは難しいですよね。
- 冒頭に述べたように、アルゴリズムの進化など様々な変化により、AIは飛躍的な進化を遂げてきています。
しかし、性能の進化とともに、AIで使われているモデルの複雑化が進み、ブラックボックス化はより深刻になってきています。
AIを使う人達は、高精度の予測ができるAIが、必ずしも人間への説明が得意ではないことを知る必要があります。
機械の中では最適化された妥当な予測だったとしても、人間には難し過ぎて理解ができないということです。
これがAIがブラックボックスだと言われる所以です。
このブラックボックスをできる限り説明できるようにしたいというのが、説明可能なAI, XAIが登場した背景となります。
- では、ここからはXAIと2つの説明についてお話します。
- XAIはeXplainable AIの略で、ここ数年で特に着目されてきている技術です。
Inputが2で導き出された答えが6だった場合に、y=3xで計算しましたというのであれば、人間でも理解しやすいものですよね。
- ここで機械学習の挙動をイメージできるように、教師あり学習を例にして、機械学習の目的を簡単に説明します。
教師ありの機械学習では、インプットとアウトプットが与えられます。
ECサイトの例で言えば、インプットは購買履歴、アウトプットは特定の商品を買うかどうかなどがあります。
ここで、インプットが何かしらの未知の関数で変換された結果アウトプットが出てくるという構造を、機械学習では解き明かします。
つまり、このフローの真ん中の関数を推定するというのが機械学習が目的ということです。
- 未知の関数は、インプットとアウトプットをもとに推測されていきます。
これによって学習された関数が出来上がるということです。
もちろん、インプットとアウトプットだけでは、もとの未知の関数を完全に再現できるわけではないので、目的となる未知の関数にできる限り近い関数が、学習に得られるというわけです。
この学習した関数がどんな挙動を示すかを説明する必要をすることを目的とするのがXAIです。
- ここで、学習した関数を説明するときに問題が出てきます。
学習した関数が単純であれば、もちろん簡単に説明ができます。
しかし、学習した関数が複雑である場合、説明が難しくなります。
この説明しやすさが、説明可能性と呼ばれるものです。
説明可能性では、人間が理解できるように説明することが必要となります。
- 説明可能性で出てくる説明は大きく分けて2つの種類が存在します。
1つは大域的な説明で、モデル全体の振る舞いを説明するものです。
Feature importanceと呼ばれるものなどがよく使われるものですね。
ジニ不純度という指標を使ったり、特徴量を増減して予測精度の変化を見ることで、モデルが重視している特徴量を明らかにしていいきます。
もう一つは、局所的な説明で、特定のインプットがどのようなプロセスを経てアウトプットになったかを説明します。
有名なアルゴリズムとしては局所的な線形近似を行うLIMEや協力ゲーム理論の公平な分配方法を用いたSHAPなどがあります。
モデル全体は知らなくてもいいから、ある予測がどんな根拠で出されたかを知りたい場合などに、局所的な説明は役に立ちます。
大域的な説明と局所的な説明と聞くと、全体が説明できる大域的説明のほうがいいのではないかと思う人もいるかもしれませんが、目的が異なるのでどちらが秀でているとかではありません。
- 局所的な説明に関して、少しわかりにくい部分もあるかと思うので、もう少しだけ補足しておきます。
教師あり学習で複雑なアルゴリズムを使うと、正と負の境界が複雑に入り組んで、境界を人間にわかるような説明に変換することが難しいです。
そこで、局所的な説明では、特定の予測の予測に関しての説明のみに注目します。
よくやられる方法では、対象となる予測の周辺のデータを持ってきて、線形モデルなど解釈が容易なアルゴリズムを用いて局所的にフィッティングをします。
全体の予測を表すことはできないが、近いデータとなぜ差が出たかを理解することで、局所的な説明を実現していきます。
- ここまで、説明可能性などについて話してきたのですが、そもそも説明可能性が本当に必要かどうかについてお話します。
- もし、AIを使う目的が、予測精度がとにかく高いものを使いたいというのであれば、人間が無理に理解できるようにしないという判断もあります。
説明可能なモデルにこだわりすぎてしまうと、人間の理解の限界がモデルの限界を決めてしまいます。
その結果、高精度の予測ではなく、そこそこの予測精度のモデルになってしまいます。
ただ、逆に予測精度はそこそこでいいので、説明可能性を重視するという選択肢もありうるということです。
これらは一般的にトレードオフの関係になるので、ブラックボックスで高い精度がいいのか、それともそこそこの精度で説明可能性を求めるかは、プロジェクトの目的に合わせて考えてみてください。
- もし説明可能性よりも予測精度が重要だとおいうことでモデルのブラックボックスを許容するという判断になった場合は、モデルが不当に高い予測精度になっていないかに気をつける必要があります。
高い精度だったけれど、よくよく調べてみたらオーバーフィッティングやリーケージが発生していたというのはよくある話です。
こうならないためにも、オーバーフィッティングをさけるためにクロスバリデーションを必ず避けたり、リーケージを割けるためにデータの時系列情報を用いたりします。
とくにリーケージは気づけないことも多いため注意が必要です。
- 最後にまとめをします。
AIは予測は得意ではあるけども、必ずしも人間が分かるように、予測モデルを説明してくれるわけではありません。
そのため、AIが導き出した予測結果を用いて、何かしらのアクションを人間が取る場合などは、AIがなぜその予測結果を出したのかを人間が理解する必要があります。
そこで出てくるのが今回のテーマである説明可能なAI (XAI) です。
XAIでは、人間が理解しやすいモデルを使ってAIを表現します。
XAIでは、大きく分けて2つの種類の説明があります。
1つが大局的な説明で、モデル全体の振る舞いを説明します。
もう1つが局所的な説明で、特定のインプットに対する予測の過程を説明します。
XAIは、必ずしも必要というわけではなく、AIのブラックボックスを許容して説明可能性を捨てて、予測精度をとにかく向上させるという選択肢もあります。
その場合は、オーバーフィッティングやリーケージがわかりにくくなることもあるので、特に気をつけておく必要があります。