AIプロジェクトにおける説明可能性の方針

こんにちは。デジタルテクノロジー統括部でアナリストをしているY・Nです。

 パーソルキャリアのデジタルテクノロジー統括部は、一般社団法人データサイエンティスト協会が定める「データサイエンティストに求められるスキルセット」を基に、以下の3つのグループが組織されています。

  • ビジネスグループ
  • アナリティクスグループ
  • エンジニアグループ

f:id:sanimirataty:20200509043201j:plain

出典:データサイエンティスト協会

 これらの3グループが互いに連携しあい、AI(ここでは機械学習による予測モデルを指すことにします)によって様々な業務を自動化させたり、意思決定の補助に利用させるプロジェクトに取り組んでいます。

 その際、「AIの判断根拠をどの程度(どの様に)見せれば良いか」ということが常にビジネスグループで議題に上がります。殊にAIの予測結果を人間(特に営業部門の人)が見た上で意思決定の補助として利用する場合に顕著で、判断根拠が表示されないブラックボックスなAIは信頼性に欠け使いづらいとの反応を懸念しています。

 これはパーソルキャリアに限った話ではなく、経団連や内閣府の戦略で

(4)AI が生み出す結果の説明が困難
とくに深層学習は、モデルの生成過程やモデルが持つ性質を個人が直感的に理解できる形に落とし込むことが難しい。そのため、AI システムがなぜその結果を出すに至ったのかのプロセス、つまり結果にデータの種類や品質がどの程度影響しているのか、プログラムや仮定に問題があるのか等、AI 技術者にも把握することが困難な場合が多く、利用者が理解できる形での説明が難しい。そのため、期待した結果が得られない時、事後的な検証を行うことも困難になっている。とくに近年、モデルの大規模化が進んでおり、ますます説明が困難になってきている。

出典:経団連 AI活用戦略

<基礎・基盤的な研究開発>
AIの判断結果の理由の説明や、AIの品質を評価できる「信頼できるAI」を定め、(中略)

機械学習による学習・推論結果について、人間が理解できるように説明し、信頼性を向上させる技術を開発

出典:内閣府 人工知能技術戦略実行計画

のように触れられる程度に一般的な話題です。

 これらの課題に折り合いをつけるための、現時点でのアナリティクスグループ(に所属する筆者)の方針を説明していきます。 

説明可能性を高める(とされている)手法により、説明(のようなもの)を表示させる

 説明可能なAI(Explainable AI,XAI)に関しての非常に包括的な論文

Explainable Artificial Intelligence (XAI): Concepts, Taxonomies, Opportunities and Challenges toward Responsible AI*1

に大別して

  1. ブラックボックスな機械学習モデルの説明に、透明な機械学習モデルを利用する
  2. ある入力を予測した際、事後的にどの特徴量が予測に’効いた’のかの大きさを表示する

という2種の方針が述べられており、これらを踏襲していきます。

1. ブラックボックスな機械学習モデルの説明に、透明な機械学習モデルを利用する

 1に関して、ディープラーニングやアンサンブルのようなブラックボックスモデルでの予測結果に、決定木などの“透明性の高い”モデルの中身をセットにすることで説明しているものとみなすという方針です。

f:id:sanimirataty:20200513004711p:plain

出典:*1

透明な機械学習モデルの代表例として

(a)線形回帰 (説明略)

(b)決定木(説明略)

(c)KNN(説明略)

(d)ルールベース(説明略)

(e)一般化加法モデル(GAM)

一般化線形モデル(GLM)を拡張させ、各変数の線形和の制限を削り、予測yの期待値\mathbb{E}(y)をリンク関数gで変換したものg(\mathbb{E}(y))が、各x^iの“一般的な関数f^i(x^i)”(ここがGLMから拡張されたところ)の線形結合で表されるモデル

f^ix^iを平滑化スプラインで近似した非線形関数

平滑化スプラインとは、離散的なデータ\{(x_j^i,y_j^i)\in R^2\}_{j=1}^{n}が得られたときに、滑らかなf^i(x^i)\approx y^iを得るための手法で、以下を満たすような関数を求める

  1. 得られた点x_j^iで近似関数とデータの誤差が0であること、つまりf_j^i(x_j^i)=y^i
  2. 得られた点で、1次微分と2次微分においての微分係数が等しいこと、つまり{f}'{_j^i}(x_j^i)={f'}{_{j+1}^i}(x_j^i)および{f}''{_j^i}(x_j^i)={f}''{_{j+1}^i}(x_j^i)
  3. jの範囲が[1,n]なので、両端に関する境界条件を満たす

以上の3条件を満たすような関数で近似させて、各f^iを求めていく

その解釈は線形回帰と似たように、各特徴量ごとの重要度の解釈が出来る

(f)ベイジアンモデル(筆者の知識不足につき、説明できません)

各特徴量が独立であると仮定し、それぞれの変数がどの程度寄与しているのか解釈することが出来る

f:id:sanimirataty:20200513005553p:plain

出典:*1

以上のように(a)〜(f)の様な透明性の解釈が出来る(とされている)手法を用いて説明(のようなもの)を得ることが目的ですが、この方法には弱点があります。それは、もしモデルが理想的に組めていればモデルの説明可能性と正確さはトレードオフの関係になってしまうと言うことです。特に自然言語処理や画像処理の場合はデータが構造化データに比べて非常に複雑で、解釈性が最も低いディープラーニングを使わなければ満足な精度が得られない、満足な精度を得るためには過大な労力を必要とすることが殆どなので、こちらの方針を使うことは困難としています。

f:id:sanimirataty:20200511033855p:plain

出典:*1 モデルの説明可能性と精度のトレードオフ関係
2. ある入力を予測した際、事後的にどの特徴量が予測に’効いた’のかの大きさを表示する
 2に関して、"Why Should I Trust You?": Explaining the Predictions of Any Classifier*2やAnchors: High-Precision Model-Agnostic Explanations*3などに代表される手法で、それぞれ計算方法に違いはあれど基本的には「入力時少ししか変化させていないのに、出力が大きく変わる特徴量は重要度が高い特徴量であり、重要度の高い量をハイライトなどして表示させたものを説明とみなす」という方針です。 同論文中の例で、下図の(a)が何の図であるか沢山の種類の中から分類した際、可能性の高い上位3つのものとして
(b)エレクトリックギター
(c)アコースティックギター
(d)ラブラドール
と予測した際、それぞれの予測で重要度が高い部分をハイライトして表示させたもので、正しい(ように見える)部分がハイライトされています。

f:id:sanimirataty:20200511051420p:plain

出典:*2
 画像を例に取りましたが、自然言語(や、最善かどうかは別として構造化データ)でも同じようなことが可能で、予測した場合の重要度が高い部分をハイライトして表示させたものを説明として表示をさせます。
[CLS] データ 活用 基盤 において 以下 の 内 、 適 ##性 に 応じ た 業務 を お 任せ いた ##し ます 。 1 基幹 システム の ビッグ データ を 処理 する データ 分析 基盤 の 構築 ・ 運用 の マネジメント 2 データ ##クレ ##ンジン ##グ や データ パー ##ジ など データ 品質 と データ ライフ ##サイクル を 考慮 し た データ マネジメント の 仕組み の 構築 と 運用 3 あらゆる 現場 で データ 活用 できる よう に 、 セルフ BI の 普及 推進 4 データ 処理 の 専門 家 として データ の 加工 ・ 抽出 に関する 業務 部門 の 個々 の リクエスト へ の 迅速 な 対応 5 ビッグ データ や 非 構造 化 データ を 扱う データ ##モデル の 作成 、 及び 、 機械 学習 ( AI ) を 使っ た マッチ ##ング エンジン の 仕組み の 構築
求人票から職種(データエンジニア)を予測した際のAttentionの大きさをハイライトしたもの
 
 ハイライトの他に、重要度が高い順にランキング形式で表示するなどの方法もありますが、いずれにせよ特徴量の重要度を何らかの形で表示させることに変わりありません。
以上これらの各手法の長短を比較検討しながら、「予測結果に、特徴量の重要度を添付する事によってモデルの説明が表示されている(ことにする)」、これをビジネスグループの求めに応じて出力することを努力する、ということを基本方針としています。

説明可能性を追求することは避ける

 上で説明可能性に応えるための基本方針を述べましたが、「ことにする」という表現に留まり、「これこそが説明なのだ」と表現されるような説明は得られないと考えています。

 透明なモデルにせよ、ギターとラブラドールの画像のハイライトにせよ、実のところ単に「恣意的に決めた量の大きさを表示している」ことに過ぎず、何故これが説明になっているかは説明できません。これらはモデルの頑強性や汎化性能を検証するには有効かもしれませんが、AだからBである、BなのはAだからであるなどといった因果関係の説明を一切出来ていません。

 これは(形而下的な)因果関係(の認識)がヒューム(やカント)の指摘

  • AがBの原因であるということは、これまで常にAが観測されたときにBも観測されたということでしかない
  • AとBの「因果関係」そのものが観測されたわけではない
  • これまで観測された規則性がこれからも成立すると信じる根拠がない

 出典:飯田隆 言語哲学大全Ⅱ

のように、(少なくとも形而下の)因果関係を認識することなど出来ず、どこまで精緻な観測を行おうがどこまで賢い人が推論(のようなもの)を行おうが、「AがBの原因であるように思うが、それを“信じるか信じないかはあなた次第”」という性質であるが故に仕方のないことで、それが何なのかを追求しても徒なことです。 

f:id:sanimirataty:20200513041915p:plain

ヒューム(左)とカント(右)

 そうは言っても因果関係(と呼ばれるもの)を何らかの形で“使える”様にしなければ生産性がなく全く進歩が生まれないので、統計学と結びつけて、

「AまたはBが観測されたデータから様々な統計的指標を作り出して、指標が◯◯であればAはBの原因である、ということにすれば生産的なのでそのように決めましょう、また別の指標が✗✗であればAはBの原因であることにすれば更に生産的になるのでその様に変えましょう」

というように、(少なくとも形而下的の)因果関係(の認識)を人間が決めてしまい、生産的に計算や判断等出来る様にしていかなければなりません。

 さて、そうなると問題が発生します。元々機械学習を用いて何かを予測するのは、ルールの数が発散してしまい、一々ルールを定義することが困難であるからでした。にもかかわらず、因果関係を説明するには因果関係のルールを一々定義しないといけないというジレンマがあり、結局因果関係の説明は諦めざるをえません。

実のところの方針

 因果関係の説明は無理ですが、人間がルールを一々定義せずともうまく判断出来ているように、もしモデルが十分に精度良く、汎化されていて、頑強ならば、人間の内部の判断根拠に相当する“何か”がモデルの内部にも存在するはずです。それは説明されることが出来ないだけで存在しないわけではないので、精度や頑強さの検証がOKならば顕に人間に対して人間に解る(と信じている)形式で示そうが示すまいが、理想的には同じ生産性を達成できるはずです。

 それ故に、実際にAIプロジェクトを進める際は、説明可能性を追求するのではなく生産性(利益や満足度、これも人間が決めなければならない)に貢献するための精度や汎化性能を追求し、予測結果を見る営業部門の人にはモデルの精度や“頑強性”が如何に優れて/不十分であるかを実験結果により納得してもらうことや、PoCによって利用しないより利用したほうが営業部門の生産性が上がることを体感してもらうことなどを、本質的な方針であると考えています。

Y・N

Y・N

テクノロジー本部 デジタルテクノロジー統括部 データ&テクノロジーソリューション部 アナリティクスグループ アナリスト