Weitere ähnliche Inhalte
Ähnlich wie Counterfaual Machine Learning(CFML)のサーベイ (20)
Mehr von ARISE analytics (20)
Counterfaual Machine Learning(CFML)のサーベイ
- 3. ©2022 ARISE analytics 3
3
本資料の立ち位置
反実仮想機械学習の入門を兼ねたサーベイ資料
反実仮想機械学習に関する単独の解説資料をベースに、つながりが良くなるよ
うに整理した(つもり)
初学者の理解の手助けになれば幸いです
- 5. ©2022 ARISE analytics 5
5
Counterfactual Machine Learning(CFML)
次世代の意思決定技術として注目を浴びている
RecSys2021 Tutorial
Counterfactual Learning and Evaluation for Recommender Systems:
Foundations, Implementations, and Recent Advances
KDD2021 Tutorial
Counterfactual Explanations in Explainable AI: A Tutorial
RecSys 2021 Best Paper Awards にCFMLが選出
https://recsys.acm.org/best-papers/
トップカンファレンスのチュートリアルや
Best Paperに選出
- 6. ©2022 ARISE analytics 6
6
CFMLのビジネス適用
Artwork Personalization at Netflix
Netflixは同じ動画でもユーザによってサムネイル画像を変えている
ログデータを活用し、新しい施策をオフラインで評価(CFMLを活用)
https://netflixtechblog.com/artwork-personalization-c589f074ad76
ラブストーリーが好きな人は、恋愛的なサムネイルを
おっさんが好きな人は、おっさん的なサムネイルを
- 7. ©2022 ARISE analytics 7
7
CFMLのビジネス適用
Artwork Personalization at Netflix
Netflixは同じ動画でもユーザによってサムネイル画像を変えている
ログデータを活用し、新しい施策をオフラインで評価(CFMLを活用)
https://netflixtechblog.com/artwork-personalization-c589f074ad76
Contextual banditで学習したモデルを replay
(Off-Policy Evaluationの一種)で評価
本番環境に導入する前に、モデルの性能を評価
可能
- 8. ©2022 ARISE analytics 8
8
CFMLのビジネス適用
Reinforcement Learning for Recommender Systems: A Case Study on Youtube
Youtubeでユーザの視聴時間が最大化するようなレコメンドを目指す
強化学習でモデルを学習するとき、ユーザからのフィードバックにバイアスが生じる
システムが推薦した動画のフィードバックしか返ってこない
バイアスを吸収できるような形でオフライン評価
https://www.youtube.com/watch?v=HEqQ2_1XRTs
- 9. ©2022 ARISE analytics 9
9
Counterfactualとは
観測され得たけど、実際には観測されなかったデータ
例:A/Bテスト(無作為化比較実験:RCTともいう)
個体A
投薬あり
治癒
選択
- 10. ©2022 ARISE analytics 10
10
Counterfactualとは
観測され得たけど、実際には観測されなかったデータ
例:A/Bテスト(無作為化比較実験:RCTともいう)
個体A
投薬あり
投薬なし
治癒
?
選択
- 11. ©2022 ARISE analytics 11
11
Counterfactualとは
観測され得たけど、実際には観測されなかったデータ
例:A/Bテスト(無作為化比較実験:RCTともいう)
個体A
投薬あり
投薬なし
治癒
?
選択
観測不可能な
Counterfactual
- 12. ©2022 ARISE analytics 12
12
Counterfactualとは
観測され得たけど、実際には観測されなかったデータ
例:A/Bテスト(無作為化比較実験:RCTともいう)
個体A
投薬あり
投薬なし
治癒
?
選択
観測不可能な
Counterfactual
ギャップ=因果効果
- 13. ©2022 ARISE analytics 13
13
因果推論
Counterfactualを観測するための手法の一つ
似た集団のグループから無作為分割し、2つの施策の効果を測定して比較
投薬あり
投薬なし
2/3人
治癒
0/3人
治癒
ギャップ=因果効果
80代男性
- 14. ©2022 ARISE analytics 14
14
因果推論
Counterfactualを観測するための手法の一つ
似た集団のグループから無作為分割し、2つの施策の効果を測定して比較
投薬あり
投薬なし
2/3人
治癒
0/3人
治癒
ギャップ=因果効果
80代男性
因果推論は、
事後的に分析する
- 15. ©2022 ARISE analytics 15
15
因果推論をうまく適用できないケース
似たグループには同じ施策を適用した場合(例:レコメンド)
似た集団(=同じ特徴を持つ)には同じものをレコメンド
結果、未観測(Counterfactual)な部分が多くなる
アイテム
1 2 3 4
ユーザ
A 観測
B 観測
C 観測
D 観測
- 16. ©2022 ARISE analytics 16
16
因果推論をうまく適用できないケース
似たグループには同じ施策を適用した場合(例:レコメンド)
似た集団(=同じ特徴を持つ)には同じものをレコメンド
結果、未観測(Counterfactual)な部分が多くなる
アイテム
1 2 3 4
ユーザ
A 観測 未観測 未観測 未観測
B 未観測 未観測 未観測 観測
C 未観測 未観測 未観測 観測
D 観測 未観測 未観測 未観測
観測範囲は偏っており、未観測のCounterfactualを
代表するデータが得られていない
- 17. ©2022 ARISE analytics 17
17
因果推論をうまく適用できないケース
似たグループには同じ施策を適用した場合(例:レコメンド)
似た集団(=同じ特徴を持つ)には同じものをレコメンド
結果、未観測(Counterfactual)な部分が多くなる
アイテム
1 2 3 4
ユーザ
A 観測 未観測 未観測 未観測
B 未観測 未観測 未観測 観測
C 未観測 未観測 未観測 観測
D 観測 未観測 未観測 未観測
観測範囲は偏っており、未観測のCounterfactualを
代表するデータが得られていない
アイテム1を推薦しても買ってもら
えなかったけど、アイテム3を推薦
すれば、買ってもらえたかも?
- 18. ©2022 ARISE analytics 18
18
Counterfactual Machine Learning とは?
反実仮想(Counterfactual)を含んだアルゴリズムの学習・評価手法
目的:反実仮想(Counterfactual)を含んだ世界全体を良く予測したい
方法:ログデータを活用して、ログが観測されなかった領域を最適化する
Faual World
(観測された世界)
一般的なレコメンド/予測は
この世界にFitするように
モデル学習
Counterfactual World
(観測不可能な世界)
本来はこの世界も含めて
最適化したい
Faual Worldのログデータを活用して、
Counterfactual Worldを観測・評価し、
全体最適化につなげる
- 20. ©2022 ARISE analytics 20
20
バンディットアルゴリズム
Interaive Learningの一種
実験ログに基づき、Policy(施策方針)を逐一更新する
探索と活用をバランス良く行いながら、最終的な報酬(因果効果)を最大化する
強化学習に似た考え方
バンディットマシン(スロットマシン)が由来
たくさんあるバンディットマシンから、どれを選べば一番儲かるか?(=報酬最大化)
- 22. ©2022 ARISE analytics 22
22
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
- 23. ©2022 ARISE analytics 23
23
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
ここでいうPolicyとは、
aionを選択するモデル
のことを指す
- 24. ©2022 ARISE analytics 24
24
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
推薦
- 25. ©2022 ARISE analytics 25
25
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
購入しない
推薦
- 26. ©2022 ARISE analytics 26
26
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
購入しない
推薦
Feedbackして
Policy更新
- 27. ©2022 ARISE analytics 27
27
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
推薦
- 28. ©2022 ARISE analytics 28
28
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
購入する
推薦
- 29. ©2022 ARISE analytics 29
29
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
購入する
推薦
Feedbackして
Policy更新
- 30. ©2022 ARISE analytics 30
30
バンディットアルゴリズム
Interaive Learningの一種
報酬が最大化するようにPolicyを更新して最適化
Policy
ユーザ情報
購入する
推薦
Feedbackして
Policy更新
この繰り返しでPolicy最適化
※1)実運用ではサンプル単位ではなく数時間ごとのバッチ単位でPolicyの更新が行われる事が多い
※2)Policyの意思決定は確率的に表現されることが多い(スコアを出力する)
- 31. ©2022 ARISE analytics 31
31
バンディットアルゴリズムの報酬最大化
報酬最大化=因果効果最大化
選択肢aと選択肢bがある
選択肢aの効果を以下のように考える
選択肢aを選ぶときの報酬は以下のようになる
τ𝑎 = 𝑌𝑎
(1)
− 𝑌𝑎
(0)
𝑅𝑎 = 𝑌𝑎
(1)
+ 𝑌𝑏
0
= 𝑌𝑎
0
+ 𝑌𝑏
0
+ τ𝑎
aが選ばれた
ときの売上
aが選ばれない
ときの売上
aが選ばれた
ときの報酬
← 因果効果 と同じ
因果推論
n Counterfactualを観測するための⼿法の⼀つ
l似た集団のグループから無作為分割し、2つの施策の効果を測定して⽐較
10
投薬あり
投薬なし
2/3⼈
治癒
0/3⼈
治癒
ギャップ=因果効果
80代男性
- 32. ©2022 ARISE analytics 32
32
バンディットアルゴリズムの報酬最大化
報酬最大化=因果効果最大化
選択肢ごとに報酬を推定して比較する
𝑅𝑎 = 𝑌𝑎
0
+ 𝑌𝑏
0
+ τ𝑎
𝑅𝑏 = 𝑌𝑎
0
+ 𝑌𝑏
0
+ τ𝑏
- 33. ©2022 ARISE analytics 33
33
バンディットアルゴリズムの報酬最大化
報酬最大化=因果効果最大化
選択肢ごとに報酬を推定して比較する
𝑅𝑎 = 𝑌𝑎
0
+ 𝑌𝑏
0
+ τ𝑎
𝑅𝑏 = 𝑌𝑎
0
+ 𝑌𝑏
0
+ τ𝑏
選択肢ごとに報酬を推定して比較
↓
因果効果の比較
- 34. ©2022 ARISE analytics 34
34
A/Bテストとバンディットアルゴリズム
A/Bテスト
AかBの2つの選択肢のどちらがより優れているかを統計学的に判断
バンディットアルゴリズム
限られた試行の中で報酬の最大化を目指す
t
A
B
集団A
集団B
A/Bテスト A
Aがよい
t
A B
ユーザ1
Policy Policy Policy
B
feedback
ユーザ2
feedback
ユーザ3
feedback ・・・
・・・
- 35. ©2022 ARISE analytics 35
35
事前学習レコメンドとバンディットアルゴリズム
事前学習レコメンド
事前にPolicyを学習、 Interaiveなポリシー更新は行わない
バンディットアルゴリズム
限られた試行の中で報酬の最大化を目指す
Policy
データ
セット
t
A B
ユーザ1
Policy Policy Policy
B
feedback
ユーザ2
feedback
ユーザ3
feedback ・・・
・・・
Policy
ユーザ1
ユーザ2
ユーザ3
A
B
A
- 36. ©2022 ARISE analytics 36
36
(参考)バンディットアルゴリズムの手法一覧
手法 概要 利点 欠点
ε-greedy
確率εで探索を、確率1-εで活用を行う。
探索時は、すべての腕からランダムに
腕kを選択する。
シンプルで理解しやすい
・すべての選択肢を平等に扱ってしまう
ため、事前情報の活用ができない
・常に確率εで探索を行ってしまうため、
報酬がかなり大きいものが見つかっても、
探索ペースを変えない
Softmax
それぞれの腕を探索する確率p_kを個別
に設定する。確率p_k は腕kから得られ
る報酬の期待値から算出する
既知の情報を活かし、良さそう
な腕ほど探索されやすくなる
選択肢の分散を考慮していないため、試
行回数が多い腕も少ない腕も同じ価値に
なる
UCB1
期待値に加え、試行回数を考慮した腕
の選択を行う
・既知の情報に加え、未知度が
高い腕を優先的に探索できる
・試行回数が増えるほど、選択
が最も良い腕に収束する
・期待値が小さい腕でも、試行回数が少
なければ選ばれてしまう事がある
・バッチ単位で推定量を更新する場合は、
挙動が不安定になりやすい
Thompson
Sampling
腕から得られる報酬の期待値を確率的
にモデル化する
既知情報が全く同じであっても、
異なる腕を選択するため、バッ
チ処理でも挙動が安定する
- 38. ©2022 ARISE analytics 38
38
Policyの更新
本番環境のPolicyをどのタイミングで更新するか?
Interaive Learningは適切に設計すればうまく学習できるが、リスクもある
Tay AIはユーザとのInteraiveな会話で賢くなるはずが、差
別的な発言をするように
Policy=施策方針・推薦を行うモデル
のこと
- 39. ©2022 ARISE analytics 39
39
Policyの更新
本番環境のPolicyをどのタイミングで更新するか?
Interaive Learningは適切に設計すればうまく学習できるが、リスクもある
既存
Policy 新しく学習したPolicyはイケてる?イケてない?
- 40. ©2022 ARISE analytics 40
40
A/Bテスト(RCT)はコストが高い
A/Bテストを何度も実行するのは非現実的
A/Bテストでポリシー π の価値𝑉 π を測定する
価値測定をお手軽にできないか?
t
旧Policy
新Policy
集団A
集団B
A/Bテスト 旧Policy
1サイクル
- 41. ©2022 ARISE analytics 41
41
ログデータの活用
ログデータを活用してポリシーの評価を行う
Policy π
ユーザ情報
購入する
推薦
↓
特徴 𝑥
↓
aion a
↓
Reward r
ログデータ D = (𝑥, 𝑎𝑖, 𝑟𝑖) 𝑖=1
𝑛
↓
リクエストを繰り返すごとに蓄積
↓
リクエスト𝑖
推薦が成功したら1
失敗したら0
- 42. ©2022 ARISE analytics 42
42
A/Bテストの評価
価値を定義する
報酬の期待値を価値として定義
𝑉𝐴/𝐵 𝜋𝑒; 𝐷𝑒 ≔
1
𝑛
𝑖
𝑛
𝑟𝑖
ログデータ D = (𝑥, 𝑎𝑖, 𝑟𝑖) 𝑖=1
𝑛
から報酬の平均を算出
(:=) 定義する、という意味
推薦の成功率
(購入してもらえた割合)
- 43. ©2022 ARISE analytics 43
43
Off-Policy Evaluation(OPE)
目的:ログデータ𝐷0を活用してポリシー 𝜋𝑒の評価を行う
𝜋0の代わりに𝜋𝑒 を使っていたら、結果はどうなっていたか?
これをオフラインで探る
𝑉 𝜋𝑒 ≈ 𝑉 𝜋𝑒; 𝐷0
𝜋𝑒の本来の価値
新しいポリシー 𝜋𝑒
古いポリシー 𝜋0
のログデータ𝐷0
𝐷0だけを用い、
𝜋𝑒の本来の価値を
近似的に得る
OPE estimate
ここがCounterfactual
な要素
Off-Policy Evaluation
=ポリシーをオフライン環境で評価する
- 44. ©2022 ARISE analytics 44
44
A/BテストとOPEの処理
A/Bテスト:複数ポリシーを順次処理で評価
OPE:複数ポリシーを並列処理で評価
ログデータ𝐷1
from ポリシー 𝜋1
→価値 𝑉 𝜋1
ログデータ𝐷2
from ポリシー 𝜋2
→価値 𝑉 𝜋2
ログデータ𝐷3
from ポリシー 𝜋3
→価値 𝑉 𝜋3
ログデータ𝐷4
from ポリシー 𝜋4
→価値 𝑉 𝜋4
ログデータ𝐷0
from ポリシー 𝜋0
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋10
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋20
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋1
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋6
𝑉 𝜋30
- 45. ©2022 ARISE analytics 45
45
A/BテストとOPEの利点・欠点
A/Bテスト OPE
利点
・直感的でわかりやすい
・バイアスがない
・必要な前提条件が少ない
・並列処理ができるため同時に複数のポリシーを
試すことができる
・悪いポリシーを公開する懸念がない
・過去のログデータを活用できる
・素早く試すことができる
・ポリシーを実装しなくてもよい(ポリシーが生
成するログデータを自作して評価すればよい)
欠点
・悪いポリシーを公開する懸念がある
・手間と時間がかかる
・逐次処理のため同時に複数のポリシーを
試すことができない
・評価がうまくいかないことがある
・必要な前提条件が多い
(バイアスなどを気にしないといけない)
- 46. ©2022 ARISE analytics 46
46
Off-Policy Evaluation(OPE)
OPEのゴール:𝑉 𝜋𝑒 ≈ 𝑉 𝜋𝑒; 𝐷0 を実現すること
𝑉 𝜋𝑒 と𝑉 𝜋𝑒; 𝐷0 の誤差が小さければ良い
誤差はmean-squared-error(MSE)で測定
𝑀𝑆𝐸 𝑉; 𝜋𝑒 ≔ 𝔼𝐷0
𝑉 𝜋𝑒 − 𝑉 𝜋𝑒; 𝐷0
2
𝜋𝑒の本来の価値 OPE estimate
MSEが小さくなるようなOPE estimateの設計がポイント
バイアスと分散(網羅性)を考慮することが重要
古いポリシーのログデータを使って新しいポリシーの
価値を算出したとき、できるだけA/Bテストの結果に
近づくような価値算出方法を設計する、という意味
- 47. ©2022 ARISE analytics 47
47
OPEの代表的な手法
Direct Method
(DM)
Inverse
Propensity Score
(IPS)
Clipped IPS
(CIPS)
Self-Normalized
IPS
(SNIPS)
Doubly Robust
(DR)
DR with
Optimistic
Shrinkage
(DRos)
バイアス×、網羅性○ バイアス○、網羅性×
ハイブリッド
赤字は特に重要な手法
- 49. ©2022 ARISE analytics 49
49
OPEで考慮すべきこと
Counterfactualな世界も含めて、以下を満たしたい
バイアス → 小さい(偏っていない)
分散→大きい(網羅されている)
実際に観測されるログデータは、偏っている
ポリシーの観測にあたっては、Counterfactualな領域も含めて評価したい
アイテム
1 2 3 4
ユーザ
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
- 50. ©2022 ARISE analytics 50
50
OPEで考慮すべきこと
Counterfactualな世界も含めて、以下を満たしたい
バイアス → 小さい(偏っていない)
分散→大きい(網羅されている)
実際に観測されるログデータは、偏っている
ポリシーの観測にあたっては、Counterfactualな領域も含めて評価したい
アイテム
1 2 3 4
ユーザ
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
Counterfactualな
領域
- 51. ©2022 ARISE analytics 51
51
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル
- 52. ©2022 ARISE analytics 52
52
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル 未観測
𝑥, 𝑎 = (𝐵, 3)
を入力
- 53. ©2022 ARISE analytics 53
53
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル 未観測
𝑥, 𝑎 = (𝐵, 3)
を入力
- 54. ©2022 ARISE analytics 54
54
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル 未観測
𝑥, 𝑎 = (𝐵, 3)
を入力
𝑟(𝐵, 3)
↓
購入 or 未購入
- 55. ©2022 ARISE analytics 55
55
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 未観測 未観測 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル 未観測
𝑥, 𝑎 = (𝐵, 3)
を入力
𝑟(𝐵, 3)
↓
購入 or 未購入
- 56. ©2022 ARISE analytics 56
56
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 未観測 未購入 未観測
B 未観測 未観測 未観測 購入
C 未観測 未観測 未観測 購入
D 未購入 未観測 未観測 未観測
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル 未観測
𝑥, 𝑎 = (𝐵, 3)
を入力
𝑟(𝐵, 3)
↓
購入 or 未購入
- 57. ©2022 ARISE analytics 57
57
Direct Method(DM)
アイデア:Rewardを補う(人間の判断を模した)モデルを学習する
うまくモデル化できていれば、未観測領域も観測できる
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 購入 未購入 未購入
B 未購入 未購入 購入 購入
C 未購入 未購入 購入 購入
D 未購入 未購入 未購入 購入
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
本来の判断結果
reward r はユーザ特徴xと
推薦結果aに対する確率分布
Rewardを
補うモデル
- 58. ©2022 ARISE analytics 58
58
Direct Method(DM)
モデルの価値を評価
全ユーザ × アクションの組み合わせで報酬を求め、平均を算出
アイテム(推薦結果a)
1 2 3 4
ユーザ
(特徴x)
A 未購入 購入 未購入 未購入
B 未購入 未購入 購入 購入
C 未購入 未購入 購入 購入
D 未購入 未購入 未購入 購入
𝑉𝐷𝑀 𝜋𝑒; 𝐷0; 𝑟 ≔
1
𝑛
𝑖=1
𝑛
𝑎∈𝒜
𝜋𝑒 𝑎 𝑥𝑖 𝑟(𝑥𝑖, 𝑎)
𝒜: 𝑎の集合
𝜋𝑒(𝑎|𝑥𝑖):ポリシーの出力( 𝑥𝑖 に対する 𝑎 の出力)
𝑟(𝑥𝑖, 𝑎): 𝑥𝑖 に対する 𝑎 の報酬
ユーザ𝑥𝑖 に対してポリシー 𝜋𝑒がアクション𝑎が
推薦(1)を出力したときの報酬の平均値
- 59. ©2022 ARISE analytics 59
59
Direct Method(DM)
価値評価モデルの学習と評価
価値評価モデル 𝑟(𝑥, 𝑎) はログデータD = (𝑥, 𝑎𝑖, 𝑟𝑖) 𝑖=1
𝑛
から学習
単純な教師あり機械学習問題として設定可能
𝑟 ∈ 𝑎𝑟𝑔𝑚𝑖𝑛
1
𝑛
𝑖=1
𝑛
(𝑟𝑖 − 𝑟 𝑥𝑖, 𝑎 )2
上の式を最小化する価値評価モデル𝑟(𝑥, 𝑎) を探索
DNN、リッジ回帰、勾配ブースティング、何でもOK
- 61. ©2022 ARISE analytics 61
61
Model-Based OPE:Direct Method(DM)の問題
ログデータを学習に使うため、バイアスが大きい
一般的に、うまくモデル化するためには低バイアスでよく網羅されたデータが必要
観測されたログデータは、何らかのバイアスがかかっていることが多い
古いレコメンドモデルの推薦結果、など
Faual World
(観測された世界)
Counterfactual World
(観測不可能な世界)
Faual Worldに最適化されたモデルを
使って、Counterfactual Worldを
観測しようとしている
- 62. ©2022 ARISE analytics 62
62
Inverse Propensity Score (IPS) Estimator
評価を計算するときに重み付けする
新しいPolicyの傾向スコアを既存Policyの傾向スコア(出現比率)で割る
既存Policyと新しいPolicyの傾向が違うものほど重みが大きくなる → バイアスが解消
𝑉𝐼𝑃𝑆 𝜋𝑒; 𝐷0 ≔
1
𝑛
𝑖=1
𝑛
𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
𝑟𝑖
←小さいほど𝑟𝑖 に対する重み大
←大きいほど𝑟𝑖 に対する重み大
※ 傾向スコアの出力は0でないことが前提
https://drive.google.com/file/d/1ZXWT8Y0ebjsTzzChzWuKVEUkUWVSkIrG/view
傾向スコアで割ることで、比率をそろえることができる
- 63. ©2022 ARISE analytics 63
63
IPSの傾向スコア
傾向スコア:Policyがaionを選択する確率
Policy
ユーザ情報
推薦
推薦 Score=0.7
Score=0.3
- 65. ©2022 ARISE analytics 65
65
IPSの直感的な理解
傾向スコアで割ることで、1対1になる(偏りが解消される)
Policy
ユーザ情報
推薦
推薦
0.7/0.7 = 1
×10回 0.3/0.3 = 1
- 66. ©2022 ARISE analytics 66
66
IPSによる補正
Policy 𝜋0 𝑎𝑖 𝑥𝑖
の傾向スコア
Policy 𝜋𝑒 𝑎𝑖 𝑥𝑖
の傾向スコア
観測された
reward
IPSによる
重み付け結果
𝑉𝐼𝑃𝑆 𝜋𝑒; 𝐷0 ≔
1
𝑛
𝑖=1
𝑛
𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
𝑟𝑖 = 0.5
a1 a2 a3 a1 a2 a3 a1 a2 a3 a1 a2 a3
x1 0.3 0.6 0.1 x1 0.6 0.3 0.1 x1 0 x1 0
x2 0.5 0.4 0.1 x2 0.2 0.2 0.6 x2 1 x2 0.5
x3 0.1 0.1 0.8 x3 0.2 0.2 0.6 x3 1 x3 0.75
a1 a2 a3 a1 a2 a3 a1 a2 a3 a1 a2 a3
x1 0.3 0.6 0.1 x1 0.3 0.3 0.4 x1 0 x1 0
x2 0.5 0.4 0.1 x2 0.2 0.7 0.1 x2 1 x2 1.75
x3 0.1 0.1 0.8 x3 0.1 0.1 0.8 x3 1 x3 1
Policy 𝜋𝑒 𝑎𝑖 𝑥𝑖 を変えてみる
𝑉𝐼𝑃𝑆 𝜋𝑒; 𝐷0 = 0.42
𝑉𝐼𝑃𝑆 𝜋𝑒; 𝐷0 = 0.92
Rewardが得られる選択肢のスコアが高くなれば、 𝑉𝐼𝑃𝑆も高くな
る
↓
- 67. ©2022 ARISE analytics 67
67
Clipped Inverse Propensity Score (CIPS) Estimator
IPSの重みに上限を設定
ハイパーパラメータ λ を設定する
λはスカラ値
𝑉𝐶𝐼𝑃𝑆 𝜋𝑒; 𝐷0, λ ≔
1
𝑛
𝑖=1
𝑛
𝑚𝑖𝑛
𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
, λ ∙ 𝑟𝑖
IPSの重みが大きく
なりすぎたときはλを使う
- 68. ©2022 ARISE analytics 68
68
Clipped Inverse Propensity Score (CIPS) Estimator
IPSとCIPSを比較
a1 a2 a3 a1 a2 a3 a1 a2 a3
x1 0.5 0.6 -0.1 x1 0.3 0.3 0.4 x1 0
x2 0.5 0.01 0.49 x2 0.2 0.5 0.3 x2 5
x3 0.1 0.1 0.9 x3 0.2 0.2 0.1 x3 10
Policy 𝜋0 𝑎𝑖 𝑥𝑖
の傾向スコア
Policy 𝜋𝑒 𝑎𝑖 𝑥𝑖
の傾向スコア
観測された
reward
IPSによる
重み付け結果
a1 a2 a3
x1 0.00
x2 250.00
x3 1.11
a1 a2 a3
x1 0.00
x2 5.00
x3 1.11
CIPS(λ=5)による
重み付け結果
値のばらつきを抑え、評価を安定化
𝑉𝐶𝐼𝑃𝑆 𝜋𝑒; 𝐷0, λ = 2.04
𝑉𝐼𝑃𝑆 𝜋𝑒; 𝐷0 = 83.7
- 69. ©2022 ARISE analytics 69
69
Self-Normalized Inverse Propensity Score (SNIPS) Estimator
IPSを正規化
ハイパーパラメータ λ は不要
IPSの重みの平均値で割る
𝑉𝑆𝑁𝐼𝑃𝑆 𝜋𝑒; 𝐷0 ≔
1
𝑛 𝑖=1
𝑛 𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
∙ 𝑟𝑖
1
𝑛 𝑖=1
𝑛 𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
- 70. ©2022 ARISE analytics 70
70
Self-Normalized Inverse Propensity Score (SNIPS) Estimator
IPSとSNIPSを比較
a1 a2 a3 a1 a2 a3 a1 a2 a3
x1 0.5 0.6 -0.1 x1 0.3 0.3 0.4 x1 0
x2 0.5 0.01 0.49 x2 0.2 0.5 0.3 x2 5
x3 0.1 0.1 0.9 x3 0.2 0.2 0.1 x3 10
Policy 𝜋0 𝑎𝑖 𝑥𝑖
の傾向スコア
Policy 𝜋𝑒 𝑎𝑖 𝑥𝑖
の傾向スコア
観測された
reward
IPSによる
重み付け結果
a1 a2 a3
x1 0.00
x2 250.00
x3 1.11
ハイパラなしで安定化
𝑉𝑆𝑁𝐼𝑃𝑆 𝜋𝑒; 𝐷0, λ = 4.95
𝑉𝐼𝑃𝑆 𝜋𝑒; 𝐷0 = 83.7
平均重み
1
𝑛 𝑖=1
𝑛 𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
= 16.90
- 71. ©2022 ARISE analytics 71
71
4手法の比較
SNIPSが安定
DMは少ないログデータでもうまく
動くが、性能がスケールしない
IPSは少ないログデータだと性能が
低いが、ログデータの量に応じてス
ケールする
CIPSはハイパラの調整が難しくメ
リット少ない
SNIPSはハイパラの調整不要でうま
くいきやすい
https://drive.google.com/file/d/1ZXWT8Y0ebjsTzzChzWuKVEUkUWVSkIrG/view
- 72. ©2022 ARISE analytics 72
72
DMとIPS系の比較
Direct Method(DM):バイアス×、網羅性○
Inverse Propensity Score (IPS):バイアス○、網羅性×
a1 a2 a3
x1 0
x2 1
x3 1
a1 a2 a3
x1 0
x2 0.5
x3 0.75
Direct Methodによる
疑似観測
a1 a2 a3
x1 0 0 1
x2 0 1 1
x3 1 0 1
𝑟(𝑥, 𝑎)
a1 a2 a3
x1 0
x2 1
x3 1
𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
𝑟𝑖
IPSによる
逆重み付け
- 74. ©2022 ARISE analytics 74
74
Doubly Robust (DR) Estimator
DMとIPS系のハイブリッド手法
𝑉𝐷𝑅 𝜋𝑒; 𝐷0, 𝑟 ≔ 𝑉𝐷𝑀 𝜋𝑒; 𝐷0, 𝑟 +
1
𝑛 𝑖=1
𝑛 𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
(𝑟𝑖− 𝑟(𝑥𝑖, 𝑎𝑖))
Direct Method Rewardの真値と
予測値の差分
IPSの重み
𝑉𝐷𝑀 𝜋𝑒; 𝐷0; 𝑟 ≔
1
𝑛
𝑖=1
𝑛
𝑎∈𝒜
𝜋𝑒 𝑎 𝑥𝑖 𝑟(𝑥𝑖, 𝑎)
DMの前提:バイアスがなくRewardモデル 𝑟(𝑥𝑖, 𝑎𝑖) がうまくモデル化できていること
→ モデル化できているときはDMだけで価値計算できるように設計(右辺が0に近似化)
うまくモデル化できていないときは、Rewardの真値とモデル予測値のギャップに応じてIPSで
補正する(右辺の比率が大きくなる)
Rewardモデルが
うまく近似化できてい
ればゼロ
𝑟 𝑥, 𝑎 = 𝔼 𝑟 𝑥, 𝑎 ≈ 𝑟(𝑥, 𝑎)
- 75. ©2022 ARISE analytics 75
75
Doubly Robust (DR) Estimator
DMとIPS系のハイブリッド手法
基本はうまくいくが、旧ポリシーと新ポリシーにギャップが有りすぎて重みが大きくな
るとうまく行かないことがある
- 76. ©2022 ARISE analytics 76
76
Doubly Robust with Optimistic Shrinkage (DRos) Estimator
重みの発散を抑えるハイパーパラメータλを導入
𝑉𝐷𝑅𝑜𝑠 𝜋𝑒; 𝐷0, 𝑟, λ ≔ 𝑉𝐷𝑀 𝜋𝑒; 𝐷0, 𝑟 +
1
𝑛 𝑖=1
𝑛 λ∙𝑤 𝑥𝑖,𝑎𝑖
𝑤2 𝑥𝑖,𝑎𝑖 +λ
(𝑟𝑖− 𝑟(𝑥𝑖, 𝑎𝑖))
重み 𝑤 𝑥𝑖, 𝑎𝑖 が大きくなりすぎたときに補正する効果がある
𝑉𝐷𝑅 𝜋𝑒; 𝐷0, 𝑟 ≔ 𝑉𝐷𝑀 𝜋𝑒; 𝐷0, 𝑟 +
1
𝑛 𝑖=1
𝑛
𝑤 𝑥𝑖, 𝑎𝑖 (𝑟𝑖− 𝑟(𝑥𝑖, 𝑎𝑖))
𝑤 𝑥𝑖, 𝑎𝑖 =
𝜋𝑒 𝑎𝑖 𝑥𝑖
𝜋0 𝑎𝑖 𝑥𝑖
例:λ=10
𝑤 𝑥𝑖, 𝑎𝑖 1 2 4 8 16 32 64 128
λ ∙ 𝑤 𝑥𝑖, 𝑎𝑖
𝑤2 𝑥𝑖, 𝑎𝑖 + λ
0.91 1.43 1.54 1 0.6 0.310.160.08
- 77. ©2022 ARISE analytics 77
77
Doubly Robust with Optimistic Shrinkage (DRos) Estimator
重みの発散を抑えるハイパーパラメータλを導入
重みが大きくなりすぎても、うまく価値を近似化できている
- 78. ©2022 ARISE analytics 78
78
OPEの代表的な手法
Direct Method
(DM)
Inverse
Propensity Score
(IPS)
Clipped IPS
(CIPS)
Self-Normalized
IPS
(SNIPS)
Doubly Robust
(DR)
DR with
Optimistic
Shrinkage
(DRos)
Model-Base
バイアス×、網羅性○
Model-Free
バイアス○、網羅性×
Hybrid
赤字は特に重要な手法
- 79. ©2022 ARISE analytics 79
79
どれを使うべきか?
基本はケースバイケースだが、一応の目安はある
SNIPSは調整が容易で大体の場合う
まくいく
DRosはハイパラ調整を頑張って
性能を追求したい場合に有効
- 81. ©2022 ARISE analytics 81
81
Open Bandit Dataset
ZOZOTOWNのファッション推薦データ
ZOZOの推薦アルゴリズムから取得された2800万件の推薦データが格納
実世界のデータを用いたオープンデータとして価値を持つ
既存の研究は、①人工データでの評価(非現実的)、②クローズドデータでの評価
(再現不可)、でありオープンかつ大規模実世界データが存在しなかった
https://speakerdeck.com/usaito/off-policy-evaluationfalseji-chu-toopen-bandit-dataset-and-pipelinefalseshao-
jie
- 82. ©2022 ARISE analytics 82
82
Open Bandit Pipeline
BanditやOPEの実験を容易かつ統一された設定で行うための基盤
Policyの実装(Bandit)、オフライン評価(OPE)が可能
今回紹介したアルゴリズムをはじめ、代表的な手法をカバー
- 83. ©2022 ARISE analytics 83
83
Open Bandit Dataset & Pipeline の期待される使い方
新しいアルゴリズムを Open Bandit Dataset & Pipeline で評価
整備されているので、業務データよりもお手軽に評価できる
有望そうなアルゴリズムだけ、業務データに適用できるようIFを修正
技術調査に活用
Open Bandit Dataset を使って評価したアルゴリズムであれば、一定の信頼性がある
Open Bandit Pipeline で実装されていれば、追試容易
- 84. ©2022 ARISE analytics 84
84
お試し環境
Google Colab で実験可能
https://colab.research.google.com/github/st-tech/zr-
obp/blob/master/examples/quickstart/obd.ipynb#scrollTo=nvMA44AfyCWO
- 87. ©2022 ARISE analytics 87
87
XAI 〜AIローンを例にして〜
なぜモデルがその結果を出力したのかを説明する
今の学歴では生涯年
収が低いことが予測
されたため、お金を
お貸しすることはで
きません
・・・・
えっじゃあどうす
ればいいの?
- 88. ©2022 ARISE analytics 88
88
Counterfactual XAI 〜AIローンを例にして〜
反実仮想を用いて説明
今の学歴では生涯年収
が低いことが予測され
たため、お金をお貸し
することはできません。
でも、最終学歴が博士
ならお貸しすることが
できます
よし、D進だ!
Counterfactualな予測
+因果関係の提示
- 89. ©2022 ARISE analytics 89
89
Counterfactual Examples
有益なCounterfactual Exampleをリストアップ
https://www.microsoft.com/en-us/research/blog/open-source-library-provides-
explanation-for-machine-learning-through-diverse-Counterfactuals/
- 90. ©2022 ARISE analytics 90
90
Counterfactual Examples
有益なCounterfactual Exampleをリストアップ
https://www.microsoft.com/en-us/research/blog/open-source-library-provides-
explanation-for-machine-learning-through-diverse-Counterfactuals/
最小の変化(手間)で
ローンOKにしたい
Counterfactual XAI
↓
予測結果を変えるため
の最小摂動を説明
- 91. ©2022 ARISE analytics 91
91
Counterfactual XAIに求められる要素
Close to Predictions
必要な摂動(変化)はできるだけ小さく
Similarity
もとの状態にできるだけ似ているように
Rationality
実現できるように提案する
- 92. ©2022 ARISE analytics 92
92
〜Close to Predictions〜
必要な摂動(変化)はできるだけ小さく
今の学歴では生涯年収
が低いことが予測され
たため、お金をお貸し
することはできません。
でも、アメリカに移住
してGoogleとAmazon
とFacebookとAppleを
兼務して、データサイ
エンティストとしてバ
リバリ活躍して、年収
が5倍になればお貸し
することができます
もっとお手軽なの
ない?
- 93. ©2022 ARISE analytics 93
93
〜 Similarity 〜
もとの状態にできるだけ似ているように
今の学歴では生涯年収
が低いことが予測され
たため、お金をお貸し
することはできません。
でも、仕事をやめて
ビットコインで一儲け
して資産10倍になれ
ばお貸しすることがで
きます
それって自分の
キャリア全否定だ
よね
- 94. ©2022 ARISE analytics 94
94
〜 Rationality 〜
できそうなことを提案する
今の学歴では生涯年収
が低いことが予測され
たため、お金をお貸し
することはできません。
でも、最終学歴が博士
ならお貸しすることが
できます
よし、D進だ!
- 95. ©2022 ARISE analytics 95
95
〜 Rationality 〜
できそうなことを提案する
前回相談の時点で博士
になっていればローン
をお貸しできましたが、
今は年をとっているた
めお貸しできません
博士になりました。
今度こそローン貸
してください
年を取らずに学歴を積め👊
と言っている。
Counterfactualだけど
非現実的な予測
・・・・
〜数年後〜
- 96. ©2022 ARISE analytics 96
96
Counterfactual Examples生成のための手法
手動で設定
kNNで最も近い反例
を探し、
Counterfactualにな
る重みを取得
特徴反転
(借金なくすなど)
男→女など実現不可な
ものはやらない
Counterfactual
Prototypeを作成し、そ
れをヒントにExample
を作成
GANで埋め込み特徴を
調整し、
Counterfactual
Exampleを生成
- 97. ©2022 ARISE analytics 97
97
非構造データのCounterfactual World
〜
https://drive.google.com/file/d/1uRo9kmoyA9CvJwDm2z1mOp0DmVa2Jq2v/view
- 98. ©2022 ARISE analytics 98
98
Counterfactual XAI for NLP
テキストの意味を変えるために
必要な修正を提示
(できるだけ少ない修正で実現)
https://aclanthology.org/2020.coling-main.541.pdf
- 99. ©2022 ARISE analytics 99
99
Counterfactual XAI for CV
ピンクの線を追加することで、
他の文字になることを説明
認識結果に特に影響を与えた部位(ここで
はクチバシの色)に対してCounterfactual
な事例を提示し、説明補強
他のクラスになるためには
どの部位が必要かを説明
https://arxiv.org/pdf/1802.07623.p
df
https://ojs.aaai.org/index.php/AAAI/article/view/564
3
https://proceedings.mlr.press/v97/goyal19a.ht
ml
- 100. ©2022 ARISE analytics 100
100
Counterfactual XAI for Recommender System
なぜこの推薦結果が出たかを、Counterfactualな事例
(XXをやらなかったら、推薦結果が変わっていたよ!)を使って説明
https://arxiv.org/pdf/1911.08378.pdf
推薦結果に大きな影響を与えた行動を列挙
- 101. ©2022 ARISE analytics 101
101
Counterfactual XAI for Graph
グラフ認識(ここではノード認識)に大きな影響を与えたサブグラフを抽出して提示
周囲のノード種別を他のものに変更(=Counterfactual)したら結果が変わるものをサブグラフとして抽出
https://papers.nips.cc/paper/2019/file/d80b7040b773199015de6d3b4293c8ff-Paper.pdf
左:球技が好きな友人が多いので、バスケが好きと予測
右:水遊びやビーチバレーが好きなので、セーリングが好きと予測
- 102. ©2022 ARISE analytics 102
102
Counterfactual XAI for library
DiCE
Microsoftのライブラリ
XAIに有効な反実仮想サンプルを生成
今後はLIMEやSHAPと組み合わせ可能に
- 103. ©2022 ARISE analytics 103
103
参考文献
Counterfactual Machine Learningの概要 - Speaker Deck
バンディットと因果推論 - Speaker Deck
RecSys2021 Tutorial (google.com)
【記事更新】私のブックマーク「反実仮想機械学習」(Counterfactual Machine Learning, CFML) – 人工知能学会 (The Japanese Society for Artificial
Intelligence) (ai-gakkai.or.jp)
CS7792 Counterfactual Machine Learning , T. Joachims, Cornell University
ICML 2017 Tutorial on Real World Interaive Learning (hunch.net)
SIGIR 2016 Tutorial: Counterfactual Evaluation and Learning (cornell.edu)
YouTubeの推薦アルゴリズムの変遷を追う〜深層学習から強化学習まで〜 | by Jun Ernesto Okumura | Eureka Engineering | Medium
GitHub - hanjuku-kaso/awesome-offline-rl: An index of algorithms for offline reinforcement learning (offline-rl)
Doubly Robust Policy Evaluation and Optimization (arxiv.org)
Miro Dudík · Doubly Robust Off-Policy Evaluation with Shrinkage · SlidesLive
GitHub - st-tech/zr-obp: Open Bandit Pipeline: a python library for bandit algorithms and off-policy evaluation
- 104. ©2022 ARISE analytics 104
104
参考文献
XAI
Counterfactual Explanations (google.com)
Counterfactual Visual Explanations (mlr.press)
CoCoX: Generating Conceptual and Counterfactual Explanations via Fault-Lines | Proceedings of the AAAI Conference on Artificial Intelligence
Generating Plausible Counterfactual Explanations for Deep Transformers in Financial Text Classification (aclanthology.org)
[1802.07623] Explanations based on the Missing: Towards Contrastive Explanations with Pertinent Negatives (arxiv.org)
[1911.08378] PRINCE: Provider-side Interpretability with Counterfactual Explanations in Recommender Systems (arxiv.org)
GitHub - interpretml/DiCE: Generate Diverse Counterfactual Explanations for any machine learning model.
GNNExplainer: Generating Explanations for Graph Neural Networks (nips.cc)
DiCE: 反実仮想サンプルによる機械学習モデルの解釈/説明手法 - Qiita