因果推論 | AI tech studio https://cyberagent.ai AI事業本部は、サイバーエージェントグループのデジタルマーケティング分野におけるサービス開発を行う組織です。 Fri, 27 May 2022 02:00:26 +0000 ja hourly 1 https://wordpress.org/?v=5.3.26 EBPMデータベースを作った理由 https://cyberagent.ai/blog/tech/oss/16582/ Fri, 27 May 2022 02:00:47 +0000 https://ai-blog-admin.cyberagent.ai/?post_type=blog&p=16582 経済学社会実装チームの森脇です。

本日、証拠に基づく政策(Evidence-Based Policy Making, EBPM)を促進するためのプラットフォーム、EBPMデータベースをリリースしました。このウェブサイトは査読付ジャーナルから政策現場における簡単なデータ分析までさまざまなレベルの政策に関するエビデンスを集めて共有することを意図したプラットフォームです。

大学やシンクタンクの専門家、行政組織の実務家などに政策効果に関する簡単なサマリー記事を「レビュー」という形で登録してもらい「データベース」化することで、政策を検討する際に過去の類似例の検証結果について参照できるようにしています。

EBPMデータベースのコンテンツは専門家のみなさまにどんどん追加していただきたいのですが、取り急ぎイメージを共有するために教育、医療、少子化の3分野について10本程度のレビューを掲載しています。いずれも分野の専門家が選定した査読付ジャーナルからの質の高いエビデンスを集めています。協力いただきました、伊藤寛武さん、高橋雅生さん、茂木良平さんにはこの場をお借りして御礼申し上げます。

EBPMは政府における議論がはじまった2017年ごろからバズり始め昨年急速に認知されるようになりました。厚生労働省では因果推論手法を用いた政策効果分析が発表されるなど着実に取り組みが進んでいます。私自身も中央省庁から政策のデータ分析に関するヒアリングを受ける機会があり政府におけるニーズの高まりを感じているところです。

trend

EBPMの検索数(Googleトレンド)

人的・財政的に慢性的なリソース不足に陥っている行政組織にとって、限られたリソースを有効な政策に振り向けることは喫緊の課題です。国の経済政策の司令塔である経済財政諮問会議においてEBPMアドバイザリーボードがエビデンスづくりを進めていますし、今年4月、経済産業研究所にEBPMセンターが設立されています。こうした、政府の取り組みはGoogleをはじめとするテック企業がA/Bテスト(ランダム化比較実験)によって客観的なエビデンスに基づいてサービスの改善を繰り返して成長してきたことと付合し、時代の趨勢と言えます。

EBPMデータベースの提供する価値

EBPMデータベースでは、主に3点の価値を提供したいと思っています。

低コストのEBPM

中央省庁のEBPMの取り組みは、「データを分析して」「証拠を生み出す」ところにフォーカスしているように見受けられます。日本最大のシンクタンクといわれ独自の研究所や傘下の研究独法をもつ中央省庁はともかく、自治体の現場でEBPMのためのデータ分析を行うのは容易ではありません。データ収集、分析、結果の活用という三段階のなかで、データエンジニア、データアナリスト、そして何より解析結果を幹部や議員に説明して意思決定を促す政策コンサルタントと、複数種類の専門家が揃うことはなかなかないと思います。

EBPMデータベースでは、すでに専門家がデータ収集と分析を行なった結果がレビューというかたちで投稿されています。適当なレビューを探して最後の意思決定の部分から始めることができます。必要なエビデンスが十分整理されていないといったご要望はお気軽にGitHubもしくはebpm@cyberagent.co.jpまでご要望ください。

EBPMについてのオープンな議論

EBPMデータベースのような試みは、諸外国でWhat Worksとかエビデンスストアといった名称で多数公開されています (注1)。しかし、これらは一方通行の情報提供にとどまり、研究者や政策現場とのインタラクションが難しくなっています。

EBPMデータベースでは、GitHubにソースコードをすべて公開しており、自由にレビューの追加や修正要望をできるようになっています。研究者の方がご自身の研究をアピールする場として使っていただくもよし、なんちゃって専門家によって歪んだ世論を糺すために分野で認められた高品質のエビデンスを追加していただくもよし、政策現場の方が実施してみたデータ分析結果を投稿していただくもよし、自由に使っていただければ幸いです。また、投稿されたレビューについての改善も歓迎しています。

政策現場とアカデミアの結節

COVID-19を契機に政策決定過程における専門家の役割が改めて議論されています。頑健なエビデンスをじっくり作り上げることに長けた専門家が、意思決定のためにオンデマンドなエビデンスを短時間で生み出す必要がある政策現場で何ができるのか。

急ぐあまりエビデンスの質が落ちれば仲間内から批判され、エビデンスの生産が遅いと政策現場からは見放されるという板挟み状況が改めて浮き彫りになりました。逆に、政策決定側は専門家に過剰に責任を負わせる構図も批判の対象となりました。

このような状況を打開するためには、EBPMデータベースを通じてエビデンスをつくる人と使う人が交流することでお互いの言語やインセンティブ、制約について相互理解を深めることで協働体制をつくっていくことが有用ではないかと思います。

既存のエビデンスについて共有するだけでなく、行政の現場での実証実験に専門家が参加し、その結果得たデータを論文化してまたEBPMデータベースに投稿するといったサイクルが生まれることを期待しています。

最後に

EBPMデータベースは開発途上のツールです。たくさんのレビューを投稿していただくとともに、実際に政策現場のユーザーに使った感想をフィードバックをいただき発展させていければと思います。

 

注1: What Works Clearing House, What Works Center for Local Growth  Education Endowment Foundation Teaching and Learning Toolkit  Kopernik Solution Catalog  J-Pal Crime Reduction Toolkit What Works For Children’s Social Care 3ie Development Evidence Portalなど

]]>
Synthetic Difference In Differenceの紹介 https://cyberagent.ai/blog/research/10840/ Mon, 18 Nov 2019 01:21:29 +0000 https://cyberagent.ai/?post_type=blog&p=10840 こんにちは、経済学チームの安井(@housecat442)です。

今日は最近気になっていた論文の一つであるSynthetic Difference In Differenceの内容を簡単に紹介します。

この論文は近年CS系のトップカンファレンスでも大活躍のSusan Atheyとその一派によって書かれており、タイトルもSynthetic ControlとDifference in Differenceの合わせ技を匂わせる非常に興味深いものです。

Synthetic Control(SC)は近年経済学において利用される事が増えてきた、因果効果を推定するための手法です。ちなみに今年のNeurIPSではこのSCを提案したAlberto AbadieによってSCのtutorialが行われます。

そんなSCを拡張した方法であるSynthetic Difference In Difference(SDID)をこの記事では簡単に紹介します。

ざっくりまとめると、この論文はSynthetic ControlとDifference in Differenceの合わせ技をDoubly Robust Estimatorのアイデアで実現し、さらに中で機械学習を使うという楽しい内容でした。

 

この記事では前提であるDifference In Difference(DID)とSynthetic Control(SC)の知識があるという想定で話を進めます。もしこれらの知識がない場合には、こちらの資料などを参考にされると良いと思います。

DIDとSCについて

まずDIDにおける因果効果の推定を思い出します。

i: 観測対象
t: 時間
Y: outcome
α: 個人効果
β: 時間効果
μ: constant
W: 介入
τ: 因果効果

これは各観測対象の各時点での回帰モデルの二乗誤差を最小にしているということになります。

 

一方でSCは以下のような分析を行います。

まずある対象Nがある期間Tにおいて介入を受けるものとします。

そこでN以外で期間Tより前のYを使い、Nの期間Tより前のYをうまく予測できる方法を考えます。

これは以下のような重み付きの和で表す事が可能です。

そして期間Tにおいてこの重みを使って、N以外のデータからNのYを予測します。

Tより前の期間において、介入が行われていない時のNのYを予測する重みなので、期間Tで介入が行われない場合のNのYを予測している事になります。

よって、この予測値と実際に介入による影響を受けている結果の差を介入の因果効果と考える事ができます。

 

SDIDについて

SDIDはこれに対して以下のような形になります。

これは一見DIDとほぼ同じに見えますが、実際にはSCで見たような重みに加えてλという新しい重みがかけられています。

つまり、これら二つの重みを掛けた何かしらの新しい重みを使って、重み付きの二乗誤差の最小化を行う事で介入の因果効果を推定しているという事になります。

この時λはNを除く観測対象のT以外のサンプルから、Tのサンプルを予測できるような重みとして得られたものになります。

また、これらの重みを得る際にL2(ridge)正則化を用いる事も可能となっているそうです。

 

さて、SDIDの重み付きの誤差を見てDoubly Robust Estimator(DR)を思い出した人もいるかと思います。

実はこのSDIDもDRと同様にdouble robustnessと呼ばれるメリットを享受する事が可能です。つまり、回帰モデルか重みのどちらか一方のみが間違っているような場合でも因果効果に関しては一致性が担保されます。

 

SDIDの実験

この論文ではSCの紹介論文で使われたデータを利用してSDIDの性能を検証しています。

SCおよびSDIDは”介入を受けたサンプルの介入を受けなかった結果を正しく予測できるか?”が非常に重要となります。

よって、ここでは介入を受けてない期間のデータのみを使い、その最後の期間をTとし、任意の観測対象をNとして扱います。

こうする事で、実際に予測する対象が介入を受けない対象となるために、実際の正解データを得る事が可能になります。

この図がSCとSDIDの予測誤差(RMSE)をプロットした図です。

点線が傾きが1の線なので、線よりも上側にある点はSCの方が誤差が大きいという事になります。

これを見るとほぼ全ての点が線より上側にあるため、SDIDの性能がかなり高いであろう事がわかります。

また、このデータではカリフォルニア州が介入(禁煙キャンペーン)を受ける州で、青くハイライトされています。よって効果の推定において重要になるカリフォルニア州においても誤差が小さくなる事がわかります。

 

また、複数の年にまたがって予測と実際の値をプロットした図も乗っています。

黒い線が実際の値で、赤の点線がSDID、青い点線がSC、水色の点線がDIDです。

これを見てもやはりSDIDが良さそうな結果となっています。

 

感想とか

試す事自体はかなり簡単な手法なので、とりあえず使ってみようと思いました。

また、共編量が高次元の設定であれば、回帰の部分でDouble Machine Learningを導入する事が可能な気もしたのですがどうなのでしょうか?

]]>
東京大学駒場祭学術企画『経済学研究の最前線』でお話したこと ~アドテク,経済学 , 機械学習,因果推論~ https://cyberagent.ai/blog/research/causal_inference/10254/ Fri, 28 Dec 2018 08:12:56 +0000 https://cyberagent.ai/research/?p=1341 こんにちは! 新規事業開発室の2018年度新卒の金子です.

11月24日(土)〜11月25日(日)に第69回駒場祭の学術企画 『経済学研究の最前線』でサイバーエージェントとして出張講義をさせていただきました.

 『経済学研究の最前線』という企画はUTEAという学生団体様の学術企画で, 高校生~学部1,2年生向けに院生が中心となって研究の紹介をするという企画だったのですが, 社会人代表としてサイバーエージェントにおける経済学活用例を紹介させていただきました.

発表資料は以下になります.

内容

近年GoogleやFacebookなどの海外のTech企業で経済学系の専門職の採用が盛んになっているという導入から始まり, 因果と相関の違い(因果推論の話), 現在のネット広告の仕組みについて話してから, Off-Policy EvaluationとAAAI 2019に採択された産学連携研究について軽く触れるという流れになっています.

特に後半のPolicy Evaluationの話は, 以前のリサーチブログの下記の記事が参考になると思います.

バンディットアルゴリズムの評価と因果推論

採択された論文についてのアナウンスは以下のpostです.

他の発表者の方が因果推論の話を別の切り口から発表をしてくださるなど非常にやりやすかったのですが, 25分の発表時間にまとめきるのは中々に大変でした… 発表後に質問に来てくださる方がいてくださって大変ありがたかったです.

頂いた質問

Q : スライド内のAIの性能差ってどこから来るんですか?
A : 例えばですが,使用する変数や機械学習の手法などによって変わってきます

Q : Off-Policy Evaluationの部分のどこで因果推論を使ってるのかわかりづらかったのでもう少し詳しく教えてほしいです
A : ものすごくざっくり言うと, 傾向スコアという「数々の変数(スライド内の例だと例えばosや時刻など)を条件つけた時に, 処置が割り当てられる確率」を用いて, ランダムに割り当てられていない状態で得られている旧/新システムの結果の差を上手く補正するということをやっています

Q : なんで経済学系の人を積極的に雇ってるtech系企業が日本だとサイバーだけなんですか?
A : 正直よくわかってないです, これから状況は変わっていくかもしれません…

資料を読んでくださった高校生 ~ 学部1,2年生への勝手な願望

高校生 ~ 学部1,2年生向けという内容で発表させていただいて,スライドの最後の方に「こんな感じのことが伝わればいいな」というのをまとめていたのですが, 特に「より大きな因果効果が得られる選択肢はなにか?」の部分についてもうちょっと補足したいと思います.
今回のスライドで触れた機械学習 + 経済学(因果推論)で「正しくAIの効果を推定する」という話は, 多分今後数年でネタが彫り尽くされてしまうと思います. とはいえ因果推論が賞味期限切れになるかと言われればおそらくそんなことはなく, 「次に何が研究されるだろうか?」ということを考えると因果効果が最も高い選択肢を反実仮想的に選ぶという話になるんじゃないかと思います. 最も効果の高い広告画像を各個人ごとに選べれば, あるいは作っていければ… みたいなことができればかなり夢のある話なんじゃないでしょうか? (映画『マイノリティ・リポート』では屋外における個人へのターゲティング広告の描写などがありました. あれはディストピアを描いたものでしたが…)
若干話がそれましたが, 機械学習 + 経済学という文脈で今回紹介したような研究がされているということ, そしてそういった形の研究を自分もしてみたいと資料を読んで思って頂けると幸いだなと思っています.

おわりに

今回の企画を行ってくださったUTEAの運営の学生の方々には貴重な機会を頂いて感謝しています. また, 高校生~学部1,2年生だけでなく, 上のスライドを通じて経済学を学んでいる学生がサイバーエージェントで経済学使ってこんな面白いことをやってるんだな, と伝われば嬉しいです!

]]>
論文紹介:The Selective Labels Problem: Evaluating Algorithmic Predictions in the Presence of Unobservables https://cyberagent.ai/blog/research/causal_inference/835/ Mon, 29 Oct 2018 01:28:30 +0000 https://cyberagent.ai/research/?p=835
今回はちょっと変わった機械学習の評価方法を提案している論文の紹介です。
The Selective Labels Problem: Evaluating Algorithmic Predictions in the Presence of Unobservablesという論文で、2017年のKDDにて発表された物です。

人間の意思決定の結果を元のデータとして機械学習でより良い意思決定を行いたい場合に直面する問題を定義し、その中でより適正な評価方法を提案しているといった内容です。
AILabで行なっている論文読み会で発表した際の資料も参照してもらえればと。

意思決定ログの問題点

保釈の意思決定

この論文の中では裁判における保釈の意思決定をメインに取り扱っています。
判事は自分の担当する被告に対して保釈を許可するか否かを意思決定します(t = 1 or 0)。被告は保釈されると実社会に戻り、普通の生活をするか再び犯罪に手を染めるかを決定します(Y = 1 or 0)。保釈されなかった場合には収容所に収監されます(Y = NA)。
保釈を認めて期間中に再犯を起こされてしまうと社会的なコストが発生してしまうために、保釈した人が再犯するという状態はなるべく避けたいと判事は考えます。しかし誰彼構わず保釈を拒否するわけにも行きません。なぜなら収容所の運営コストは保釈されない被告の数が増えると増加してしまうからです。

この事から、判事はなるべく再犯しそうな被告のみに対し保釈を拒否し、再犯しなさそうな場合には積極的に保釈を認めたいというインセンティブがある事になります。そして判事はそれぞれ自分が担当する被告について保釈した場合の再犯を起こす確率を予測し、それに基づいて意思決定を行います。このように意思決定のルールが整っている場合、予測問題を機械学習に入れ替えて保釈の意思決定を行う事は応用上良くある発想であるように思えます。

よくある二つの問題点

しかし、人間の意思決定データを入れ替えるような機械学習の応用は中々上手くいかないという事は多くの実務家の認識として存在するのではないでしょうか?

この論文ではその理由として2つの問題点に着目しています。

  1. Unobserved
    これは人には利用できるが機械学習のモデルをつくるときには利用出来ない特徴量が存在しているという問題です。例えば判事は被告の法廷審問に参加する被告の家族の存在や被告自身の法廷審問時における態度などを観測してそれを元に再犯の確率を予測する事ができます。(家族が参加すると再犯しにくかったりする)しかし、これらの記録は公式には残らないので学習データには含まれません。

  2. Selective Labels
    これは再犯するか否かというラベルが、判事が保釈を許可した場合に限って観測されるという問題です。判事は再犯しにくいと予測した被告を保釈するので、ラベルのついた学習データとしては再犯しにくい被告のデータばかりが集まるという事になります。

これらの問題はどちらか一方が存在する場合にはそれぞれ対処の方法が知られています。
Unobservedに関しては機械学習においては無視して学習をそのまま行なえば問題ありません。特徴量が不足する事により幾らか精度が下がってしまいますが、観測できなかった特徴量と相関の強い特徴量が学習データに含まれて入れば欠損した特徴の効果も幾らか含んで学習してくれます。
Selective Labeslの問題では因果推論のアイデアを応用する事で幾らか問題が解決できる事が知られています。例えば保釈されるか否かを分類問題で解き、その結果得られる予測確率でサンプルの重みをつけて再犯確率の予測を行うといった方法が考えられます。

組み合わせによる問題

しかし、これらの問題が同時に存在する場合には新たな問題が浮上します。
法廷審問に家族が参加するという特徴は、保釈後に被告が家族からの監視を受けて再犯しにくくなるという傾向があるために再犯率が下がる事が判事には知られています。そして被告の年齢が若い場合には家族が参加する確率が非常に高いという事も知られています。

この場合、多くの判事はこの特徴を踏まえて若くて家族が法廷審問に参加する被告を多く保釈します。一方で若いが家族が法廷審問に参加しなかった被告は中々保釈されません。このようなプロセスから学習データが生まれている場合、学習データでラベルが観測される若い被告の大半は家族が法廷審問に参加したものになり、ラベルが観測されない若い被告の大半は家族が法廷審問に参加しなかった者になります。

問題なのは機械学習のモデルにとっては家族の参加は観測できない特徴になっているという事です。これによりこの学習データで機械学習のモデルは若い被告は再犯率が低いといった相関関係を学習します。しかし実際にモデルをデプロイした際には家族が参加した場合もしなかった場合に対しても予測を行わなければならないため、被告が若い場合には誤差が大きくなってしまいます。

つまり、学習データでは「若い=再犯率が低い」と学習する事が精度を改善する一方で、予測したいデータでは精度の改善には繋がらないという結果になってしまいます。この傾向が存在する場合、いくらCross-Validation等を利用して学習データの中で比較して精度が優っていたとしても実際の予測では性能が劣化して比較対象よりも精度が劣っているかもしれないという事がわかります。

提案されている評価方法

前提条件の確認

さて、この論文ではこのような状況の時に三つの条件を満たせればより良い評価ができるという事を説明しています。
* 複数の意思決定者(判事)から学習データが発生している事
* それぞれの意思決定者(判事)は案件(裁判)に対してランダムに選択されている事
* 意思決定者は結果を予測しながら意思決定を行い、意思決定の境界線がそれぞれ異なる事(同じ50%の再犯率を予測した時に保釈を許可する判事もいれば許可しない判事もいる状態)

保釈の意思決定の例ではこのような条件を満たしています。しかし、社会の仕組みの中でこのような条件を満たすものはなかなか存在しない気がします。

ARとFRによる評価

評価自体も一般的に分類問題で用いられるAUCやloglossではなく、Failure Rate(FR)とAcceptance Rate(AR)というものを用います。ARとは保釈する割合の事をさします。例えばある判事が1000人の被告のうち700人の被告に対して保釈を認める場合にはARは70%となります。FRは被告の数に対して再犯が発生した割合の事をさします。例えばある判事が1000人のうち700人の被告に対して保釈を認め、そのうち100人が再犯を行なった場合FRは10%となります。

ARとFRを利用した評価はARを固定した状態で、FRを比較するという形で行われます。ARは保釈の数を示すので、収容所の社会的コストを表します。よって、ARを固定して保釈しないコストを同一にした状態で、FRをみる事でどれだけの再犯を許してしまったのかを比較する事が出来るわけです。

いくつかのARの値でFRをみる事で、AR-FR間の曲線を描く事が出来ます。モデル間や人の予測値でこのカーブを描き、比較する事でモデルの比較が可能になるというのがこの論文における基本的な評価方法です。この記事の中ではAR-FR間の曲線の事をAR-FRカーブと呼びます。

このカーブはイメージとしては以下のようなものになります。例えば黒のカーブが人の意思決定のカーブで、黒のカーブが機械学習モデルによるものであれば、同じARを見た時には機械学習モデルの方がFRが低いという事になり、機械学習を利用した意思決定がより良いという事がわかります。

AR-FRカーブの描き方(Contraction Technique)

人の意思決定についてこのAR-FRカーブを描く事は非常に簡単です。想定している条件から、それぞれの判事が別々のARを持っているので、ARをそれぞれの判事のデータで集計してビン化してその中でFRを算出するだけでカーブを描く事ができます。

一方で機械学習のモデルでこのカーブを描く事は少し工夫が必要となります。この論文では別のデータで学習済みのモデル(B)がすでに手元にあるという状況を想定しています。

例えばAR = 60%の時のFRを算出したいとします。
1. まずは一番ARが高い意思決定者qのデータを持って来ます(\(AR_q\) = 90%)。サンプル数はNとします。
2. このデータに対してモデルBで再犯確率の予測値を算出します。
3. 実際にデータ上で保釈されていない被告のデータを捨てます。
4. さらに評価したいAR = 60%と同じになるまで予測された再犯確率の高いデータから捨てます。
5. 最後に残ったデータの中で再犯の数をカウントしてNで割ってFRを求めます。
これがあるAR = 60%を指定された時の機械学習のFRということになります。
これを各ARの値で算出する事でAR-FRのカーブを描く事ができます。
この方法をContraction Techniqueと命名しています。

少し怪しい部分

一番高いARを持つ意思決定者qのデータに対して予測値を出し、そのデータを絞るだけで何故FRの評価が出来てしまうのでしょうか?これはシンプルに意思決定者が各案件にランダムに選択されている為にデータの性質が同じである事が期待できるという点に基づいています。

このことから察しの良い方は「評価したいARをもつ意思決定者のデータと、ARが一番高い意思決定者のデータの質が実際には異なる場合には評価の質が下がるのでは?」という点が想定できると思います。これは例えばサンプル数が少ない場合などに想定されます。また、最初にARが高い意思決定者の決定をそのまま受け入れてデータを捨てる部分に関しては、モデルの純粋な評価では無くなってしまっているという点ではいささか不自然さを感じる部分かもしれません。

これらの点に関しては機械学習の予測値が実際の意思決定と食い違う場合にはFRの推定値の質が低下することが実験で示されています。(後述)

シミュレーションによる実験

実験の設計

では論文の中の実験内容について解説していきます。まずはシミュレーションデータでの実験です。
生成するデータは以下のような設定となっています。
裁判官の数:M = 100
裁判官一人当たりの裁判の数:500
裁判の数:N = 50,000
特徴量:X
裁判官のみに使える特徴量:Z
機械学習も裁判官も使えない特徴量:W
X,Z,Wはそれぞれ 平均0 分散1の正規分布から生成
裁判官毎のAR:r
rは[0.1 – 0.9]の間で一様分布から生成してラウンドを取る

Y(再犯するか否か)の確率を計算する
$$P(Y = 0|X,Z,W) = \frac{1}{1 + \exp{-(\beta_X X + \beta_Z Z + \beta_W W)}}$$
確率が0.5以上であれば再犯したという設定にし、それ以外は再犯しないとする。
$$P(Y = 0|X,Z,W) > 0.5 \ then \ Y = 1\ else\ Y=0$$
このとき\(\beta_X = \beta_Z = 1\)で\(\beta_W = 0.2\)とする。

T(保釈するか否か)の作成は以下の様に行う
$$P(T = 0|X,Z,W) = \frac{1}{1 + \exp{-(\beta_X X + \beta_Z Z)}} + \epsilon$$
\(\epsilon\)は意思決定のノイズを表し、平均0分散0.1の正規分布から生成される。
各裁判官はそれぞれの持つr以下の\(P(T = 0|X,Z,W)\)を得た場合には保釈を拒否し(T = 0)、それ以外の場合には保釈を許可する(T = 1)。

この結果特徴X,Z,Wを持った裁判50000件に対して、ランダムに振られた裁判官・保釈されたか否か(T)・保釈すると再犯するか否か(Y)が全て観測されたデータが手に入ります。

モデルの学習

作成したデータセットをランダムに半分に分割し、片方を学習データとします。
学習データでは実際の状況を想定して保釈されたデータのみを残した状態で再犯の予測問題を学習します。実験の中ではロジスティック回帰が用いられています。

MLと人間のAR-FRカーブを描く

テストデータにおいて各裁判官毎にデータ上のARを算出して小数点1桁以下を切り、その値でグループ化してFRを集計します。これはARが似ている裁判官のデータを集めてあたかも一人の裁判からそれらのデータが生まれたかの様に扱う事と同じ操作です。これにより、人のAR-FRカーブを描くことができます。機械学習のカーブはこのグループ化されたデータに対して前述のプロセスを実行します。

結果人の意思決定と機械学習による意思決定のAR-FRカーブを描く事が出来ました。以下は実験の結果として得られたカーブとなっています。Human Evaluationが人間の意思決定で、Contractionが提案手法による機械学習の評価となっています。

比較対象のカーブを描く

この論文では比較対象としてTrue Evaluation, Labeled Outcome, Propensity Scoreの三つが存在します。
True EvaluationはモデルBによる予測値をテストデータの全てのサンプルに対して算出し、ARに応じて保釈の意思決定を上書きし、FRを計算するというものです。事前に振られている裁判官の保釈の意思決定を無視して機械学習による意思決定の評価をしているので、本番にこのモデルを投入した時にどんな評価を得られるかを示す値になっています。よって基本的にはこの評価とより近い評価を得られる方法が望ましいという事になります。
しかしこれは保釈されなかった被告に関しては本来再犯するかは観測できないため、シミュレーション実験上でのみ比較できる対象となります。

Labeled Outcomeはテストデータの裁判官によって保釈されている全てのデータに対してモデルBによる予測値を算出し、ARのグループ毎に下からAR%のサンプルで再犯が観測できたとしてFRを算出するといった方法です。元々1000人の被告に対して700人保釈するAR=70%のデータがある場合、その700人に対して再犯確率の予測値を算出して確率の低い490人を保釈したとしてその中で再犯数を集計します。結果70人が再犯していたとすると、70/700 = 10%がMLのFRという事になります。
これはもっともナイーブな評価方法ですが、実務的にはよく選択される方法な気がしています。

Propensity Scoreは保釈される確率をロジスティック回帰などで学習し、FRの算出の際に予測値の逆数をサンプルの重みとして使うといった事を行います。これは因果推論のアイデアを応用した場合の評価方法ですが、今回はunobservedの問題が存在するために上手く機能しない事が想定されています。

実験結果

AR-FRカーブの比較

以下が論文内で示されたシミュレーションデータにおける実験の結果です。
横軸がARで、縦軸がFRとなっています。

Human Evaluationは評価としての比較対象ではない事に注意してください。

実験の結果としてはTrue Evaluationに対してContractionがLabeled Outcome, Propensity Scoreよりも非常に近いという状態になっており、シミュレーション上はこの評価方法がベターである事を示しています。

また、比較している評価方法の場合、カーブがHuman Evaluationよりも下回るために人間の意思決定より機械学習を利用した意思決定の方が質が高いという結果をオフラインの検証で示す事になりますが、Contractionで評価を行なった場合にはその逆の結論を得る事になります。True EvaluationはHuman Evaluationよりも上側のカーブとなっているため、本番適応した際の機械学習の評価は人間の評価よりも低いという事になるため、Contractionによる評価がより適正であると言えるでしょう。

意思決定者しか使えない特徴の影響

家族の法廷審問への参加などの、意思決定者にのみ利用できる特徴量の影響がより大きくなった時に、それぞれの評価はどのように変化するのでしょうか?これを示しているのがこちらのグラフになります。

元々の値が1なので、右に行く毎に2倍、3倍となっていきます。縦軸はTrue Evaluationとの誤差をMAEで算出したものになっているので、下にあるほど誤差が少ない事を示しています。
比較対象は意思決定しゃにのみ利用できる特徴量の影響が大きくなる毎に誤差も大きくなっているのがわかります。先のグラフで比較対象が楽観的な方向性に誤差を持つ事がわかっているので、これはおそらく機械学習の意思決定が人間に圧倒的に勝るだろうという方向に誤差が大きくなっていると考えられます。一方でContractionは誤差が微増するものの、この変化に対しては頑健な性質を見せています。

ARが最も高い意思決定者(q)のデータの質による影響

ARが最も高い意思決定者のデータの質が悪い場合には推定結果の質も悪くなりそうだという話に対する実験結果が論文内では示されています。

左の図は\(AR_q\)が横軸にとってあり、縦軸にContractionのTrue Evaluationに対する誤差をとったものになっています。これは\(AR_q\)が低くなっていった場合にContractionの誤差がどう変化するかを見るものとなっています。ここでは\(AR_q\)が下がると誤差が大きく上昇することが観測されています。

中央の図はARが最も高い意思決定者のデータで保釈されないような被告が機械学習のモデルで実際に保釈されないような意思決定になるか?という一致率(Agreement Rate)を横軸にとったものです。例えば裁判官qが1000人内100人に保釈を認めないとします。この時1000人に対して機械学習で再犯確率の予測値を算出し、その上位100人を見たときに、裁判官が保釈しなかった100人と一致した人数が30人の場合には一致率が30%という事になります。
この一致率も低下するとやはり評価の誤差が大きくなることが観測されています。

右の図は裁判官qのデータのサイズが誤差に与える影響を表しています。これはデータのサイズが大きくなるほど誤差が減少する事が観測されています。

この様に、AR-FRカーブによる評価の質は最もARが高い意思決定者の性質によって大きく左右されるということが示されています。

実データでの実験

この論文では三つの実データで評価を行なっています。

一つは今までと同様保釈の意思決定についてです。

もう一つは医師による処置の意思決定についてです。これは咳などの症状を訴える患者に対して、医師が服用期間が短くて効果の弱い処置を与えるか服用期間が長くて効果の強い処置を与えるかという選択を扱ったものです。15日以内に症状の再発が起きるか否かが予測したいラベルとなります。

三つ目は法人向けの保険の販売で、保険商品を作れるマネージャーが商品作成の依頼をもらった時にその商品を作るか否かという意思決定を扱います。商品を作った結果黒字になったか否かが予測したいラベルとなります。

この記事では細かく取り扱いませんが、意思決定者毎に与えられている案件の質が違うという可能性は統計的な検定で検証されています。それぞれの実験結果は以下のようになっています。


これらの実験の結果全てのケースにおいてContractionとLabeled Outcomeの結論が食い違う事がわかっています。つまり、手に入ったデータセットの背景を考慮せずにモデルの評価をナイーブに行うことは機械学習の評価を過剰に高める事になり、本番において大きなしっぺ返しをもらう事を示唆しています。

まとめと感想

内容としては「人の意思決定ログから機械学習を利用してよりベターな意思決定ルールを作る」という話に置いて重要になるオフライン評価法方法を提案したものでした。

意思決定者が案件に対してランダムにアサインされるなど、ビジネス上のケースでは中々達成されそうにない状況を仮定していたりするのですが、非常に面白い評価方法であるとともに根底で捉えている問題に関しては非常に本質的な問題を捉えているように思えました。

]]>
経済学の新たな方向性—EC’18 (19th ACM Conference on Economics and Computation)参加報告— https://cyberagent.ai/blog/research/10246/ Mon, 06 Aug 2018 06:00:36 +0000 https://cyberagent.ai/research/?p=280 AILabの森脇です。

6月18〜22日にコーネル大学(ニューヨーク州イサカ)で開催された、経済学とコンピュータサイエンスの学際研究に関するEC’18というカンファレンスに参加してきました。

このECというタイトルは、1999年の初回から2013年までは電子商取引(E-Commerce)、2014年以降は経済学と計算(Economics and Compuation)の略とされています。もともとACMの電子商取引分野のグループ(SIGecom)が開催していたことから自然とE-Commerceのカンファレンスとしていたところ、SIGecomが公表しているように、経済学と計算機科学の学際的な研究を呼び込むことを目的として名称変更を行ったようです。名前は変わったものの初回から最新の2018年まで、一貫してオークションやメカニズムデザインの理論、インターネットを通した経済活動に焦点を当てた論文が多く採択されています。

カンファレンスはメインの発表が3日間にわたり20セッション、1セッションで3〜4本発表というスタイルで進行していました。全体を聞く中でデジタルエコノミーが経済学の新たな実験場として急速に浮かび上がっているという印象を受けました。以下では印象深かった発表をいくつか取り上げつつ今後の経済学について少し考えたいと思います。

発表の様子

最初に取り上げたいのは自然実験を利用した2つの論文です。まず、Uber社のAlice LuらによるSurge Pricing Moves Uber’s Driver-Partners.は、Uberがドライバーを需要の少ない地域から需要が多い地域に移動させるために地域別の料金を可視化しているサージヒートマップというUIが、実際にUberドライバーの行動変化に結びついているかを分析しています。この論文の特徴は、iOSユーザーだけサージヒートマップが見えなくなるというシステム障害というイベントを利用して、擬似的な実験(自然実験)を用いている点です。本来ネガティブなはずの障害を論文のネタにしてしまう発想は見事。また、ドライバーの効用最大化行動を現在いる地点からどの方向に行くかという選択としてモデル化している点も、空間データを経済学に適応している点で参考になりました。

ホテルなどのレビューサイトTrip Advisorのデータを用いたHollenbeckらのAdvertising Strategy in the Presence of Reviews: An Empirical Analysis.も自然実験を利用した論文です。ユーザーはレビューサイト上の「星」の数からホテルの評価を知りますが、数字の丸めの関係で、ほとんど差がない3.49点のホテルと3.50点のホテルが、それぞれ星3つと星4つになってしまいます。いわゆるRDD (Regression Discontinuity Design)の手法ですが、x.5点付近のホテルは星の数が「ランダム」に決められことを利用して、評価の良いホテルと悪いホテルのマーケティング戦略の違いを分析しています。この研究では、Trip Advisorからクロールしてきたウェブデータと、広告費に関するデータをマッチングしているのですが、その際、fuzzy string matchingでプログラマティックにホテルを紐づけたあとAmazon Mechanical Turkを用いてクラウドワーカーたちにそのマッチングがうまくいっているかどうかチェックをさせています。MTurkは研究ツールとしてEC’18を通して随所で活用されており、デジタル・エコノミーの台頭が人海戦術を誘発するというアイロニーを肌で感じることができました。

明示的に実験が行われた論文としては、ハーバード・ビジネス・スクールの二人組による The Costs of Entering through Tying: Experimental Evidence.があります。下のスナップショットをご覧いただくとわかりますが、Googleでレストランなどを検索すると、レストランレビューサイトなどのリンクの表示の上に、Google独自のレビューサイト、Google Localの結果が囲みで示されます。これは、圧倒的な競争力を持つ検索エンジンGoogle Searchに、Google Localという別のコンテンツをくっつけて売る、いわゆる抱合せ商法(tying)です。

「渋谷 レストラン」の検索結果。上の囲みにGoogle Localの結果が表示されている

抱き合わせ商法が消費者にとってどのような意味を持つのか分析するために、Kimらは以下のような実験をしました。まず、MTurkで集めてきた15,000人の被験者に、「ある場所で良さげなレストランを検索している」という設定で、スナップショットのようなGoogleの検索結果画面をみせます。このとき、被験者が画面のどこをクリックしたかを記録します。

実はこの検索結果画面は創作されたもので、実際のものと少し違います。何が違うかというと、被験者毎にページトップの囲みの中のコンテンツが、Google Localのレビューだったり、YelpやTrip Advisorなどの外部サイトから抽出されたレビューだったりします。もし、囲みの中をクリックする確率が、中身のコンテンツに関係なく一定であれば、抱き合わせ商法は特にユーザーにとって影響がないとみなせます。反対に、囲みの中身によってクリックする確率が変わる場合、抱き合わせ商法がユーザー経験的に何らかの影響があるといえます。

この研究の面白いところは、Googleを題材にしているのにGoogle社の協力を得ていないということです。彼らが勝手にGoogleの画面を制作し、改変を加え、必ずしもGoogleユーザーではない、MTurkのワーカーたち相手に実験を行っているのです。この、第三者が協力しない研究方式には結果のバイアスの存在を容易に棄却できるという利点があります。欠点としては、実験環境の整備のコストや、実際の環境との相違が挙げられます。

敷地内に吊り橋がある野性味溢れるコーネルキャンパス

テック企業をはじめとして企業における実験が普及してきたことを反映して、EC’18では実験そのものに関する研究も発表されていました。AB Testing.は、Microsoft社の実験プラットフォームExPに蓄積された大量の実験結果から、効果的な実験デザインのあり方について議論しています。この論文では、企業が複数の効果が不明なイノベーション(例えば、サーチエンジンBingの新たなアルゴリズム)を実験によって選別するというテック企業らしい課題設定のもと、イノベーションの真の効果を実験によって測定する場合に、どれくらいの数のイノベーションを実験すべきか、また、実験に用いるサンプルサイズをどれくらいにすべきかという検討をしています。

サンプルサイズが大きいほど推定誤差は小さくなるので、「良い」イノベーションを見極める力が高くなるのですが、たくさんのユーザーを実験に動員するのでコストが掛かり、いろんなイノベーションを試すことが不可能になります。逆に、サンプルサイズが小さい場合は、いろんなイノベーションを試行できますが、推定誤差が大きくなり、ちょっとした改善効果は見逃されることになります。

結論は、イノベーションはファットテール、つまり効果がとてもよいイノベーションがけっこうあるので、思いついたイノベーションは小さいサンプルサイズでも片っ端から実験したほうがいいということです。イノベーションの真の改善効果が高ければ、多少誤差があっても十分識別できるというわけです。また、現実的なビジネスの現場のことを考えても、利益を生み出すのは少数の効果の高いイノベーションであるため、ちょっとした改善を模索するよりはどんどん新しいイノベーションを試して大きな成果を探すほうがよいということもあります。

毎日用意される朝食。発表前から参加者が和気藹々と議論している姿が見られました

この、「実験のコスト」や「推定誤差」は、現実的に大きな問題で、小さいサンプルサイズで小さな推定誤差が得られれば、というのが現場のデータ分析者の共通の想いだと思います。A Personalized BDM Mechanism for Efficient Market Intervention Experiments.(Arrieta-Ibarra-Ugander, 2018)は、BDMメカニズムという実験手法の拡張によって、より少ないコストで小さい推定誤差を達成するパーソナライズドBDMを提案しています。

BDMメカニズムというのは、1960年代に提案された人々の「効用」を計測する実験手法です(Becker et al., 1964)。まず、被験者に宝くじのようなくじを与えます。その上で、実験者は被験者に、くじを買い戻したいので最低これなら売ってもいいという価格(最低価格)を提示するよう求めます。最低価格が示されたら実験者はくじに対する入札金額を提示します。入札金額は適当な確率分布からランダムに抽出されます。金額が最低価格より高ければくじは買い戻され、被験者は入札金額をもらえます。最低価格が入札より低ければ買い戻しは起きず、被験者はくじを引きます。被験者は、くじと期待効用の上で「等価」になる金額を最低価格とすることが最善となるので、実験によってくじの被験者にとっての等価価値がわかることになります。

Arrieta-IbarraらはこのBDMメカニズムのくじの買い戻し入札の部分に注目し、改良を加えました。被験者の提示する最低価格は、くじの条件(当たった場合の金額や当たりくじの割合)だけでなく被験者の性格にも依存するはずです。入札金額を決定する確率分布を被験者の性格などから推定して確率分布のパラメータを被験者ごとに変更すること(=パーソナライズ)ができれば、できる限り安い金額で効率的に買い戻しができます。また、こうすることで買い戻しを受けるか受けないかの確率が調整され、推定誤差も縮小できます。

くじの買い戻し自体は特に経済的意味はありませんが、例えば、開発経済学の文脈ではリアルな実験の場面でBDMが使われています。Berry et al. (2018)は、くじの買い戻しの代わりに飲料水の濾過器について、被験者に支払ってもいい最高価格を提示させ、ランダムに濾過器の価格を選び、価格が最高価格を下回ればその価格で購入できるという実験を行なっています。こうした文脈では、被験者の提示する最高価格付近で価格が選択されることはコストの抑制に働きます(濾過器の本来の価格は原則として被験者の最高価格より高いため差額が実験のコストになる)。

さて、元論文に戻ります。論文では、MTurk上でワーカーにメールの文章からスパムを見抜くというタスクを与え、正解ごとに報酬を与えるという環境下で、通常は設定されている時間制限をなくす時間無制限チケットをオファーします。この時、ワーカーにこのチケットに払ってもいい最高価格を提示させます。最高価格が提示されたら、「時間無制限チケット」の価格がランダムに決定されます。このとき、チケットの価格の確率分布は、ワーカーの属性に応じて個別に設定されています。この実験の結果、著者らはパーソナライズドBDMはこれまでのBDMに比べコスト面でも推定誤差の面でも改善が見られたとしています。論文では、MTurk上での実験にとどまっていますが、実プロダクトでもさまざまな応用が考えられる研究です。

これまで経済学者の主な実験場は開発経済や教育現場でしたが、こうした分野の知見をデジタル経済の実験に活用する事例が今後増えていくでしょう。

参加者みんなでディナー

このほか、不動産価格とAirbnbの関係を分析したThe Sharing Economy and Housing Affordability: Evidence from Airbnb.(Barron et al., 2018)は、Googleトレンドを操作変数に利用した現代らしい研究として印象深かったです。

また、シェアリングサービスでほぼ必須となっている「レビュー」を題材にしたReputation in the Long-Run.も、とても興味深い論文です。オークションや中古品売買のようなCtoCのプラットフォームをよく利用する方は実感があるかもしれませんが、出品者や購入者を評価するレビューは、5段階評価のうちほとんどが5であるというプラットフォームは珍しくなく、星5つであることは当たり前で、4や3がつくユーザーは警戒すべきというのが利用者の一般的な見解になっているプラットフォームもあるようです。

この論文では、インターネット上で労働契約を結べるプラットフォームのデータを用いて、なぜ星が偏っているかを分析しています。著者らは、レビュアーである雇用主が、契約したワーカーからのなんらかの仕返しを受けることを警戒して、あえて実際の仕事の出来栄えより高い評価をしているという仮説をもとにモデルを構築しました。そして、実データを用いて、「真の評価」と「実際の評価」の差をみることで、実態を伴わない星のインフレが起きていることを示しています。

その際、「真の評価」として非公開のレビューのデータを用いています。ワーカーも見ることができる公開のレビューでは高い評価をしていても、非公開のレビューではボロクソ書くという現象があるそうです。著者らの結論は、レビューのインフレのうち半分は実体上のサービスの改善ではなく雇用主の忖度によるインフレであるということです。

Statler Hotelのレストラン。クラシカルなアメリカンブレックファストが美味しかったです。

最後に、これらの論文を通して、自分なりに今後の経済学について考えたことをまとめておきます。

一つは、実験場としてのデジタル経済の価値です。様々なサービスが生み出されるなか、ユニークなデータが日々生まれており、モデル推定に適した自然実験を発見する余地は大きいです。さらに、MTurkなどクラウドソーシングを用いる実験によって、実験環境を作り出すことも可能です。人為的な実験には、外部妥当性など実験ゆえに超えなければならないハードルはありますが、十分実験の設定を吟味し、被験者の理解を確認した上で実施すれば有用なツールになりえます。批判に耐えうる実験ができれば、実験なしには得られないユニークな知見を得ることが可能です。

二つ目は、デジタル経済特有の現象を経済学モデルで評価することの面白さです。ウーバーのドライバーの行動を効用最大化問題として定式化したり、大量のABテストを生産関数としてモデル化したり、レビューを利益最大化行動として考えたりと、事象を解釈するためには、経済学のお家芸である効用最大化や利益最大化モデルに持っていくことが有用であると感じました。経済学のモデルはともすると強い仮定がおかれたり、観察不可能な変数が前提となっていたり、推定が難しかったり怪しかったりすることも多いのですが、事象を理解するという点では強力です。分野外の研究者から独善的と見られないようにうまく説明ができるようなモデルを立てていくと建設的な議論ができそうだなと思います。

三つ目は、大量のデータに対して常に研究にどう使えるのかという視点で考えていく必要があるということです。様々なオープンデータ、ウェブデータが眼前に広がっているにも関わらず、それを研究に使う人はごく僅かです。データがあってもそれを使いこなす技術と良いリサーチクエスチョンがないと論文は生まれません。GoogleトレンドをIVとして使うとか、レビューの星の数をRDDに使うという発想は目から鱗でした。なによりアメリカの一流大のファカルティがせっせとレビューサイトをクローリングしているという事実に勇気付けられました。

経済学は、歴史ある学問ですが、これまで様々な領域に手を伸ばしては一定の成功を見せてきた学問です。整備されたサーベイデータに収まらず、ウェブやテクノロジーの爆発的発展に呆然とするのではなく果敢についていきたいと思いました。

図書館の塔。登れます。

それにしてもコーネル大学はきれいなキャンパスでした。歴史ある重厚な建築群の中を散歩していると、ボストンのケンブリッジを歩いているような気分になりますが、キャンパスのある丘から見ると麓まで自然が広がっており、まるで避暑地に来た気分です。6月下旬は年中寒いニューヨーク州北部でもかなり過ごしやすく発表が終わったらなんとなくみんなで外に出て夕景色を眺めていました。とても楽しいカンファレンスでした。

みんなで眺めた夕焼け

引用文献

Lu, A., Frazier, P. I., & Kislev, O. (2018). Surge Pricing Moves Uber’s Driver-Partners.
Hollenbeck, B., Moorthy, S., & Proserpio, D. (2018). Advertising Strategy in the Presence of Reviews: An Empirical Analysis.
Kim, H., & Luca, M. (2018). The Costs of Entering through Tying: Experimental Evidence.
Azevedo, E. M., Deng, A., Olea, J. L. M., Rao, J., & Weyl, E. G. (2018). AB Testing, 2018, 56.
Becker, G. M., DeGroot, M. H., & Marschak, J. (1964). Measuring Utility by a Single-Response Sequential Method. Behavioral Science, 9(3), 226–232.
Arrieta-Ibarra, I., & Ugander, J. (2018). A Personalized BDM Mechanism for Efficient Market Intervention Experiments.
Berry, J., Fischer, G., & Guiteras, R. (2018). Eliciting and Utilizing Willingness-to-Pay: Evidence from Field Trials in Northern Ghana.
Barron, K., Kung, E., & Proserpio, D. (2018). The Sharing Economy and Housing Affordability: Evidence from Airbnb.
Filippas, A., Horton, J. J., & Golden, J. M. (2018). Reputation in the Long-Run.

]]>
バンディットアルゴリズムの評価と因果推論 https://cyberagent.ai/blog/research/causal_inference/199/ Fri, 13 Jul 2018 07:56:41 +0000 https://cyberagent.ai/research/?p=199 この1-2年でアドテクスタジオでもMulti-Arm-BanditやContextual-Banditといった単語がプロダクトとのMTGの中で飛び交うようになり、社内における応用例も徐々に増えてきました。

Banditそれ自体も非常に面白いのですが、個人的には「それをどの様に評価・比較するのか?」という問題が非常に面白いと考えています。

その大きな理由の一つは評価に因果推論の発想を用いる必要性が生じている事にあります。

今回は、Contextual-Banditの様なPolicyの評価方法について簡単なイントロを行えればと思います。

1. セットアップ

広告の画像をContextual-Banditで選択している様な状況を考えます。

すでに何らかの広告を見せる事が決まっているリクエスト(i)が来るたびに、そのリクエストを発生させたユーザーのcontext(X)が手に入り、それを元に報酬(r)であるクリックの予測を行い、Thompson Samplingを用いて候補セット(A)の中から表示する広告(a)を選択します。

結果ユーザーによるフィードバックが観測され、クリックしたか否かがわかります。
$$r_i \sim D_r(.|X_i, a_i)$$
この予測と選択の一連の流れを行う部分をPolicy(\(\pi\))と呼びます。
$$a_i = \pi(X_i)$$
教科書的にはtのフィードバックを利用してt+1で使われるPolicyを更新するという内容がよく出て来るのですが、実装の都合などでバッチで更新されるケースが実務的には多く、今回もその内容に乗っ取って話を進めます。

この時、手元に残っているログは以下の様なものになります。
$$\{X_i, r_i, a_i\}_{i=1}^N$$
リクエスト(i)毎にContext(X)と、選んだ広告画像(a)と、結果クリックされたか(r)が溜まっている状態です。
また、ログが取得できている期間ではPolicyは一つしかないものと考えます(\(\pi_0\))

 

2. 比較の話

さて、ここでPolicyに何かしらの改良を加えるアイデアを思いついたとします。ここで問題になるのは「どの様にして既存のPolicyとこの改良を加えたPolicyを比較するか?」という点です。(より良いPolicyは獲得しうる報酬(r)の合計がより大きい方だと考えます。)

この二つのPolicyを比較する為のGolden Standardな検証デザインは何か?ということを考えた場合、おそらく皆さんご存知の通りABテスト(RCT)という答えになるかと思います。つまり、未来におけるリクエストの半分をランダムに既存のPolicyに割り振り、残りの半分を新規のPolicyに割り振り、それぞれで獲得できたクリックの数を比較するといった方法です。

「RCT cartoon」の画像検索結果

しかし、この様なABテストを実施するためには実際に新規のPolicyを実装する必要がありますし、さらに結果的に大失敗と終わる可能性のあるアイデアにある程度のリクエスト数(ユーザー)を割り振らないといけません。また、もし思いついたアイデアが1つでは無く100個で有れば、検証のためのコストは非常に高くなってしまいます。

この様な社会科学でよくみられる様な「実験の実施コストが高い」という理由から、どうにかして手持ちのデータからRCTの結果を再現したいという要求が生まれることになります。

 

3. replay-method

過去のログに置いて新しいPolicyの評価を行うためには、まず実際に選択を行わせる必要があります。これは新Policy(\(\pi(X)\))に過去ログの\(X_i\)を入力してやれば得る事ができます。

$$a_{1,i} = \pi(X_i)$$

問題となるのはその評価を入手する事です。過去の選択(\(a_{0,i} = \pi_0(X_i) \))を実行した時の報酬(\(r_i\))は観測されていますが、\(a_{0,i}\)以外の選択を実行した時の報酬は観測されていません。(あるリクエストにおいて広告画像1を見せた結果の報酬は観測しているが、広告画像2を見せた結果の報酬は観測していないので。)

つまり、新Policyの報酬は既存のPolicyと同じ選択肢を選んだ時でしか観測されないわけです。よってそれをそのまま評価と考えると新Policyの評価は以下の様に算出されます。

$$V_{naiive}(\pi) = \frac{1}{N} \sum_{i=1}^N {r_i 1(a_{0,i} =a_{1,i})}$$

この方法は、もし既存のPolicyが選択肢をランダムに選んでいた場合には評価が正しいという事が分かっており、こちらの論文でreplay-methodとして提案されています。しかし、ランダムでは無い場合には既存のPolicyによって生じるサンプリングバイアスの影響を受ける為にこの評価方法はABテストの近似としては不満足なものとなってしまいます。

 

4. Direct method

次に簡単な方法は、予測モデルによって観測されなかった選択肢の報酬を予測してしまうDirect Methodと呼ばれる方法です。つまり、ある選択肢が選ばれたデータを学習データとして、その選択肢が選ばれなかったデータに対して予測を行う訳です。この辺りの論文での実験だとridge回帰によって予測を行ったりしています。そして、予測された報酬の平均をPolicyの評価として扱います。

$$\hat{r}_a(X)=E[r_a|X]\\
V_{DM}(\pi) = \frac{1}{N} \sum_{i=1}^N {\hat{r}(X_i, \pi(X_i))}
$$

こちらの方法は、機械学習の実務をやっている方には割と自然な発想な気がしますが、2つの問題点があります。

1つは\(\hat{r}(X, a)\)を表現するのに十分なデータが得る事が非常に難しいという点にあります。多くの場合報酬はユーザーの意思決定に依存するので、その意思決定を高い精度で近似出来ている必要が出て来るのですが、これは実際問題かなり難しいタスクになるでしょう。また、学習の元になっているデータもsampling biasを持つデータとなってしまっています。どちらもサンプルサイズの増加によって消える様な問題では無い為に、この評価方法もやはりABテストの近似としては不満足なものとなってしまいます。

 

5. Inversed Propensity Score

この様な問題において因果推論を扱う分析ではPropensity Score(\(p_a\))がよく用いられます。最初の方法と同様に既存と新規のPolicyの選択が同一になったサンプルだけを評価に用いますが、この時に既存のPolicyでその選択肢が選ばれる確率の逆数をsampling weightとして用います。

$$p_a = p(a|X_i) \\
V_{ips}(\pi) = \frac{1}{N} \sum_{i=1}^N {\frac{r_i 1(a_{0,i} =a_{1,i})}{p_a}}
$$

この時Propensity Scoreはlogistic regression等で推定することも出来ますし、Thompson Samplingを利用している場合ではサンプリングのプロセスを繰り返すことでその確率を直接得る事が出来ます。Offline Policy Evaluationの文献を見ていると後者の方法を用いている事が多い様に思えます。

この様なIPSと呼ばれる方法の問題点は、Propensity Scoreが非常に小さい時に評価に対して大きな影響を与える事になり、結果的に評価の推定値の分散を押し上げてしまう事にあります。しかしIPSはサンプルサイズが大きくなるとABテストの結果に一致していくというメリットもあります。

 

6. Doubly Robust

最後にIPSとDMを掛け合わせたdoubly robustを紹介します。(参照)

$$
V_{dr}(\pi) = \frac{1}{N} \sum_{i=1}^N {\frac{(r_a – \hat{r_a}(X_i))1(a_{0,i} =a_{1,i})}{p_a} +\hat{r}_{\pi(X_i)}(X_i)}
$$

第一項は過去のPolicyと新規のPolicyの選択が一致しない場合には0になってしまうため、その様な場合にはDMと同様の評価を行う様になっています。
一致した場合には報酬予測の誤差をIPSで重みを掛け、DMの評価にそれを足し合わせています。報酬予測の精度が高いと第一項が0に近付いていくので、報酬予測の精度が悪い時にはIPSを使うといった構造だと解釈することも可能です。

7. まとめ

改めて問題を整理して考えると、新Policyの評価が難しいのは評価が過去ログの全サンプルで入手することが出来ず、欠損が発生しているという構造上の問題から生じていました。そして、どの様なサンプルで欠損が起きるかが既存のPolicyに依存しているため、欠損がランダムではなく何かしらのメカニズムを元に起きているという事情ありました。

これらの事から新Policyの評価は欠損のある評価データからいかに、欠損のない評価を推定するか?という欠損データにおける因果推論の捉える課題と同様な状態である事が分かります。よって、Propenstiy ScoreやDoubly Robustの様な方法が使われているわけです。

今回紹介した方法の他にもMorerobust Doubly Robustの応用や、もう少し複雑なバンディット問題のオフライン評価の話などが最近の研究では取り扱われています。もし興味を持たれた方は調べてみると面白いと思います。

 

 

引用文献

  • Li, Lihong, et al. “Unbiased offline evaluation of contextual-bandit-based news article recommendation algorithms.” Proceedings of the fourth ACM international conference on Web search and data mining. ACM, 2011.
  • Dudík, Miroslav, John Langford, and Lihong Li. “Doubly robust policy evaluation and learning.” arXiv preprint arXiv:1103.4601 (2011).
]]>
“Uber vs. Taxi: A Driver’s Eye View” Angrist教授の講演を聞いて https://cyberagent.ai/blog/research/54/ Mon, 11 Jun 2018 09:14:10 +0000 https://cyberagent.ai/research/?p=54 AILabの森脇です。今回はMITのAngrist教授が、3日間の講義の最後に行った自著論文のプレゼンについて報告します。この論文でAngristらは、Uber社とのコラボレーションによってマクロ/労働経済学の古典的な問題にチャレンジしています。会場には講義の受講生をはじめとした学生に加え、錚々たる経済学者が出席していましたが、Angristの熱のこもったトークに皆引き込まれていました。

改めていうまでもないですが、アメリカではUber社に代表されるライドシェアサービスが広く普及しており、Angristらによるとボストンだけで2万人のUberドライバーがいるそうです。これはボストンのタクシー台数の10倍以上となっています。

ボストンでタクシー運転手になるためには、メダリオンと言われるライセンスを購入するか借りる必要があり、その費用は固定コストとして売上から控除されます。それに対してUberを利用すれば、固定コストはかかりませんが、Uber社に売上の20~25%を支払うことになります。これをUberフィーと言います。

理論的に考えると、たくさん運転したい人は固定コストを払って売上を全部回収したいと思うし、本業の合間にタクシーで稼ぎたい人は固定コストがかからないUberを使いたいと思うでしょう。実際、Angristらの分析でも、長く運転する人ほどタクシー方式を好むという結果が出ています。

さて、AngristらはUber社と組んで、Earnings Acceleratorという販促キャンペーンを打つことで、Uberドライバーの行動モデルを推定することにしました。これは、一時的にUberフィーを低くすることでUberドライバーの労働時間あたり賃金(賃金率)を高めるキャンペーンです。賃金率が1%上昇するときに労働時間がどれくらい増加するか(減少するか)をFrisch弾力性といってマクロや労働経済学で盛んに議論されていますが、実験によってこれを観察することができるわけです。

賃金や労働時間のデータなら世の中にいくらでもあるではないかという疑問があるかと思いますが、実際には正確に一人一人の労働者の時間あたり賃金と労働時間を入手するのは大変難しく、さらにその賃金率を研究者がコントロールできることはほとんどないといっていいでしょう。こうした実験が簡単にできるのもUberのようなサービスが出現した恩恵といえます。

さて、前置きはこれくらいにして、論文の結果を少しだけ解説します。AngristらはEarning Acceleratorをランダムに選択したドライバーにオファーし、その行動を分析することで、Frisch弾力性を1.2程度と推定しました。これは、10%の賃金率上昇に対して12%労働時間が増加するということを意味します。

この推定にあたってAngristらは2SLS(二段階最小二乗法)という手法を用いることで、推定のバイアスを避けています。\(Y_{it}\)を労働時間、\(D_{it}\)を賃金の変化、\(X\)をその他の変数、\(\eta\)を誤差項として、

$$Y_{it} = \alpha D_{it} + \beta X_{it} + \eta_{it}$$

というモデルを書いたときに、賃金変化\(D\)が外生的であれば問題はないのですが、キャンペーンに参加するかどうかはUberドライバーの判断によるため、キャンペーンへの参加と労働時間の変化という2つの意思決定に影響する別の見えない要因が存在すると\(\alpha\)がうまく推定できないことがわかっています。

そこで、Earinings Acceleratorキャンペーンに選ばれたかどうかというドライバーの意思決定と関係のない変数\(Z\)の助けを借りてこのモデルを推計することで真の\(\alpha\)に近い推定値を得ることができるのです。これは、賃金率が研究者によってコントロールされた環境でこそできることです。

論文は、Frisch弾力性の推定値を報告するとともに、Uberドライバーにオプションとしてタクシー方式の賃金体系を提供することで、タクシーとライドシェアサービスに対するドライバーの態度を分析しています。

この結果、Uberドライバーには多少有利な条件でもタクシー方式を避けるLease Aversionが存在する指摘しています。つまり、Uberドライバーは固定費用を払って売上を自分のものにするタクシー方式を好まないというのです。これは、行動経済学における損失回避行動として解釈できるとしています。事前に固定費を払うのは身軽さを好むUberドライバーにとって心理的に負担なのかもしれません。

論文自体も非常に面白いのですが、それ以上に、実験にあたっての準備や苦労が垣間見える話が面白かったです。例えば、Uberドライバーがキャンペーンの内容を理解せずオファーを無視してしまう可能性を考え、キャンペーンによってどのように収益が変化するかを示したシミュレーションを用意してメールやテキストメッセージ、アプリに配信し、Uberドライバーに理解を促したそうです(ドライバーの許可がないと分析にデータが使えないため、これはクリティカルな問題です)。また、オファーの条件は1週目より2週目の方がUberドライバーにとって渋い内容になっているのですが、これは予算の制約が背景にあるそうです。個人的にはUber社内でこのプロジェクトがどのように議論され、承諾されたのか気になります。

Angrist教授はこの異色のコラボレーションが面白かったようで、終始楽しそうに実験の過程を語っていました。

以上簡単になりましたが、概略を説明させていただきました。気になる方はぜひ本文を御覧ください。70ページ以上の論文を読む時間がない方は、VoxEUに著者による解説が短くまとまっているのでご参照ください。

]]>
Mastering ‘Metrics: Empirical Strategies for Policy Analysisへの参加報告 https://cyberagent.ai/blog/research/10244/ Wed, 06 Jun 2018 09:36:14 +0000 https://cyberagent.ai/research/?p=20 皆さん始めまして、AILabで計量経済学を利用した研究を行っている安井(@housecat442)と言います。

今回は5/21-23の間に東京大学政策評価研究教育センター(CREPE)様の主催で行われた、「Mastering ‘Metrics: Empirical Strategies for Policy Analysis」というセミナーへ参加させて頂きましたので、その報告が出来ればと思います。

 

今回のセミナーでいうPolicy Analysisとは、特定の政策に効果があったのかを検証する事であり、例えば「学校のクラスのサイズを小さくする事で生徒の成績が上がるのか?」といったような疑問に答えるためのデータ分析の作法を必要とします。はたしてこれが、AILabで普段から扱われている機械学習やインターネット広告との関係性がはたしてあるのか?という疑問を持たれるかと思います。

その疑問は後程解消するとして、Policy Analysisにおけるデータの問題点についてまずは説明します。
先程の学校のクラスサイズの効果を知るために最も信頼出来る評価方法はRandomized Controlled Trial(RCT/ABtest)を実施してしまう事です。しかしRCTは多大なコストが掛かる為にデータとして入手する事は非常に難しいのが現実です。よって、RCTを行っていないデータに基づいて効果を評価したいというモチベーションが発生します。

しかし、RCTの様な実験を行っていない状態では、関係者が自分の目的を達成する為に行動を起こした結果のデータしか手に入りません。
例えば、学校の先生であれば成績の悪い生徒を何とかしてあげたいと思う気持ちから、成績の悪い生徒を集めて少人数クラスを形成するといった事が起きます。この状況から入手されるデータを単純に分析してしまうと、元々成績の悪い生徒が少人数クラスに集まってしまう為に、「少人数クラスは成績に対して悪影響がある」という結論をもたらしてしまいます。

つまり、実験を行っていないデータを非常に単純な方法・思想で分析する事は間違った結論に導いてしまい、多大なる機会費用を発生させる可能性があるという事になります。
今回参加したセミナーでは、この様な政策の評価に置いて非常に多くの実績と知見を持つJoshua Angrist(Master Joshway)先生がレクチャーを行い、この様な状態のデータに対してどの様なアイデアや方法論を用いればより正しい結論へ近づけるのか?という訓練が参加者に対して行われました。

(右が著書のMastering Metricsに出てくるMaster Joshwayで、左がMaste Stevefu)

レクチャーの内容は「RCTが何故優れた効果検証の方法であるのか?」という説明から始まり、RCT以外のデータで起きる問題の定義を行い、それが回帰分析・傾向スコア・操作変数法といった方法でどの様に解決できるのかという説明が一通り行われました。全ての説明が非常に簡潔で、紹介される手法を使いたいモチベーションが非常にクリアだったのはさすがMaster Joshwayといった感じでした。

ちなみに今回のレクチャーの内容はMaster Joshwayが書いたMastering Metricsに基づいているため、気になる方は是非読まれることをお勧めします。
また、AEA 2017でのより詳細の内容が盛り込まれたレクチャーは動画も公開されているので、英語が大丈夫な方はこちらも観ると良いと思います。

 

アドテクスタジオでは現在様々な機械学習技術が導入されおり、そのほとんどの利用用途が”意思決定の自動化”にあります。例えば広告を出す際に画像Aを出すべきかBを出すべきかといった意思決定を短い時間の間に大量に行う事を機械学習を使って実行しています。

この場合、意思決定は報酬、つまりクリックや売上の最大化の為に行われているために、RCTとは大きな乖離のあるログデータを残す事になります。よって、このような状態で発生するデータから「どちらの画像の方がどの程度良かったのか?」というレポートを単純な分析で行ってしまうと、前述した通り大きな機会損失が発生する事になります。この様なモチベーションからPolicy Analysisで使われる様な方法論を持ち込んで、より適正な分析を機械学習が普遍的に利用されている環境に置いて達成したいと考えています。

この観点からAILabでは機械学習の知識を前提として、Policy Analysisの視点を持って、機械学習の残したログを分析するという研究活動を行っています。そういった意味で、今回のレクチャーは非常に参考になるお話が多く、学ぶものが非常に多かったです。

]]>