『機械学習を解釈する技術』&『施策デザインのための機械学習入門』著者陣によるクロストーク

第2回実務における機械学習の解釈手法と因果推論の位置づけ

2021年8月に発売された『機械学習を解釈する技術』の著者である森下光之助氏と『施策デザインのための機械学習入門』を共著した齋藤優太氏、安井翔太氏の3人が集まり、執筆の経緯や書籍への想いについて3回にわたって語る第2回。第1回では書籍執筆の動機から書籍執筆の裏側に話がおよびました。

執筆の裏側をもう少し掘り下げる

安井:森下さんの執筆の裏話は何かありますか?

森下:裏話ですか。執筆に1年半もかかってしまって申し訳ないというところですね。

安井:やっぱり1年半ぐらいかかりましたか。

森下:最初に依頼を受けたのが2019年の12月で、それから1年半かかったんですが、最初は半年ぐらいで終わるんじゃないかと思ってたんですけど、まったくそんなことなくて(笑⁠⁠。実際に執筆している時間だけ考えるとそんなに長くないような気もするんですが、業務をしながら執筆するってすごく難しいことなんだと感じました。

スタートアップ企業に勤めているからなのかもしれないのですが、業務量が安定していなくて、すごく忙しいときもあれば、大型連休でやっと書けるみたいなこともあって。技術評論社さんで執筆されている方は、基本的に本業がある方ばかりだと思いますけど、ほんとにみんなすごいんだなって思いました。

画像

森下光之助(もりしたみつのすけ)

東京大学大学院経済学研究科で計量経済学を用いた実証分析を学び、経済学修士号を取得。株式会社グリッドに入社し、機械学習を用いたデータ分析プロジェクトに従事。現在はTVISION INSIGHTS株式会社で執行役員兼データ・テクノロジー本部副本部長。テレビデータの分析、社内データの利活用の促進、データ部門のマネジメントを行っている。

Twitter:@dropout009
ブログ:Dropout
登壇資料:Mitsunosuke Morishita(@dropout009)on Speaker Deck

安井:いや、仕事しながらの執筆は結構きついものがありますよね。

齋藤:こちらの本では途中で大きい構成変更がありましたが、森下さんの本は最初のイメージ通りに執筆が進みましたか? 途中で書きながら変えたことはありましたか?

森下:コンセプトは最初から一緒ですね。機械学習の解釈に便利そうな手法が4つあるのでそれを紹介します、というのは変わりませんでした。実データを利用するのかシミュレーションデータにするかとか、説明の方法を変えたことはありました。本では回帰問題だけを扱ってるのですが、もともとは分類問題も入れようと思っていたりといった、多少の説明の仕方の変更があったぐらいで、大きくは変わっていませんね。

安井:なるほど、ありがとうございます。ほかに、もう少しお互いの感想を聞いてみたり、質問があれば投げてみたいことなど、何かありますか?

画像

安井翔太(やすいしょうた)

2013年にNorwegian School of Economicsにて経済学修士号を取得しサイバーエージェント入社。入社後は広告代理店にて広告効果検証等を行い、その後2015年にアドテクスタジオへ異動。以降はDMP・DSP・SSPと各種のアドテクプロダクトにおいて、機械学習に関する業務やデータを元にした意思決定のコンサルティングを担当。現在はAILabの経済学チームのリーダーとして経済学と機械学習の融合に関する研究を行う一方で、Data Science Centerの副所長として社内のデータサイエンスプロジェクトのコンサルティングも担当。著書に『効果検証入門』⁠技術評論社、2020)がある。

森下:不勉強だったのですが、推薦システムやランキングに因果推論を利用するといった文脈をあまり知りませんでした。今そういうのが流行ってるというか、進んでいる新しいところなんでしょうか? 題材にこれを選ばれた理由をお伺いしたいなと思って。

齋藤:そうですね。これをテーマに選んだ理由は2つあります。平凡な理由としては、単純にその辺が自分の専門分野といえばそうなので、論文のサーベイとかがほぼ必要なく、書きやすいテーマだったということです。もう1つは、最初の話ともつながるんですけど、たとえば推薦と因果推論との組み合わせがありますとか、機械学習と因果推論の組み合わせがありますというよりも、今回は根源的な考え方を説く本と位置付けているので、それを説明するのに都合がいいというか、その考え方が色濃く出るのが推薦とかランキング学習×因果推論かな、というのがあります。

その中で、一般的な機械学習の実務はこうあるべきだよね、という根源の話を1章で導入して、そしてそれをわかりやすく伝えるための練習題材を2章以降で取り上げていきました。この分野でも同じ考え方で解決できますよね、こっち分野にも適用できて一緒ですよ、といった感じです。

画像

齋藤優太(さいとうゆうた)

2021年に、東京工業大学で経営工学学士号を取得。大学在学中から、因果推論と機械学習の融合技術(反実仮想機械学習)や、バイアスを含むユーザの行動ログに基づく推薦・ランキング学習に関する研究を行う。その過程で、ICML・RecSys・SIGIR・WSDM・SDMなどの機械学習・データマイニング領域におけるトップレベル国際会議にて査読付論文を発表。2020年には、半熟仮想株式会社を共同創業。以降当社の科学統括として、複数の国内テクノロジー企業との共同研究の取りまとめを担当、専門技術の社会実装や大規模実証研究に取り組み、その研究成果の一部が日本オープンイノベーション大賞・内閣総理大臣賞を受賞。2021年秋からは、Cornell University、Department of Computer Science(Ph.D. program)に進学し、関連領域の研究を継続する。

Twitter:@usait0
Website:usaito.github.io

森下:ありがとうございます。

齋藤:もちろん、推薦×因果推論はけっこう流行っていて、機械学習応用系の分野でたくさん論文が出てきています。そうなるとどの論文の内容を紹介しようかという悩みが出てくるんですが、今回は、この論文が有名だから説明しようというよりも、あるコンセプトの考え方が色濃く出ていたりして説明に便利な論文などを優先して取り上げました。たとえば実践で出てくる、コストと精度のトレードオフのような話を取り上げているんですが、このトレードオフが色濃く出る手法は何かって思ったときに、じゃあこの論文の話を入れるかなっという感じで組み込む論文を選んでいました。

そもそも最初に大きいテーマ変更があったって話をしてたんのですが、それ以降も最初にこれを説明しよう、次にこれを説明しようという感じで、わりと書きながら構成を考えてる感じがありましたね。

機械学習の解釈手法は実務で使えるのか

安井:森下さんが今回書かれてる本って4つの手法が出てたと思うんですが、あれはどういう基準で選んだのですか。

※)
PFIはどの特徴が予測モデルにとって重要かを知ることができます。PDは特徴とモデルの予測値の平均的な関係に、ICEは平均ではなく個別のインスタンスに対して特徴と予測値の関係を探る手法です。最後に、SHAPはモデルがなぜそのような予測値を出しているのかという理由を解釈できます。
『機械学習を解釈する技術』⁠第1章 機械学習とは」より
解釈手法をミクロ/マクロでマッピング
(⁠⁠機械学習を解釈する技術』第1章より)
解釈手法をミクロ/マクロでマッピング(『機械学習を解釈する技術』第1章より)

森下:そうですね、これらの解釈手法が実務上便利そう、必要になりそうっていうのが一番にあります。実務で必要な解釈性をカバーするために、たとえば、この手法ではわからないことがあって、それはこの手法でカバーできます、といった感じでつなげていくと、この4つになるかなって思っています。

あとは、一番解釈しやすいモデルは線形回帰モデルだと思うんですけど、線形回帰モデルってこういう解釈ができますよね、って話があって、ブラックボックスモデルでも同じ解釈性を担保したかったらこういう手法を使ってそれらを与えることができますよ、みたいな説明ができる。そういうところから選ばれた形です。

安井:なるほどなるほど。

森下:本で紹介している4つの解釈手法以外にも、機械学習の解釈手法はいろいろあります。たとえば、LIMEは有名だと思いますし、その作者が作ったanchorsとかもあります。その中でこの4つが選ばれたのは、僕はやっぱり線形回帰モデルが好きなので、それと同じようなことがブラックボックスモデルでもわかるようにしたいという気持ちがあるのかもしれないです。

安井:なるほど、ありがとうございます。

安井:計量経済をやってる人でも線形モデルが結構解釈しにくいみたいな話があって、そうすると最近の機械学習とかの解釈性でよくある、インスタンスごとの解釈みたいな話とちょっと思想的にずれてる感じがするんですけど。

森下:それはそうかもしれませんね。

安井:あまり計量経済とか統計方面の方と機械学習の解釈性について話したことないのですが、インスタンスごとの解釈って違和感を感じたりするのかな。そんな話は聞いたことがありますか?

森下:言われてみるとそうなのかもしれないですね。人によって施策の効果が違う、みたいな文脈は計量経済学でもあると思うので、その文脈でとらえる人もいるとは思います。僕もインスタンスごとの解釈について最初に見たときに、そんなに1つのインスタンスに注目してどうするんだって思いがありました。でもあらためて実務を考えると、ただこういう予測値が出ましたと言って納得してもらえなかったことはたくさんあります。

よく言われる例だと、クレジットスコア、信用度みたいな話があって、その人にローン出す出さないってなったときに、なんかよくわからないけど貸しませんっていうのは許されないと思います。やっぱり実務上、ある1つの予測に対しても何かしらの解釈ができるっていうのは、納得感を得る上でも重要なのかなって思ってます。

安井:ありがとうございます。齋藤さんから何か質問や感想はありますか?

齋藤:さっき出たかもしれませんが、解釈性がこれから実務の中に入っていく可能性や、もしくは機械学習エンジニアや実務で働いてる人たちが、こういう考え方もしくはこの点は解釈性の分野から学んだ方がいいみたいなのはあったりするんでしょうか?

森下:僕、今はテレビの視聴分析をやってるんですけど、前の会社は受託分析でした。そのときはクライアントから分析の案件を受けるんですが、クライアントにある程度分析の内容を報告する必要があって、そのときに中身はよくわかりませんと言うより、たとえばこの特徴量が重要だとか、実際の予測値がこうなってるんだけどなぜそうなってるのかとか、特徴量に変化があったら予測がどう変わるのかがわかるとか、というあたりをきちんと説明できるとクライアントの納得感がすごく上がったという経験をしたので、その点で解釈性は実務で使えるのかなって思います。

また、分析者自身にとっても、モデルを作ってるときに解釈手法を使うと、違和感に気づきやすかったりするなどのメリットがあります。みなさん、EDA(Exploratory data analysis:探索的データ解析)をデータ分析のときによくやると思いますが、それはそれでデータの内容を理解するのに良いと思います。解釈性を使うというのは、モデルに対してEDAをするというか、モデルの振る舞いを調査して、なんか変だなというのを見つけるような使い方もあるのかなと思います。実際にモデルが変な予測をしたときに、なんで変な予測したのかなとか、それを調査する際にも解釈手法を用いることができますね。

齋藤:ちなみに機械学習の中で、インタープリタビリティ(解釈性)が確立した分野としてあると思うんですけど。実際にそれらの研究分野で提案されている手法を実務で使っていこうと考えたときに、ギャップというか限界みたいなものってあるんですか。

安井:使うには使えるけど、オプションがどんどん増えていってるといった状況なんでしょうか。

森下:そうですね、あくまで個人的な主観としてですが、実務的な観点で見たときに、その解釈性をどういう風に使えば良いかうまくイメージできない手法もあったりはします。なので、今回の本では網羅的に紹介するよりも、特にあったほうがいいなと思う解釈性の手法を紹介させていただきました。

齋藤:「こういう解釈性あるよね」の生成合戦になってるんですかね。

3人:(笑⁠⁠。

安井:SHAPをやたら弄り回す論文がいっぱい出てる気がします。

森下:そうですね。SHAPはすごく魅力的ですよね。なんかある種の数学的な保証があるからか、SHAPをベースにいろいろやりましょうみたいなアイデアが出ていますね。なので発展も速いですよね。最初にSHAPが出たころといろいろ変わってきたりしていて、キャッチアップも大変だと思います。

安井:ああ、そうなんですね。

森下:SHAPは報酬関数を期待値で表現するんですが、条件付き分布で期待値をとるのか周辺分布でとるのかとか、いろいろな議論が進行しています。これからいろいろなことがわかっていくのだと思います。

『機械学習を解釈する技術』『施策デザインのための機械学習入門』―2冊の接点を探る

齋藤:counterfactual explanationsとかいう分野もありますよね。あれはInterpretabilityとCFMLの近傍にある分野だとぼんやり思ってるんですけど、今のところ意外とCFMLのcounterfactualとは接点がなさそうなのでしょうか。あまりそちら側の論文読んだことないのでわかっていないのですが。

安井:counterfactual explanationsは自分の認識だと、先ほど出たインスタンスごとの解釈性です。理想的に入力データがこう変化したら予測がこう変わります、みたいな差分に興味があるといった。

森下:ICEとかも一応そうと言えばそうなのかな。モデルが上手く本当の関係を学習できているとしたら、実際に特徴量を動かして予測値が変化するなら実際のアウトカムもそうなるでしょう、という理屈ですよね。もちろん因果関係として強いことは言えないと思います。

安井:入力されるデータのある部分を変えたら予測値は実際には変化するので、実際にそのモデルそれを利用して意思決定するなら、それは因果関係になってしまいます。なので、将来においてもそのモデルが使われるのであれば問題ない気もしますが、モデルは大体更新されますよね。

齋藤:つまり、あるインプットを考えたときに、アウトプットがそのモデルの通り行くかというところが保障されているモデルを学習するところが、CFMLの担当範囲なのでしょうか。たとえばインプットを動かしてどうこう話をするときに、観測データに過剰にフィッティングしているモデルがあったら、そのログデータに対しては何かしら結果は出ると思うのですが。

その結果や解釈がモデルを実環境に移したときに一般化できるかどうかというと、モデルがちゃんと実環境とログデータの違い、バイアスを捉えられていないとログデータに過剰にフィットしたモデルの上での解釈性の議論、実環境での性能にあまり関係のない議論に終始してしまう。なので、そもそもバイアスに左右されないモデルを学習する部分が、CFMLとか自分たちの本の興味範囲なんだと思います。ちょっとフェーズが前後している感じがしますね。

森下:言ってることわかります。確かに。

安井:無茶振りしてみると、今回の齋藤さんの機械学習のフレームワークに解釈性をどこかでうまく使ってみようと考えたときに、何かやりようはあるのでしょうか。

森下:そうですね。もしかたら質問の意図を汲み取れてないかもしれませんが、因果推論て特徴がいっぱいあっても、そのうち1つだけが基本的にはターゲットになっていて、その効果が知りたくて、他の特徴に対する解釈性はなくてもいいという感じだと思うんですよね。ひとつの知りたいターゲットに対してだけ解釈が上手くいけばよくて、他はよくわからなくてもいいって発想だと思っています。だから、機械学習の解釈性とは少し問題設定が違うのかもしれないなとは思います。機械学習の解釈性の文脈って、全部のパラメータに対して、どう動かしたらどうなるみたいなことを調べようとしている認識です。その分結果が荒くなるのかなと。

齋藤:序盤の話を聞いてて、解釈性と因果効果の予測の関連で思ったことがあります。たとえばEコマースサイトでクーポンをメールでユーザに送信して売上を最大化したい問題で、我々が操作できるのはクーポンによる割引額だったとします。もちろん割引額を増やすと1回当たりの支払いは減ってしまいますが、それ以上に購入確率が上がれば売上も増えるはず。クーポンによる割引金額をトリートメントと見なして、売上が最大化されるようにクーポンの割引金額を上手く操作する意思決定モデルを学習するという話が、自分がやってる分野の興味だったりします。

たださっきの話を聞くと、実はクーポンの値段というよりも、メールをどの時間帯に送るかみたいな別のトリートメントの方が、実は売上に効いている可能性もありますよね。そもそも施策を作るうえで何が重要なトリートメントになり得るのか、という情報を集めるのに解釈性の技術を使うことができそうという想像をしていました。

森下:おっしゃる通りだと思います。最初にいろんなものに対していろいろ見たいとき、機械学習モデルを作ってみて、どれが効果ありそうだというあたりを付ける使い方には、解釈性がすごく役に立つのかなというふうに思ってます。

齋藤:そうですね。それに関しては、基本的にはこっちの本では人が考えるものだというふうになっているので、それを助けるツールという接点なんかもありそうです。

安井:『施策デザインのための機械学習入門』だとデータのバイアスがキーになっているじゃないですか。ただ、どんなバイアスがあるか、もしくは重要なバイアスはこれ、というのは大体知られている状況を想定していたと思います。ただ、実務的にそれを全部知っている状況はなさそうで、そのあたりををとりあえず無視して学習したモデルから、こういうバイアスが怪しいかもっていうサジェストを出せたら面白そうかなとは思いました。

たとえばクリックの予測をするとき、ランキングを特徴量にして予測して、効いているのがランキングですみたいなのが出てきたときに、これって単純にランキングのバイアスの問題だけなんじゃないの?みたいな発想が出てきたりするのかなって感じですね。

齋藤:それはそうですね、着目点としてはたしかに面白そうで、これまであまり考えたことがなかったものです。ただランキングを特徴量に入れて、ランキングのバイアスを解釈性の手法で解釈して、といったことをやっている時点で、その特定のバイアスの存在を仮定している気もするので、結局どうなんだろう。

森下:いま、齋藤さんの施策デザインの本と僕の解釈性の本で関わる部分という話をしているので、いろいろアイデアは出てきてはいるのですが、因果関係を解釈するために解釈性を推すかというと、やっぱり難しい部分も多いとは思いますね。

(第3回へ続く)

おすすめ記事

記事・ニュース一覧