Merpayこんにちは。機械学習における解釈性についてお送りします。説明可能モデルを求めるSHAPの実装について最後にReferences機械学習における解釈性とは深層学習をはじめとする機械学習分野の発展に伴って、これまでにないユニークなサービスが開発され、また多くの業界において業務が効率化、高度化されつつあります。メルペイでも機械学習を用いて、与信モデルや不正検知などのサービス開発を行っております。一般に機械学習はブラックボックスと言われているように、複雑な仮説集合をもつモデルを用いた場合には、なぜその結果となったのか理解できないことが少なくありません。そのため、機械学習の学習、推論結果を人間が容易に解釈できるようにする研究が盛んに行われています[1]。decision.観測者が(機械による)判断の要因を理解できる度合いです。得られたモデルによる推論結果を人間が容易に理解できるような、解釈性が高いということが望ましいのです。サービスを提供する事業者としての説明責任すべての機械学習システムにおいてその説明責任が課されるとは限りません。機械学習を適用しようとしている領域に依存します。開発者は、AIシステムの入出力の検証可能性及び判断結果の説明可能性に留意する。プライバシー、財産などに影響を及ぼす可能性のあるAIシステムが想定される。機械学習による推論結果が重大な結果を及ぼす可能性のある領域においては、予測精度だけではなく、解釈性が要求されることは想像に難くありません。パフォーマンスを犠牲にしてでも解釈可能なモデルがしばしば用いられています。AUC)の説明のみで結果を納得してもらうことは難しいです。その背景には様々な理由が考えられますが、予期しない事象に対する好奇心や、発生した事象に対する意味の追求、などといった人間の根源にある性質に関連すると述べられています[4]。実際、私の過去の経験にも当てはまりますが、学習や推論結果に対するステークホルダーの「なぜ」に答えてあげることで彼らの納得感が得られて、チームとしてビジネスをより前進することができると思います。モデルのデバッグ、精度改善こちらは開発者視点ですが、モデリング時のデバッグや予測精度改善は非常に重要です。リーケージとなるような説明変数が使われていないかチェックや、説明変数の選択、精度改善のためのエラー分析など、一連のプロセスの中でモデル開発者を力強くサポートし、次のアクションを決めるための情報を提供してくれます。どのようなアプローチがあるのかそれでは解釈性を提供するアプローチとしてどのようなものがあるのでしょうか。その分類の観点としては様々あるようですが[5]、ここでは記事[1]を参考にします。本エントリでは、すでにご存知の方もいらっしゃるかもしれませんが、SHAPについて紹介したいと思います。SHAPはその汎用性の高さとツールとしての完成度の高さが特徴で、実務で機械学習に関わる方は知っていて損はないと思います。その他手法ついては、文量の都合上本エントリでは言及できませんが、わかりやすいまとめ情報が公開されているので、そちらをご参照いただければと思います[1][8]。SHAPについてここからはSHAPの論文[7]を中心に紹介していきたいと思います。細かな話が続くので、SHAPのツールとしての使用感に興味がある方は「SHAPの実装について」まで進んでいただければと思います。あるデータ点に対して説明可能な近似モデルを構築して貢献度を計算。協力ゲームにおける各プレイヤーの貢献度の期待値のこと。ここで各プレイヤーは特徴量と対応(すなわち各特徴量の貢献度を表現していることに対応)。