個人的な論文メモ②：クーポンマーケティングにおけるUpliftModeling適用の問題点と新しい評価指標

個人の興味関心の備忘録として記録したものであり、情報の正確性や完全性を保証するものではありません。

# 目次
+ [三行まとめ](#三行まとめ)
+ [背景・目的](#背景・目的)
+ [配布すべきユーザー](#配布すべきユーザー)
+ [UpliftModeling](#UpliftModeling)
+ [提案内容](#提案内容)
+ [実データ分析](#実データ分析)
+ [まとめ](#まとめ)
+ [感想](#感想)

[論文：クーポンマーケティングにおけるUplift Modeling適用の問題点と新しい評価指標](https://www.jstage.jst.go.jp/article/pjsai/JSAI2020/0/JSAI2020_1H4OS12b02/_pdf/-char/ja)

# 三行まとめ
:::note info 
+ クーポンありなしに関わらず購入する人を今の評価指標では把握できていない
+ コントロール群の購買に注目した新しい評価指標であるST曲線を提案
+ Qini曲線だけでは評価できないモデルの良さを識別
:::

# 背景・目的
500円引きなどのクーポンは、ユーザーの購買を促し、配布しなかった場合と比較して売上を伸ばすことを目的としている。
しかし、費用対効果を最大化するには、クーポンを配布する対象を選定し、本当に必要なユーザーに絞ることが重要。
そのための手法として、Uplift Modelingが活用されている。
Uplif Modelingでは、クーポンを配布した場合の購買期待値と配布しなかった場合の購買期待値を算出し、その差を介入効果として評価します。
クーポン施策だけではなく、様々なマーケティング施策にも広く活用されていて、高い効果が報告されている。


# 配布すべきユーザー
クーポンを配布するべきユーザーは、クーポンを配布する・しない、商品を購入する・しないの2軸で表現可能

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426482/b6085033-37dc-1dd0-993d-18136ab8c9e8.png)

このアプローチでは、4つのセグメントにユーザーが分けられる。
+ 説得可能(Seg.A) : クーポンを配布すると購買する
+ 無関心(Seg.B)：クーポンを配布しても購買しない
+ Sure Things(Seg.C)：クーポン配布ありなしに関わらず購買する
+ あまのじゃく(Seg.D)：クーポン配布すると購買しなし

あまのじゃくは存在しないと仮定する。
クーポンマーケティングでは、いかにSure Thingsを除外するかが大事である。



# UpliftModeling
Uplift Modelingのアプローチでもシンプルな2モデルアプローチについて紹介。
2モデルアプローチとは、介入の有無で2つのモデルを作成し、それらの予測値の差分を介入効果として算出

**クーポンの介入効果（式）**
```math
U(x) = E(Y=1 | X = x , T = 1) - E(Y=1 | X = x , T = 0)
```
$X$ : ユーザーの特徴量
$Y$ : ユーザーが購買したかどうか
$T$ : クーポンを配布したかどうか

**評価指標**
他の機械学習と同じようにモデルの性能を評価する指標が存在。
Jaskowsikiらが提案したUplift CurveとRadcliffeが提案したQini Curveを使用することが一般的。

**Qini Curve(Q)**
```math
Q(t) = Y_t^{T_R} - \frac{Y_t^{C} N_t^{T_R}}{N_t^{C}}
```
ユーザーごとの介入効果$U$を降順に並び替えた後、累積的に計算する。
$t$：累積的な人数
$N_t^{T_R}$：クーポンを配布した数
$N_t^{C}$：クーポンを配布していない数
$Y_t^{T_R}$：クーポンを配布した群で購買した数
$Y_t^{C}$：クーポンを配布していない群で購買した数

クーポンを配布したグループにおける購買数から、クーポンを配布しなかったグループの購買率を基にした期待購買数（クーポンを配布した人数に対する予測購買数）を差し引いた値を評価指標として利用。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426482/fd3ed520-e749-d56e-6f4f-0b0ffe372cdd.png)

# 提案内容
クーポンマーケティングの問題では、オフライン評価の時点で、Upliftモデルがクーポンを配布しなくても買うユーザーを排除できているかを把握する必要がある。
Qini Curveでは以下の特性を持つため、把握が難しい
+ 説得可能なユーザーをどれだけ獲得できたかを評価している
+ 説得可能なユーザーをうまく推論できなくても、Sure Thingsに過介入すればQini Curveは大きい値になる。

クーポンを配布して購買したユーザーが、本来クーポンなしでも購買していたかどうかを判断することは反事実に基づくため、正確には判定できない。
そのため、統制群のデータを活用し、Sure Things に誤ってクーポンを配布していた割合を評価する指標として、ST 曲線を提案

**【ST曲線】**
```math
S(t) = \frac{cum_t(Y^C)}{sum (Y^C)}
```

$cum_t(Y^C)$ : 降順からの$t$人内における累積的な統制群の購買数
$sum(Y^C)$   : 全体での統制群の購買数

# 実データ分析
### データセット
Diemertらが公開したデータセットを利用。（2500万件）
広告のおける介入（広告の表示）とその結果であるコンバージョンの発生を含む。
ダウンサンプリングを実施して、約17.5万件のデータを使用（コンバージョン１　非コンバージョン９）
介入群と統制群の割合も1対1までダウンサンプリングを実施

### 実験手法
２つのベースアルゴリズムを使用
+ X-learner
+ Tree-basedはZhaoらが提案したアルゴリズムを利用

介入（広告の表示）の有り無しがどれぐらいコンバージョンに影響を与えるか予測
その後、評価指標を用いで各モデルを評価
データセットの2割をモデルの汎化性能の評価に利用

### 実験結果

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426482/892bc033-db5b-3294-4e5e-0efb16bc1543.png)

各モデルのQini曲線とランダム配布の結果を見てみると、3割程度の介入の場合、Tree-BasedモデルがMeta-learnerを上回っていることが分かる。
**Qini曲線だけでは、Sure Things(何もしなくても購買してくれる人)がどれだけ含まれているが評価できない**

|Model|Qini係数|Sure Things係数|
|--|--|--|
|Meta-learner|0.355|-0.142|
|Tree-based|0.362|-0.027|

係数を比較してみると、Qini係数は正の値でランダム配布より優れていることが分かる。
さらに2つのモデルの差が小さいことも把握できる。
しかし、Sure Things係数に注目してみると、どちらも負の値をとりランダム配布よりも下回る性能になっている。
Qini係数が同程度であっても、Sure Things係数でモデルの優劣を判断することが可能である。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/426482/4b562a61-2424-1250-3fef-96a813822dd9.png)

6割付近までST曲線がRandom配布のST曲線を上回っている。
Random配布の曲線を下回っていることが望ましい。

Sure Thingsの人たちの割合が最初から多いことが分かるので、クーポン施策で費用対効果が上がらない可能性がある。

# まとめ
Uplift modelingの新しい評価指標を提案
提案した評価指標を用いて一般的なアルゴリズムを比較した結果、現行の評価ではランダム配布よりも性能が低いモデルが存在し、さらに従来の評価指標では識別できなかったモデルの有効性を、提案指標が適切に識別できることを示した


# 感想
:::note info
+ クーポンを配布しなくても購買する客を除外できているか確認可能なのが面白い
+ メールの開封有無が関わってくるので、それも考慮した評価指標が欲しい
+ あまのじゃくがいないと仮定していたが、本当に存在しないと言えるのか。
:::