経済学 | AI tech studio https://cyberagent.ai AI事業本部は、サイバーエージェントグループのデジタルマーケティング分野におけるサービス開発を行う組織です。 Sun, 21 Jan 2024 23:33:53 +0000 ja hourly 1 https://wordpress.org/?v=5.3.26 【採択論文紹介】制約プログラミングによる新しい保育所マッチング(AAAI2024) https://cyberagent.ai/blog/research/economics/19145/ Sun, 21 Jan 2024 23:33:53 +0000 https://ai-blog-admin.cyberagent.ai/?post_type=blog&p=19145 AI Lab EconSIチームの孫と竹浪です。この記事では、人工知能分野のトップカンファレンスであるAAAI-24に採択されたSun et al. ”Stable Matchings in Practice: A Constraint Programming Approach” [1]について紹介します。本研究は孫を中心とし、山田、竹浪、森脇および九州大学の横尾真教授により実施されました。本論文のarXivリンクはこちらです。

はじめに

本論文では、保育所の入所選考にマッチング理論を適用することで、入所選考の実務にて利用可能なマッチングについて提案しています。

日本の保育所入所選考を取り扱ったこれまでの論文では、きょうだいや転園を考慮できていない、または同一世帯から同時に申し込むきょうだいの数に制限がある、という課題がありました。

そこで、本論文ではこれらの課題に対処し、以下のような貢献をしました。

  • 以下の性質を満たすマッチング結果を導いた
    • 個人合理性、安定性と呼ばれる望ましい性質を満たす
    • きょうだいの数に制限を設けない
    • 転園に対応する
    • 異年齢間で定員を共有できる
  • 制約プログラミング(Constraint Programming:CP)による高速な計算

このモデルを実際のデータに適用したところ、実際のマッチング結果よりも少なくとも同等以上に望ましいマッチング結果を得ることができました。また、一部の制約を緩和することで待機児童を更に減少できることを確認しました。

また、本論文はSun et al. [2]を発展させた論文です。保育所入所選考の問題意識や難しさについては、Sun et al. [2]を解説したブログに詳しく記載していますので、あわせてご覧ください。

これまでの保育所入所選考に関する研究

日本の保育所入所選考における待機児童問題は、社会的な問題として注目されており、国や自治体において待機児童対策が進められています。この問題の解決策のひとつとして、資源の最適な配分を考える学問であるマッチング理論を適用することが考えられます。実際に、マッチング理論を用いた保育所入所選考について、いくつかの研究があります。

Okumura[3]とKamada and Kojima[4]は、待機児童を最大限削減するため、異年齢間で定員を融通することを提案しました。例えば、保育所では、1歳や2歳について募集人数の余裕がなく、多くの待機児童が存在している一方、4歳や5歳については募集人数に余裕がある場合が存在します。これらの研究では、ある年齢にて余剰となっている保育士や面積といった資源を、募集人数に余裕のない年齢に振り分けることで、全体の待機児童を減少させるアルゴリズムが提案されています。しかし、これらの研究では、

  • きょうだい同時申し込みに対応していない
  • 転園を希望する場合に対応していない

という問題があり、これらのアルゴリズムを保育所入所選考の実務にそのまま適用することはできませんでした。

Sun et al. [2]では、線形計画法の一種である整数計画法を用いて、以下のようなマッチングを導く方法を提案しました。

  • 3人までのきょうだい同時申し込みに対応
  • 転園にも対応
  • 以下の性質を満たす
    • 個人合理性:希望していない保育所に割り当てない
    • 公平性:優先順位が高い人を優先して割り当てる
    • 非浪費性:「その保育所を希望する応募者がいるにもかかわらず受け入れ枠に空きがある状況」(浪費的な状況)をつくらない

しかし、この研究には、以下のような問題がありました。

  • 4人以上のきょうだい同時申し込みに対応していない
  • 異年齢間の定員共有に対応していない

異年齢間の定員共有を行っている保育所では、例えば4歳と5歳で合計5名まで受け入れ可能、という具合に、異年齢間で定員を共有しています。このような保育所がある自治体では、4歳と5歳の児童を年齢に関係なく優先順位が高い順にその保育所へとマッチングさせる必要があります。また、こういった保育所が複数存在している自治体では、入所選考が複雑になります。

この論文の貢献

そこで、本論文ではSun et al. [2]の制約をクリアする新たなアルゴリズムを提案しました。本論文による貢献は次の通りです。

  • 以下の性質を満たすマッチング方法(この記事では「CPモデル」と呼ぶことにします)の提案
    • 個人合理性、安定性(公平性と非浪費性)を満たす
    • きょうだい同時申し込みの人数制限がない
    • 異年齢間の定員共有ができる
  • CPモデルによるシミュレーション
    • CPモデルによるマッチング結果と実際のマッチング結果とを比較すると、実際の割り当てよりも少なくとも同等以上に望ましいマッチング結果が得られる
    • 制約を緩和することによってマッチングできる児童が増える
  • 制約プログラミング(CP)によるモデリングおよび高速化
    • NP困難である保育所マッチング問題に対して、CPを使うことで高速化を実現
  • 計算複雑性に関する問題
    • 初期配分と異なる、実現可能で個人合理的なマッチングが存在するかどうかチェックすることが、NP完全であることを示した

以下では、CPモデルによるマッチング結果、および制約を緩和することで達成できるマッチング結果について解説します。

CPモデルによるマッチング結果

本論文で提案しているCPモデルによるマッチング結果と、自治体における実際のマッチング結果とを比較します。

ここでは、東京都渋谷区と多摩市(それぞれ2021 年度と 2022 年度の一斉入所)、および福島県郡山市から提供された 2022 年度の一斉入所のデータ(匿名加工処理済み)を利用しています。マッチした児童数は保育所に内定した児童の数です。また、ブロッキング連合の数についてもカウントしています。ブロッキング連合があると、ある児童にとってより望ましい保育所に入所できた可能性があることを示しており、これがゼロであれば公平なマッチングが実現できていると言えます。

  多摩市2021 多摩市2022 渋谷区2021 渋谷区2022 郡山市2022
  実際 CP 実際 CP 実際 CP 実際 CP 実際 CP
マッチした児童数 558 560 464 470 1307 1307 1087 1087 979 1200
ブロッキング連合の数 26 0 2 0 0 0 0 0 1059 0

表1 実際のマッチング結果(実際)とCPモデルによるマッチング結果(CP)との比較

 

表1は、各自治体における実際のマッチング結果とCPモデルのマッチング結果を比較したものです。この表から、CPモデルについて次のことが言えます。

  • 各自治体で実際のマッチング結果と少なくとも同等以上に望ましいマッチングを達成できた
    • 渋谷区においては、実際のマッチングと同一の結果が得られた
    • それ以外の多摩市と郡山市においては、CPモデルを用いることで実際の結果よりも多く児童をマッチングできた。
  • 公平なマッチングが実現できている
    • CPモデルではブロッキング連合が存在しないため、公平なマッチングが実現できていると言える

待機児童をさらに減少させるために

本論文では、CPモデルを用いてさらに待機児童を減少させるために、3つの案を示しています。

  1. 同点解消をせず、無差別に取り扱う
  2. ブロッキング連合を許容する
  3. 異年齢間の定員共有をさらに許容する

1については、後述します。

2については、ブロッキング連合を許容することで、待機児童数を減少できることがシミュレーションでわかりました。しかし、公平なマッチングが実現できなくなる、計算時間が増えるという欠点があります。

3については、異年齢間の定員共有を許容することで、待機児童数が減ると期待されます。しかし、我々が保有するデータのうち、定員共有を許容しているデータではサイズが小さく、シミュレーションでは明確なことが言えませんでした。

同点を解消せず、同点者を無差別に取り扱うと、待機児童数は減少する

多くの自治体では、就労状況や世帯状況を指数化し、指数が高い児童から順に割り当てています。この際、指数が同点になることもあります。例えば、郡山市[5]では1月140時間以上の就労で200点加算され、育児休業明けだとさらに30点加算されます。つまり、両親ともにフルタイム勤務で育児休業明けの場合、合計430点となります。しかし、同様の世帯状況である申込者は多く、同じ点数の申込者が多数存在することが予想されます。

自治体はこのような事態を想定し、同点者に対してタイブレークするルールを設けています。郡山市では、「満3歳に達する日以後の最初の3月31日までを対象年齢とする保育施設等を満了する入所児童が連携施設を希望している場合」、「現に認定こども園を1号認定で利用している入所児童が、同施設で2号認定での利用を希望している場合」、「類型間の優先順位」、「養育している小学生以下の子どもの人数が多い世帯」、「経済的状況」…の順に優先することとなっています。

ここで、実際のルールを一旦無視して、タイブレークを行わず、同点者を無差別に取り扱った場合のシミュレーションを実施します。このCPモデルには、同点者に差をつけず、無差別に取り扱うことができる機能があるため、これを利用してシミュレーションを実施しました。このとき、個人合理性と安定性は保持されています。

表2では、各自治体データを用いて、CPモデルによるマッチング結果と、タイブレークせず同点者を無差別に取り扱ったCPモデルによるマッチング結果とを比較しています。

  多摩市2021 多摩市2022 渋谷区2021 渋谷区2022 郡山市2022
  CP CP無差別 CP CP無差別 CP CP無差別 CP CP無差別 CP CP無差別
マッチした児童数 560 571 470 478 1307 1335 1087 1135 1200 1217
計算時間 9.6秒 12.5秒 1.7秒 3.0秒 18.1秒 1000秒 11.6秒 803秒 18.5秒 24.1秒

表2 CPモデルによるマッチング結果(CP)と、タイブレークせず同点者を無差別に取り扱ったCPモデルによるマッチング結果(CP無差別)の比較

表2では、同点者を無差別に扱うCP無差別において、いずれのデータでもマッチした児童の数が増加しています。CPモデルは最大限に待機児童を減らすという目的のもとでマッチングしています。同点者を無差別に扱うことにより、マッチングの自由度が増し、その結果マッチした児童の数が増えています。ただし、渋谷区2021の例のように、計算時間が大きく増加する可能性もあります。

社会実装に向けて

AI LabとGovTech開発センターは、本論文で示されたアルゴリズムを用いた自治体向け保育所入所選考システムを開発しており、自治体に提供することができます。

研究に基づいた保育所入所選考システムや、待機児童減少に向けた取り組みにご興味のある自治体の方はこちらからご連絡をください。

 

参考文献

[1] Sun, Z., Yamada, N., Takenami, Y., Moriwaki, D., & Yokoo, M. (in press) ”Stable Matchings in Practice: A Constraint Programming Approach”, AAAI, Thirty-Eighth AAAI Conference on Artificial Intelligence.

[2] Sun, Z., Takenami, Y., Moriwaki, D., Tomita, Y., & Yokoo, M. 2023. Daycare Matching in Japan: Transfers and Siblings. Proceedings of the AAAI Conference on Artificial Intelligence, 37(12), 14487-14495.

[3] Okumura, Y. 2019. School choice with general constraints: a market design approach for the nursery school waiting list problem in Japan. The Japanese Economic Review, 70(4): 497–516.

[4] Kamada, Y.; and Kojima, F. 2023. Fair matching under constraints: Theory and applications. The Review of Economic Studies.

[5] 福島県郡山市. 2023. 郡山市保育施設等の利用調整及び保育の必要性の認定に関する事務取扱要領 https://www.city.koriyama.lg.jp/uploaded/attachment/69154.pdf

]]>
【採択論文紹介】Daycare Matching in Japan: Transfers and Siblings https://cyberagent.ai/blog/research/publication_review/18396/ Mon, 30 Jan 2023 01:54:41 +0000 https://ai-blog-admin.cyberagent.ai/?post_type=blog&p=18396 AI Lab EconSIチームの孫と竹浪です。この記事では、人工知能分野のトップカンファレンスであるAAAI-23に採択されたSun et al. ”Daycare Matching in Japan: Transfers and Siblings” [1]について紹介します。本研究は孫を中心とし、竹浪、森脇、冨田および九州大学の横尾真教授により実施されました。論文のarxivバージョンはこちらです。

はじめに

保育所入所選考にはマッチング理論が応用できます。しかし、実務ではきょうだいや転園などに考慮する必要があるため、先行研究で提案されているアルゴリズムをそのまま実務に適用することはできません。そこで、本論文では実務で求められる性質を全て満たすアルゴリズムを整数計画法にてデザインしました。このアルゴリズムを実際のデータに適用したところ、実際の割り当てよりも少なくとも同等以上に望ましいマッチング結果を得ることができました。

保育所入所選考とマッチング理論

保育所を利用するときは、自治体で行う保育所入所選考を経る必要があります。

利用希望者は、居住している自治体に希望保育所名とその希望順位、世帯の就労状況等を記載した申請書を提出します。そして、自治体は申請された情報をもとに保育の必要性に応じた指数を決定し、指数順に児童を希望する保育所に割り当てます。まさに児童と保育所のマッチングです。AI Lab EconSIチームでは、マッチング理論による保育所入所選考の改善に取り組んでおり、東京大学マーケットデザインセンター(UTMD)と共同研究を行い、実際に東京都多摩市の制度変更に貢献しました。

保育所入所選考固有の問題

保育所入所選考を難しくさせる固有の問題として、きょうだいの存在と転園の存在があります。

きょうだい

異年齢・同年齢問わず、複数のきょうだいが同時に保育所を希望する場合があります。このとき応募者は、

  • きょうだい全員を同時に入園させたいか、別の時期でも構わないか
  • 同じ保育所への入園だけを希望するか、別々の保育所への入園でも構わないか

といった意思表示を行い、自治体に申請します。例えば、東京都渋谷区では希望の組み合わせを提出できるようになっています。自治体は、こうした希望に配慮して保育所を割り当てています。したがって、マッチングの際はきょうだいの希望の組み合わせを考慮する必要があります。

しかし、標準的なマッチングアルゴリズムではあくまで個人の割り当てを考えているため、きょうだいの希望の組み合わせを踏まえた割り当てには対応していません。例えば、きょうだい2名がともにA保育所が第一希望、B保育所を第二希望にしている場合、きょうだいが一緒に入れない(A保育所、B保育所)という組み合わせではなく、(B保育所、B保育所)の組み合わせを優先したいということがありえます。このように、きょうだいが希望する保育所の組み合わせのパターンによって希望順序が決まりますが、個人をもとにしたアルゴリズムではこうした構造を考慮できません。

転園

通園する保育所を変更したい場合、多くの自治体では転園を希望することができます。その際、転園希望者については、

  • 希望する保育所に入園させる
  • すでに入園している保育所(転園元)に戻る

のいずれかを実現し、待機児童にはさせない入所選考を行う必要があります。

さらに、

  • 転園が成功すれば転園元に空きが出るため、希望者がいれば割り当てる必要がある
  • きょうだいのうち1人が、あるいは全員が転園を希望する場合がある

ことにも留意する必要があります。

きょうだいと転園に関する先行研究

保育所入所選考におけるきょうだいと似た状況として、

  • 学校選択制におけるきょうだいの申し込み
  • 研修医マッチングにおけるカップルの存在

があります。

先行研究におけるきょうだいや転園の取り扱い状況

表1: 先行研究におけるきょうだいや転園の取り扱い状況([1]のTable 1を改変)

表1では、保育所入所選考においてきょうだいを取り扱うにあたり重要な学校選択制、研修医マッチング、保育所入所選考の先行研究における

  • 転園
  • きょうだい・カップル
  • きょうだいの希望の組み合わせ

の取り扱い状況をまとめました。一番下の本論文を除き、

  • 転園のことを検討していない[2,3,5,6,7]
  • きょうだい(カップル)が2名の場合のみを検討しているため、2人より多いきょうだいがいる場合に対応していない[4,5,6]
  • きょうだいの組み合わせに制約がある。例えばきょうだいが同じ学校のみを希望していると仮定しているが、実際にはきょうだいが別の保育所を希望する場合もある[7.8]

という状況であり、先行研究にて提案されているアルゴリズムをそのまま保育所入所選考に応用することができません。

実務において要求される性質

きょうだい、転園の他に、保育所入所選考の実務において要求される性質として、次のようなものがあります。

  • 個人合理性:希望していない保育所に割り当てない
  • 公平性:優先順位が高い人から順に割り当てる
  • 非浪費性:「その保育所を希望する応募者がいるにもかかわらず受け入れ枠に空きがある状況」(浪費的な状況)をつくらない

したがって、保育所入所選考の実務においては、割り当ての結果が以下の制約を満たしている必要があります。

  • きょうだいへの対応
  • 転園への対応
  • 個人合理性
  • 公平性
  • 非浪費性

本論文の貢献

そこで、本論文では上記した制約を満たす新たなアルゴリズムをデザインしました。本論文による貢献は次の通りです。

  • 実際のデータに基づき、日本で実施されている保育所入所選考を現実的なモデルとして定式化しました。転園、きょうだい、制約のないきょうだいの希望の組み合わせを全て取り扱った研究は我々の知る限り初めてです。
  • これまでのマッチング理論で用いられてきた個人合理性(Individual Rationality)、非浪費性(Non-wastefulness)、公平性に関連するブロッキングペア(Blocking Pair)といった概念を、転園やきょうだいの組み合わせを考慮することで一般化しました。具体的には、個人をベースに構成されていたこれらの概念を、家族をベースにし、それぞれ家族合理性(Family Rationality)、家族非浪費性(Family Non-wastefulness)、ブロッキング連合(Blocking Coalition)として定義しました。
  • きょうだい、転園、家族合理性、公平性(ブロッキング連合がない状態)、家族非浪費性に対応したアルゴリズムを開発し、実装しました。
  • 自治体から提供された匿名データにてアルゴリズムの性能を確認したところ、実際の割り当てと少なくとも同等、自治体によっては上回る結果を得られることを確認しました。
  • きょうだい、転園、家族合理性、公平性、家族非浪費性といったすべての制約を満たす解が存在しない場合があり、実際に児童が4人(うち2人はきょうだい)の例でそのような場合を例示しています。しかし、シミュレーションで用いたすべての自治体のデータで、これらすべての制約を満たす解が求められました。

モデル

本論文ではきょうだいに対応するため、家族をベースにしたモデルを設定しています。本論文のモデルは、次のインスタンス\(I\)にて記述しています。

$$I = (C, F, D, G, \omega, \succ_{C}, \succ_{F}, \succ_{D}, q)$$

それぞれ次を意味します。

  • \(C\):児童の集合
  • \(F\):家族の集合
  • \(D\):保育所の集合
  • \(\omega(c)\):児童\(c\)の転園元(転園元がない場合にも対応)
  • \(\succ_C\):\(D\)に対する各個人\(c \in C\)の選好順序\(\succ_c\)の集合
  • \(\succ_F\):\(D\)に対する各家族\(f \in F\)に属する児童\(C_f\)の選好の組み合わせ\(\succ_f\)の集合
  • \(\succ_D\):各個人\(c \in C\)に対する各保育所\(d \in D\)の優先順序\(\succ_d\)の集合
  • \(q\):各保育所の募集人数のベクトル

各児童\(c\)はひとつの家族\(f \in F\)に所属し、各家族\(f\)は児童の集合\(C_f \subseteq C\)により構成されます。

アルゴリズム

アルゴリズムは線形計画法の整数バージョンである整数計画法によりモデリングされています。具体的には、きょうだいの希望の組み合わせ、転園を考慮しつつ、家族合理性、公平性(ブロッキング連合がない状態)、家族非浪費性の制約下で、マッチングされる児童を最大化(待機児童を最小化)する問題を整数計画法により解いています。興味のある方は論文をご覧ください。

自治体データを用いたシミュレーション

実際の割り当ての結果と今回デザインしたアルゴリズムの結果の違いについて解説します。東京都の渋谷区と多摩市から提供された2021 年度と 2022 年度の一斉入所における希望者データ(匿名加工処理済み)と保育所データに対して、このアルゴリズムを用いたシミュレーションを行いました。そこで、各自治体における実際の割り当て結果とシミュレーションの結果とを比較・考察します。

実際の割り当て結果と本論文で提案されたアルゴリズムの割り当て結果の比較

表2: 実際の割り当て結果と本論文で提案されたアルゴリズムの割り当て結果の比較([1]のTable 2を改変)

表2は、各自治体における実際の割り当て結果と本論文で提案されたアルゴリズム(提案手法)の割り当て結果を比較したものです。この表から 2 つのことが言えます。

  1. 各自治体で性質の良い割り当てや待機児童が少ない割り当てが達成できました。多摩市においては、今回実装したアルゴリズム(提案手法)を用いることで実際の結果と同等以上に児童を割り当てているだけではなく、家族合理性と家族非浪費性を満たしています。また、渋谷区においては、実際のマッチングと同一の結果が得られました。
  2. いずれの自治体、年度においてもアルゴリズム(提案手法)により公平性(ブロッキング連合がない状態)を満たすマッチング結果を得ることができました。

アルゴリズムの社会実装

AI LabとGovTech開発センターは、この論文で示されたアルゴリズムを用いた自治体向け保育所入所選考システムを開発しています。研究に基づいた保育所入所選考システムにご興味のある自治体の方はこちらからご連絡をください。

参考文献

[1] Sun, Z., Y. Takenami, D. Moriwaki, Y. Tomita, and M. Yokoo (in press) ”Daycare Matching in Japan: Transfers and Siblings”, AAAI, Thirty-Seventh AAAI Conference on Artificial Intelligence

[2] Biró, P.; Manlove, D. F.; and McBride, I. 2014. The hospitals/residents problem with couples: Complexity and integer programming models. In International Symposium on Experimental Algorithms, 10–21. Springer. 

[3]Manlove, D. F.; McBride, I.; and Trimble, J. 2017. “Almost stable” matchings in the Hospitals/Residents problem with

Couples. Constraints, 22(1): 50–72.

[4]Hamada, N.; Hsu, C.; Kurata, R.; Suzuki, T.; Ueda, S.; and Yokoo, M. 2017. Strategy-proof school choice mechanisms with minimum quotas and initial endowments. Artificial Intelligence, 249: 47–71. 

[5]Okumura, Y. 2019. School choice with general constraints: a market design approach for the nursery school waiting list problem in Japan. The Japanese Economic Review, 70(4): 497–516.

[6]Kamada, Y.; and Kojima, F. 2020. Fair matching under constraints: Theory and applications. Review of Economic Studies.

[7]Dur, U.; Morrill, T.; and Phan, W. 2022. Family Ties: School Assignment with Siblings. Theoretical Economics, 17(1): 89–120.

[8]Correa, J.; Epstein, N.; Epstein, R.; Escobar, J.; Rios, I.; Aramayo, N.; Bahamondes, B.; Bonet, C.; Castillo, M.; Cristi, A.; Epstein, B.; and Subiabre, F. 2022. School choice in Chile. Operations Research, 70(2): 1066–1087.

 

]]>
【リサーチインターン】最適クリエイティブ数を予測する: UpLift Modelingを使った予測モデルの開発 https://cyberagent.ai/blog/research/economics/12482/ Thu, 26 Mar 2020 09:30:11 +0000 https://ai-blog-admin.cyberagent.ai/?post_type=blog&p=12482 こんにちは。2020年1月より1か月間、AI Lab Econチームでインターンをしていました浅川です。本稿では、今回のインターンシップ中に取り組んだ「UpLift Modeling を使った最適クリエイティブ数予測モデルの開発」についてご紹介します。

1. 問題設定
天気予報、音楽再生、乗り換え検索。スマートフォンをお使いの方なら、恐らく毎日のように多種多様なアプリを使っていると思います。皆さんの中にはアプリに表示される広告をクリックして、実際に購入したり、店舗に足を運んだりした経験のある方も少なくないと思います。
このアプリ内広告。ご存知の方も多いと思いますが、ほとんどがスマートフォンのアプリを開くと同時に、リアルタイムのオークション(Real Time Bidding, RTB)によって入札され、どの広告主が広告配信できるかが決まります。その後、オークションに勝った広告主は、その配信枠に対して次にどの広告を配信するかを決定します。
通常、ある広告枠に対して、ある広告主から受注した広告の種類は複数あることが一般的です。例えば、ある広告主がセール広告を配信する場合、セール期間中の目玉商品が複数あり、その結果、広告(以下ではクリエイティブと言います)の種類も複数用意されています。
そのため、DSPといわれる広告配信システムはオークションに勝った広告枠に対して、複数あるクリエイティブから最適なものを選ばなければいけません。それだけでなく、あるユーザーに対して、広告主の広告を複数回配信する場合、どのクリエイティブを選択すべきなのかという問題も生じます。例えば、同じユーザーに対して、同じクリエイティブを繰り返して配信すべきなのか、もしくは、異なるクリエイティブを1度ずつ配信すべきなのか、についてはあまり自明ではありません。
このような背景から、今回のインターンでは主に以下のような問題に取り組みました。

・クリエイティブの種類によって広告効果は変わるのか?
・それぞれのユーザーにとって最適なクリエイティブの種類はいくらなのか?
・仮に最適なクリエイティブ数がユーザーによって違う場合、その違いを生み出している特徴量は何なのか?

2. 検証方法
2.1. アップリフトモデリングとは
今回使用したのは、広告効果の予測に広く使われているアップリフトモデリングという手法です(詳細なサーベイはGutierrez and Gerardy 2017を参照のこと)。アップリフトモデリングではまず、データを訓練データとテストデータに分けたのち、訓練データのアウトカム変数 \(Y_i\), 処置変数 \(W_i\), そして特徴量 \(X_i\) を用いて学習器を作成します。ただし、以下表1のように、広告を実際に見た人(\(W_i=1\))が「見ていなかった(\(W_i=0\))」時のアウトカムや、広告を実際は見なかった人(\(W_i=0\))が「見た(\(W_i=1\))」時のアウトカムについては欠損データとして、観察することはできません(因果推論の根本問題)。

表1

そのため、通常はA/Bテストによって、特徴量に由来するバイアスを取り除きます。これによって、特徴量が類似するグループについては \(E[Y_i (1)| W_i=1, X_i] と E[Y_i (0)| W_i=1, X_i]\) の差分を取ることで、グループ\(X_i\) における因果効果を推定することができます。
ここから、因果推論から予測の話に移ります。次に、この学習器を使ってテストデータの\(X_i\) から処置を受けた場合(\(W_i=1\))と受けなかった場合(\(W_i=0\))についてそれぞれ\(Y_i\) の予測値 \(E[Y_i | W_i=1, X_i],E[Y_i | W_i=0, X_i]\)を計算します。ここで得られた\(Y_i\) の予測値について各個人ごとに差分を取ると、以下のように個人レベルの因果効果の予測値\(E[τ_i (X_i )]\)を計算することができます。

$$E[τ_i (X_i )]=E[Y_i | W_i=1, X_i]-E[Y_i | W_i=0, X_i]$$

 これによって予測された個人レベルの因果効果\((τ_i)\)が高い順にユーザーを並べて、より処置効果が高いユーザーのみに処置を当てようというのがアップリフトモデリングの基本的なアイデアになります。

2.2. アップリフトモデリングの利点
アップリフトモデリングを使うことで、特徴量\(X_i\) の情報のみから個人レベルの因果効果\((τ_i)\)を予測することができます。そのため、アップリフトモデリングには以下のような利点があると考えられます。

①何割くらいの人に広告を配信することが最も費用対効果が高いかを推論することができます。
②\(E[τ(X)]\) を用いてユーザーをグループ分けすることで、どのような特徴を持つグループで広告効果が最大になったのかを検討することができます。(c.f. Kawanaka and Moriwaki 2019)
③広告の種類が複数ある状況で、何種類の広告を当てることが広告効果を最大化するのかを検討することができます。(今回のインターンでの取り組み)

2.3. アップリフトモデリングの評価指標
それでは、アップリフトモデリングがうまく個人レベルの因果効果を予測できているかどうかは、どのように評価すればいいのでしょうか。これについて、既存研究ではAUUC (Areas Under the Uplift Curves)を用いて評価することが一般的です(詳細はRzepakowski and Jaroszewicz 2012を参照のこと)。以下では、簡単にAUUCの計算方法を紹介します。

①訓練データ\({Y_i, W_i, X_i}\)を使って\(τ_i\) を予測する学習器を作成し、テストデータの\(X_iから\widehat{\tau_i}\left(X_i\right)\)を予測します。
②\(\widehat{\tau_i}\left(X_i\right)\) が大きい順にサンプルを並べます。
③テストデータの\({Y_i, W_i }\)を使って個人 \(i\) までのCVR(コンバージョン率)を処置群、統制群それぞれについて計算し、差分を個人 \(i\) の時点でのアップリフト (\(Lift_i\))とします。
④ランダムにサンプルを並べた時の個人 \(i\) の時点での CVRを\(Baseline_i\)とします。
⑤最後にアップリフトカーブ (\(Lift_i\))とベースラインカーブ (\(Baseline_i\))の差分をとり、その総和をAUUCとします。

うまく個人レベルの因果効果が予測できている場合、アップリフトカーブの形状は以下のようになります。具体的に、原点から順に累積の因果効果が高くなり、ピークの点を境に累積の因果効果が低下していくような形状となることが理想とされます。以下図1の例の場合は、全体のうち約25%で累積の因果効果が最も高くなるため、全体のうち約25%のユーザーに広告を当てればいいと結論づけることができます。


 図1

3. 観察データにおけるアップリフトモデリング
3.1. 観察データを用いる場合の問題点
2.1で述べたように、通常、アップリフトモデリングはA/Bテストを用いたRCTを前提としています。しかしながら、広告データの分析では、仮に広告を配信するグループ(処置群)か否かをランダムに分類した場合でも、広告が配信されるかどうかは広告の配信期間中に対象となるアプリを使用した頻度や競合他社とのオークションの勝敗によって決まるため、配信グループに必ずしも広告が配信されるかどうか(実際に処置を受けたかどうか)は定かではありません。そのため、個人レベルの因果効果を推定するためには、処置群の中でその個人が実際にどれくらい処置を受けやすいかを補正する必要があります。

3.2. 傾向スコアを用いた補正方法
先行研究(Athey and Imbens 2015, Gutierrez and Gerardy 2017など参照のこと)でも提唱されているように、トリートメントが1種類の場合は傾向スコア \(p ̂(X_i)\) で処置の有無を逆重み付けすることで、処置の受けやすさを補正した上で個人レベルの因果効果\(\widehat{\tau_i}\left(X_i\right)\) を予測することができます。

$$Y_i^*=Y_i (1)\frac{ W_i}{p ̂(X_i)}+Y_i (0)\frac{1-W_i}{1-p ̂(X_i)}$$

$$E[Y_i^* |X_i]=τ ̂(X_i)$$

この場合、\(E[Y_i^* |X_i]\) を予め学習しておくことで未知の\(X_i\) についても\(\widehat{\tau_i}\left(X_i\right)\) の予測ができます。

3.3. トリートメントが複数ある場合の傾向スコアを用いた補正方法
今回のように、クリエイティブの種類が複数ある、つまりトリートメントが複数ある場合、3.2のような手法をそのまま使うことはできません。なぜなら、処置を受けるか受けないかに加えて、全体の中である処置\( T\) を受ける確率で処置の有無を逆重み付けする必要があるからです。本研究では、Imbens (2000) やFeng et al (2012)などで提案されている一般化傾向スコア(GPS)を用いて逆重み付けすることを試みました。これによって、ある処置の受けやすさを補正した上で個人レベルの因果効果\(τ^{GPS} (X_i)\)を予測できるようになります。

$$Y_i^{GPS} (t)=Y_i (1) \frac{W_i ∑_{T=0}^Mr(T,X_i)}{r(T=t,X_i)}+Y_i (0) \frac{(1-W_i)∑_{T=0}^Mr(T,X_i)}{r(0,X_i)}$$

$$E[Y_i^{GPS} |X_i]=τ^{GPS} (X_i)$$

$$Where ∑_{T=0}^Mr(T,X_i)=1$$

なお、今回は傾向スコアの推定に、広く使われているロジスティック回帰を使用しました。その上で、個人レベルの因果効果を予測する際には、最小2乗推定を使用しました。

4. 使用データの構成と特徴

・今回使用したのは、実際の広告データです。
・配信期間最終日の時点で実際に店舗に行っていたら1をとるダミー変数を、今回はアウトカムとして利用します。

実際にそれぞれのユーザーは何種類のクリエイティブを見ていたのでしょうか?以下に示すのは、実際に見たクリエイティブ数について描いたヒストグラムを描いたものです。これによると、ほどんどのユーザーが1種類しかクリエイティブを見なかったことがわかります。次の節では、広告効果を最も高くするために、各ユーザーにとって実際は何種類のクリエイティブを見ることが良かったのかについて議論を行います。


図2

5. 結果
まず、AUUCの数値からアップリフトカーブがうまくかけているかを検証していきます。
① クリエイティブが1種類の場合


図3

アップリフトカーブはうまくかけていると考えられます。広告効果が最も高くなった位置(累積相対度数)はアップリフトスコア上位約10%でした。

② クリエイティブが2種類の場合


図4

このケースもアップリフトカーブもうまくかけていると考えられます。広告効果が最も高くなった累積相対度数はアップリフトスコア上位約22.5%でした。

③ クリエイティブが3種類の場合


図5

AUUCはマイナスで、アップリフトカーブは1,500,000人を境にベースラインを下回っています。ここから、クリエイティブが3種類の場合は広告の効果が逆に効いてしまう状況がみてとれます。なお、広告効果が最も高くなった累積相対度数はアップリフトスコア上位約20%でした。

④ クリエイティブが4〜7種類の場合
クリエイティブ数が4〜7種類については、すべて同様の形状でありかつ、アップリフトカーブもうまくかけていたため、図示は省略します。

以上の結果をまとめたものが以下の表になります。なお、累積相対度数が最も高くなったのはクリエイティブ数が2と6のケース。累積相対度数が最少となったのはクリエイティブ数が7のケースでした。

表2

 

最後に、①〜④より作成した予測モデルを使って、各個人についてクリエイティブ数が0〜7だった場合の反実仮想的な広告効果をそれぞれ予測しました。そのうち、各個人の中で最も広告効果(アップリフト)が高かったものを最適クリエイティブ数として、以下にヒストグラムを描きました。


図6

 実際に閲覧されたクリエイティブ数のヒストグラム(図2)と比較すると、特にクリエイティブ数が6種類のところで、頻度が大幅に増加しています。このことから、最適クリエイティブ数は6にも関わらず、ほとんどのユーザーはそこまで多くの種類のクリエイティブ数を閲覧できていないことが分かりました。

6. 最後に
今回のインターンシップはAI Lab Econチームの森脇さんからの紹介で実現しました。
序盤は機械学習やPythonなど、基本的な知識の習得に必死でしたが、実装や理論で分からない部分は気軽にラボの皆さんに相談できたので、スムーズに研究に取り組むことができました。メンターの森脇さんには、毎日最低30分のMTGの時間を割いていただき、研究テーマに関するディスカッションに加えて、研究生活を送る上で重要な様々なことを教えていただきました。また、社内には経済学をバックグラウンドとする社員も複数人いて、ディスカッションを通じて、非常に多くの刺激を受けることができました。
最後になりますが、これまで、就活はおろかインターンシップさえ経験したことが無かった私に文字通り0から、成長する機会を与えてくださったラボメンバーの皆さんには感謝の気持ちでいっぱいです。1ヶ月間という短い期間でしたが、本当にお世話になりました。ありがとうございました。

参考文献
Athey, S., & Imbens, G. W. (2015). Machine learning methods for estimating heterogeneous causal effects. stat, 1050(5), 1-26.

Feng, P., Zhou, X. H., Zou, Q. M., Fan, M. Y., & Li, X. S. (2012). Generalized propensity score for estimating the average treatment effect of multiple treatments. Statistics in medicine, 31(7), 681-697.

Gutierrez, P., & Gérardy, J. Y. (2017, July). Causal inference and uplift modelling: A review of the literature. In International Conference on Predictive Applications and APIs (pp. 1-13).

Imbens, G. W. (2000). The role of the propensity score in estimating dose-response functions. Biometrika, 87(3), 706-710.

Kawanaka, S., & Moriwaki, D. (2019, November). Uplift modeling for location-based online advertising. In Proceedings of the 3rd ACM SIGSPATIAL International Workshop on Location-based Recommendations, Geosocial Networks and Geoadvertising (pp. 1-4).

Rzepakowski, P., & Jaroszewicz, S. (2012). Decision trees for uplift modeling with single and multiple treatments. Knowledge and Information Systems, 32(2), 303-327.

]]>
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年生だけでなく, 上のスライドを通じて経済学を学んでいる学生がサイバーエージェントで経済学使ってこんな面白いことをやってるんだな, と伝われば嬉しいです!

]]>
経済学の新たな方向性—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).
]]>