Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Reading "Interpretable Personalized Experimentation"

Reading "Interpretable Personalized Experimentation"

I read a paper, "Interpretable Personalized Experimentation", which was accepted at KDD2022.
https://dl.acm.org/doi/abs/10.1145/3534678.3539175

Tatsuya Shirakawa

November 24, 2022
Tweet

More Decks by Tatsuya Shirakawa

Other Decks in Technology

Transcript

  1. Interpretable Personalized Experimentation I read 2022-11-24 Tatsuya Shirakawa

  2. 多言語オープンドメイン教師なしキーフレーズ抽出 双曲空間での機械学習 日本心理学会チュートリアル Graph Convolution 顔検出・認識 ちょっと前に転職しました!! ← Beatrust ←

    ABEJA ← 数理システム Selected Posts 白川 達也 Tatsuya Shirakawa シリアル一人目 ML Engineer at Kauche @s_tat1204
  3. 今回の論文 Accepted at KDD 2022 Meta社内で広く活用されている、説明可能でパーソ ナライズされた施策の生成システムの紹介 決定木をフル活用 概要 施策効果の推定

    同時並行で実施された各施策がどんなユーザーに どれくらいの効果がありそうかを知りたい 効果は単一ではなく複数指標で把握したい 運用施策の導出 それに基づき、解釈可能でパーソナライズされた 施策を導きたい MLに造詣が深くないプロダクトチームでも採用す る施策を選べるようにしたい 上記、Metaレベルの大規模サービスで実現したい この論文で実現したいこと https://arxiv.org/abs/2111.03267
  4. 背景

  5. 3 7 5 6 3 4 施策 a b ...

    z ユーザー 1 2 3 4 ︙ n-1 n 施策 a b ... z ユーザー 1 2 3 4 ︙ n-1 n ランダム化実験、A/Bテスト avg 5.0 5.5 3.5 Experimentation Phase Deployment Phase
  6. 3 7 5 6 3 4 施策 a b ...

    z ユーザー 1 2 3 4 ︙ n-1 n 施策 a b ... z ユーザー 1 2 3 4 ︙ n-1 n やりたいこと - Personalization avg 5.0 5.5 3.5 Experimentation Phase Deployment Phase
  7. 3 7 5 6 3 4 施策 a b ...

    z ユーザー 1 2 3 4 ︙ n-1 n 施策 a b ... z ユーザー 1 2 3 4 ︙ n-1 n やりたいこと - Personalization avg 5.0 5.5 3.5 Experimentation Phase Deployment Phase 未実施な 施策の効果が わからない Personalize された施策の 選び方が わからない
  8. 3 7 5 6 3 4 施策 a b ...

    z ユーザー 1 2 3 4 ︙ n-1 n 施策 a b ... z ユーザー 1 2 3 4 ︙ n-1 n やりたいこと - Personalization avg 5.0 5.5 3.5 Experimentation Phase Deployment Phase 未実施な 施策の効果が わからない Personalize された施策の 選び方が わからない Solution 個々人の個別施策適用効果(HTE)推定をする Solution HTEに基づき、最適な施策を選ぶ
  9. 3 7 5 6 3 4 施策 a b ...

    z ユーザー 1 2 3 4 ︙ n-1 n 施策 a b ... z ユーザー 1 2 3 4 ︙ n-1 n やりたいこと - Personalization avg 5.0 5.5 3.5 Experimentation Phase Deployment Phase 未実施な 施策の効果が わからない Personalize された施策の 選び方が わからない Solution HTEに基づき、最適な施策を選ぶ HTEがわかっても どう解釈すれば いいかわからない 施策が選べても どう解釈すれば いいのか わからない Solution 個々人の個別施策適用効果(HTE)推定をする
  10. 3 7 5 6 3 4 施策 a b ...

    z ユーザー 1 2 3 4 ︙ n-1 n 施策 a b ... z ユーザー 1 2 3 4 ︙ n-1 n やりたいこと - Personalization avg 5.0 5.5 3.5 Experimentation Phase Deployment Phase 未実施な 施策の効果が わからない Personalize された施策の 選び方が わからない Solution HTEに基づき、最適な施策を選ぶ HTEがわかっても どう解釈すれば いいかわからない 施策が選べても どう解釈すれば いいのか わからない Solution 個々人の個別施策適用効果(HTE)推定をする この論文 解釈可能なHTE推定手法 この論文 解釈可能な施策導出手法
  11. 既存研究 個々人に対する個別効果(HTE)予測 パーソナライズするためには、施策の個々人にたいする個別効果(HTE)を知る必要があるが、 SOTAなHTE modelはしばしばblack-boxで解釈困難(e.g. GBTs, NNs, アンサンブルモデル) 実験結果からのパーソナライズされた施策の導出 HTEからパーソナライズされた施策を導出しようとしても既存の施策導出手法はしばしばblack-box

    → 既存研究の方法はしばしば解釈困難。解釈性にチャレンジした研究もあるがスケーラブルでない。 本論文 Meta社内で運用している解釈性をもちスケーラブルな仕組みを紹介
  12. 提案手法

  13. HTE Model Understanding + Interpretable Policy Generation HTE estimation 実験の結果から、任意のHTE予測モデルで各

    施策のユーザーごとの効果を予測する Interpretable Policy Generation HTEモデルを用いて解釈可能な施策を導出する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する
  14. HTE Model Understanding + Interpretable Policy Generation Interpretable Policy Generation

    HTEモデルを用いて解釈可能な施策を導出する HTE estimation 実験の結果から、任意のHTE予測モデルで各 施策のユーザーごとの効果を予測する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する
  15. HTE Model Understanding + Interpretable Policy Generation Interpretable Policy Generation

    HTEモデルを用いて解釈可能な施策を導出する 任意のHTE予測モデルに対して適用できること 施策も指標も複数種あるケースでも対応できること Engineer、Data Scientist、Product Managerが解釈可能なこと 満たすべき要件 HTE estimation 実験の結果から、任意のHTE予測モデルで各 施策のユーザーごとの効果を予測する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する
  16. Distill-HTEによるHTE Model Understanding MTDT1個で全指標を予測 学習時のlossは各指標のlossの和 ロバスト化のための工夫 処置/対照群不均衡なノードの刈込 信頼区間の付与 Honesty criterionの適用

    各施策・指標毎のHTE modelを蒸留し、 各施策毎に単一の決定木(MTDT, Multitask Decision Tree)を学習。 各指標毎に、各leaf(user segment)での施策の効果を信頼区間付きで表示 各bar上にはleafを定義するルールをoverlayして表示 Distill-HTEの結果可視化を行う。 ← 木の構築と葉での推定値計算に異なるサンプルを使い、推定の偏りを抑制する方法 施策毎に決定木を学習することで、施策毎に解釈可能なユーザーの セグメントとその時の各種指標の予測値の両方が自動的に得られる
  17. Distill-HTEによるHTE Model Understanding MTDT1個で全指標を予測 学習時のlossは各指標のlossの和 ロバスト化のための工夫 処置/対照群不均衡なノードの刈込 信頼区間の付与 Honesty criterionの適用

    各施策・指標毎のHTE modelを蒸留し、 各施策毎に単一の決定木(MTDT, Multitask Decision Tree)を学習。 各指標毎に、各leaf(user segment)での施策の効果を信頼区間付きで表示 各bar上にはleafを定義するルールをoverlayして表示 Distill-HTEの結果可視化を行う。 ← 木の構築と葉での推定値計算に異なるサンプルを使い、推定の偏りを抑制する方法
  18. HTE Model Understanding + Interpretable Policy Generation HTE estimation 実験の結果から、任意のHTE予測モデルで各

    施策のユーザーごとの効果を予測する Interpretable Policy Generation HTEモデルを用いて解釈可能な施策を導出する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する 複数ある指標をどう統合するか? 施策ごとの予測結果をどう統合するか? 統合された施策をどう解釈すべきか? ここまで: MTDTにより、各施策の効果(HTE)の予測ができるようになった ↓ Next: それにもとづいて、Personalizeされた統合施策を作りたい
  19. HTE Model Understanding + Interpretable Policy Generation HTE estimation 実験の結果から、任意のHTE予測モデルで各

    施策のユーザーごとの効果を予測する Interpretable Policy Generation HTEモデルを用いて解釈可能な施策を導出する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する 複数ある指標をどう統合するか? 施策ごとの予測結果をどう統合するか? 統合された施策をどう解釈すべきか? ここまで: MTDTにより、各施策の効果(HTE)の予測ができるようになった ↓ Next: それにもとづいて、Personalizeされた統合施策を作りたい
  20. HTE Model Understanding + Interpretable Policy Generation HTE estimation 実験の結果から、任意のHTE予測モデルで各

    施策のユーザーごとの効果を予測する Interpretable Policy Generation HTEモデルを用いて解釈可能な施策を導出する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する 複数ある指標をどう統合するか? → 重み付けを調整する 施策ごとの予測結果をどう統合するか?→ Next 統合された施策をどう解釈すべきか?→ Next ここまで: MTDTにより、各施策の効果(HTE)の予測ができるようになった ↓ Next: それにもとづいて、Personalizeされた統合施策を作りたい
  21. HTE Model Understanding + Interpretable Policy Generation HTE estimation 実験の結果から、任意のHTE予測モデルで各

    施策のユーザーごとの効果を予測する Interpretable Policy Generation HTEモデルを用いて解釈可能な施策を導出する HTE model understanding 得られたHTEモデルの予測結果をユーザーご とに理解する 複数ある指標をどう統合するか? → 重み付けを調整する 施策ごとの予測結果をどう統合するか?→ Next 統合された施策をどう解釈すべきか?→ Next ここまで: MTDTにより、各施策の効果(HTE)の予測ができるようになった ↓ Next: それにもとづいて、Personalizeされた統合施策を作りたい 解釈可能 運用管理の便のため単一モデル プロダクトチームがチューニング可能 → イテレーション速度が重要 Meta規模で使えるスケーラビリティ こうしたい
  22. カテゴリ 種類数 概要 HTE依存 2 HTEの予測をもとにユーザーごとに施策を決定する決定木を学習する HTE非依存 2 HTEの予測を使わずにユーザーごとに施策を決定する決定木を学習する (高精度のHTEモデルを学習できないケースなど)

    アンサンブル 2 学習済みのPolicyを組み合わせる 複数の指標・施策があるときの施策決定を単一の決定木に落とし込む。これにより複数の施策を管理 する必要がなくなり、運用・管理がしやすくなる。 学習が高速で、プロダクトチームが決定木をインタラクティブにチューニングできる。 数百万のユーザー、数百種の特徴量というような大規模なデータでも決定木を学習可能。 概要 大規模データでのインタラクティブなチューニングに耐える、高速な決定木の構築方法を6種類提案。 決定木によるInterpretable Policy Generation
  23. HTE予測モデルの有無による施策評価方法の違い HTEあり → HTEを予測 HTEなし → 実績値を参照 とあるセグメントに 施策bを適用するとき a

    b 実 施 さ れ た 施 策 と 効 果 c 7 2 4 9 5 6 1 4 3 a b 実 施 さ れ た 施 策 と 効 果 c 7 2 4 9 5 6 1 4 3 a b 実 施 さ れ た 施 策 と 効 果 c 5 7 7 8 4 8 6 4 8 平均予測効果 avg(5,7,7,8,4,8,6,4,8) = 6.33 平均予測効果 avg(9,5,6) = 6.67
  24. a b 実 施 さ れ た 施 策 と

    効 果 c 7 2 4 9 5 6 1 4 3 a b HTE に 基 づ く 最 適 施 策 c HTE modelを用いたPolicy Generation GreedyTreeSearch HTE 幅優先で、親よりもアウトカムが改善する限りleafを二分割していく Distill-Policy 各ユーザーに対して、最適な施策をHTEをもとに割り当てし、それをmimicする決定木を学習する HTE modelにより全ユーザーに対して各施策の効果を推定しておき、それをもとに施策を決定する決定木 を学習。 ① 各施策毎にHTE予測 ② 各施策毎に指標を統合 ③ 最適施策を割り当て 割当を予測する決定木の 学習
  25. HTE modelを用いないPolicy Generation (No-HTE) Greedy Implementation 幅優先で、親よりもアウトカムが改善する限りleafを二分割していく Iterative Implementation 根からアウトカムが改善されるleaf=segmentを次々に切り出していく

    正確なHTE予測モデルが作りにくい状況で使える方法。2種類。
  26. Ensemble Policy Generation GUIDE-ExploreExploit ① ユーザーにランダムにPolicy k を割り当て ② Policy

    kで選ばれた施策 j の効果を実績なければHTE で割り当て ③ ユーザーのHTE予測値を、施策jに対しては②の値、 それ以外は0としてGreedyTreeSearch HTEを適用 各Policyは異なる特性を持つかもしれないので、いいとこ取りをするためにユーザーセグメントごとに割 り当てるPolicyを決定する決定木(Guidance Tree)をつくる。2種の構築方法を提案。 GUIDE-OPE 左右の子に異なるPolicyを割り当てるような単一指標に 関する最適な分割を網羅的に探索する。
  27. 実験結果

  28. Overallでは小さいほどよい segment内ではPEHEの分散は小さい方がよい segment間ではPEHEの分散は大きいほうがよい 可視化の制約のないT-Learnerは精度が良い(DTは...?) segment間のheterogeneityを考慮する唯一の手法R2Pが Between-segment var最良。一方PEHEを犠牲にしている。 同じ決定木だが、VT, Distill-HTEの精度がT-Learner DTと比

    べて良く、複雑なモデルの蒸留が効果的なよう。 HTE modelの選び方が重要。GBDT > RF/DT PEHE (Precision in Estimation of Heterogeneous Effect) 仮説 結果 Comparing Explanations of HTE Models COVID, Synthetic Aという2種の人工データでHTE modelの精度を比較 ↓ Lower is Better ↑ Larger is Better ↓ ↑ ↓ HTEモデルによる 予測施策相対効果 Ground Truthな 施策相対効果 ▪ Black Box □ White Box □ □ □ ▪ □ □ □ □ ▪ □ ▲ □ □ T-Learner ... 処置・未処置時の効果を個人毎に予測し、そのギャップを推定 Distil-HTE ... 本論文の提案手法。ベースのHTE予測モデルはT-Learner GBDT Virtual Twin ... T-Learnerと同様だが、決定木でギャップを推定しつつセグメント導出 R2P ... Between/Within-segmentの考慮をする唯一の決定木ベースのSOTA手法
  29. IHDPではそもそも多くのユーザーで施策1への割当でポジティブな効果があ り、personalizationの恩恵はほぼない。 Synthetic Aではpersonalizationの恩恵があり、単一施策への割当は不良。 解釈可能な手法がベスト。 Email Marketingは結果が複雑。BlackBoxがベスト。 木探索が最適(OptialTreeSearch)だからといって、regretが最小になると は限らない 結果

    → どのpolicyがよいかはデータ依存であり、モジュラーでかつ多数のpolicyを同 時並行的に試せるシステムを志向するべき Comparing Policy Learning Methods IHDP, Synthetic A, Email Marketingという3種のデータセットで検証 Assign all to treatment xxx ... 全部施策xxxへ割当 BlackBox ... T-Learner で予測された最適施策を個人ごとに割当 OptimalTreeSearch ... 最適なTreeを導出する手法(スケールしないの で小さいデータセットのみに適用) 比較対象のモデル
  30. Bridging Explanations and Policies 専門的なので割愛するが、納得性のある結果とのこと

  31. Deployment at META

  32. Personalizing UX Layout Using Interpretable Policies ページ毎のコンテンツ表示数を変えるような2種類のUX変更施策を実施。提案手法により、ガードレール の劣化を抑えつつゴール指標を改善する解釈可能なpolicyが得られた。 (本施策により、ガードレールを保ちつつ組織のゴール指標の数値目標の80%を達成できたらしい) 初期的なA/Bテストで、施策1はある

    コホートでガードレール指標を保ちつ つゴール指標を増加させた。 施策2はガードレール指標を許容でき ないレベルで破壊したが、ゴール指標 を改善した。 HTE modelは X-learner(BlackBox) Policy Generationを解釈可能な提案 手法で実施 前提 使用した手法
  33. Understanding Black-Box Personalization of Login Experience いつもどおりのログイン画面 email/メッセージ経由で送付されるone-clickなログインフロー 上記いずれかにするかをユーザーに選択させる画面 いつもどおりのログイン画面

    Webブラウザー経由でログインするユーザーはこのフローを好む email/メッセージ経由で送付されるone-clickなログインフロー アプリ経由でログインするユーザーはこのフローを好む 上記いずれかにするかをユーザーに選択させる画面 ログイン最近パスワード入力に失敗したユーザーのうち、デバイスが自分の所有物でないか最近ロ グインしていなかったユーザーは3番目のログインフローに最もポジティブに反応する デバイスをシェアしているユーザーは3番目のログインフローを好む ユーザーのアカウントが自動ログインされないときに下記のいずれのUXを提供すべきか 1. 2. 3. Distill-HTEで可視化したところ、下記の知見を得た 1. 2. 3. また、解釈可能にしたため、featureのバグにも気づけたとのこと
  34. Deployment Distil-HTEはMeta社内の実験で広く使われている。 Blackboxなpolicyもデプロイされているが、解釈可能なポリシーも頻繁に検討されている。

  35. 感想 とにかく決定木便利。簡略化した仕組みであればすぐにでも真似られそう。 木 木

  36. おしまい