estimating conversion rate in display advertising from past performance data

21
Estimating Conversion Rate in Display Advertising from Past Performance Data JUJU

Upload: tatsuki-sugio

Post on 15-Jan-2015

157 views

Category:

Data & Analytics


0 download

DESCRIPTION

有名な論文ですね。 スパース性が高いデータに対する推定方法や補正方法等、実務で参考になる点が多いです。もちろん研究にも。

TRANSCRIPT

Page 1: Estimating conversion rate in display advertising from past performance data

Estimating Conversion Rate in Display Advertising from Past Performance Data

JUJU

Page 2: Estimating conversion rate in display advertising from past performance data

Agenda

1. Introduction 2. Issues

1. Problem Setup & Formulation 2. Data Hierarchies

3. Conversion Rate Estimation 1. Past Performance at Different Hierarchical Levels 2. Combining Estimators using Logistic Regression

4. Practical Issues (Propose) 1. Data Imbalance 2. Output Calibration 3. Missing Features 4. Feature Selection

5. Results & Discussion 1. Data Imbalance & Score Calibration 2. Missing Value Imputation 3. “Baseline Estimators” vs “Logistic Regression”

6. Conclusion

Page 3: Estimating conversion rate in display advertising from past performance data

Introduction

1. 広告出稿の入札を行うDSPのお話

 広告を表示するWebサイト、ユーザーから最適化な”bidprice”を推定したい

 ⇒ CVRを正確に予測する必要性

2. 課題

 [1] CVRは極めて小さく、分析に十分な数値が得られない

- CVR = 0.0001 ~ 0.1%                     ⇒ 階層化、”implicit”なクラスタリングで解決 [2]  RTBでは、入札までの時間が5 ~ 10msしかない

- 時間的制約が強いため、計算量が少なくかつ正確な測定法が必要

                    ⇒  Logistic Regressionで解決

Page 4: Estimating conversion rate in display advertising from past performance data

Issues:§2.2 Problem Setup & Formulation

1. 変数の説明

2. 最適な広告の選択

3. ロジスティック回帰によるCVRの予測

•  CVを確率論的に捉える

4. 最適な広告の選択における問題設定

Yijk ⇠ Bernoulli(pijk), pijk = p(Y = 1|ui, pj , ak)

ベルヌーイ分布を仮定する

user : ui page : pj ad : ak

ad⇤ = arg max

k=1,....,np(Y=1 | ui, pj , ak)

Page 5: Estimating conversion rate in display advertising from past performance data

5.  ユーザー個人(u_i)のCVRを見積もらずに、クラスタリングと最尤推定法に従い計算

•  {ad,user,page} と階層構造化させることで、データのスパース性を解決

CV数

imp数

ユーザーの属するクラスターと

ユーザー個人のCVRは同等を考える

Yijk ⇠ Binomial(Tijk,pijk),pijk = p(Y = 1 | u 2 UsrClust i,pj ,ak),

p

MLEijk =

(Sijk

Tijk, if Tijk 6= 0

unknown, if Tink = 0,

Page 6: Estimating conversion rate in display advertising from past performance data

§2.3 Data Hierarchies

1. データに階層構造を持たせ、”implict” なクラスタリング

 Ad、page、userのNodeを求めると、la × lp × lu 個(=M個)のクラスタに所属する

2. “implicit” user clustering とは…

 ⇒ “explicit”なクラスタリング(デモグラフィック情報や収入等を因子に…)

   ではなく、   訪問したWebサイトのカテゴリー等を因子に…

   {User × Publisher Type × Campaign}

Page 7: Estimating conversion rate in display advertising from past performance data

3.  past count data(i.e., number of imp and cv) から適切なクラスターに配置

 個人とクラスタのCVRの近似式

ユーザーの属するクラスター

pijk = p(Y = 1|ui,pj ,ak) ⇡ pijk = p(Y = 1|u 2 Cui ,pj ,ak)

Page 8: Estimating conversion rate in display advertising from past performance data

Conversion Rate Estimation:§3.1 Past Performance at Different Hierarchical Levels

1.  The first challenge:

 同一もしくは極めて近いCVRを持つ”user”と”group users”=Clusterを特定すること

2.  The main challenge:

 不足しがちな”CVした観測値”をどのように扱うか

 missing dataの補正

 ex) for a true conversion rate that is on order of 10^-5 (on the order of millions imp)

3.  CVRの再定義

4.  最尤推定法で計算した各関数をデータ階層毎でそれぞれかけ合わせ、M個のp_ijkを定義

 ⇒ 各階層毎の1つ1つのCVR予測器の精度は弱いが、それを組み合わせること高精度に

user、page、Adはグループ化

8

pijk = f(ˆp1ijk = 1| u 2 Cui ,2 Cpj ,a 2 Cak)

Page 9: Estimating conversion rate in display advertising from past performance data

§3.2 Combining Estimators using Logistic Regression

1. ロジスティック回帰を利用して各予測器に最適な重み付け

 ⇒ M個の異なるレベルでの最尤推定法によるCVRの推定

2. 各予測器を組み合わせたCVR予測の最定義

 ⇒ 最適なパラメータベクトル”β”を決める必要性

pijk = f(ˆp1ijk,..., ˆpMijk;�)

Page 10: Estimating conversion rate in display advertising from past performance data

3. 各PVに帯する”対数尤度関数”

4. 最適な”β”の推定(L-BFGS-B法等)参考)http://en.wikipedia.org/wiki/L-BFGS

➡ 最適化アルゴリズムの一種

➡ Rではoptim()

キャンペーンのs回目のimp数

user、page、Adの組み合わせ時の正確なCVRの計算手法

Page 11: Estimating conversion rate in display advertising from past performance data

Practical Issues (Propose): §4.1 Data Imbalance

1.  2つの”Data Imbalance”

1. The average conversion rate of an advertising campaign is inherently very low and …

-  CVRは平均的に低く、十分なサンプル数を確保するのが困難

 ex) 10^-3 to 10^-6

2. The ratio of the number of no-conversion events to that of conversion events is very large…

-  cvに対する(膨大な)imp数のデータの調整

2. 対策

  - CVしたデータは全て利用

  - non-CVデータはサンプリングして利用

Page 12: Estimating conversion rate in display advertising from past performance data

§4.2 Output Calibration

1. スコアを区間で分割し、Calibrationする

 LRの結果 = bin内に等分割

本当のCVRに近づける

bin内のCVR(サンプル)を計算

Page 13: Estimating conversion rate in display advertising from past performance data

2. 区間ごとのCV率の凹凸のスムージングは”Pool Adjacent Violators Algorithm(PAVA)”を利用

  - 単調非減少となるように調整を行う手法

    前後の重みつき平均を取りながら単調非減少となるように繰り返すアルゴリズム

  -  等調回帰をベースとしたものを使って指数関数にfitするように調整

3. 実際のCVRは内分して算出

Page 14: Estimating conversion rate in display advertising from past performance data

§4.3 Missing Features

1. データがない場合の補正

  - MARパターン(missing at random)

    → ある変数が欠測となる確率は観測されたデータだけに依存し、

      欠測している変数の本来の値には依存しない

   ex) ユーザープロファイルサーバにないuserID、categoryに分類できないWeb page

  - 条件付きガウス分布による補正

Page 15: Estimating conversion rate in display advertising from past performance data

§4.3 Feature Selection

1. 階層化に利用する属性

  - 65%以上のデータを持っている属性

  - データを持っていても属性の分散が10^-8以下のものは利用しない

Page 16: Estimating conversion rate in display advertising from past performance data

Results & Discussion: §5.1 Data Imbalance & Score Calibration

1.  実験条件

  - 広告枠は5種類(それぞれ1日あたり100万PV)

  - 2012/1の2週間のログを利用

  - 1週目は訓練、2週目はテスト

  - あるユーザーがページ、広告を見た時にCVするかしないか予想

2. 訓練データのCV/non-CV率の影響

 * IR(imbalance ratio)による差はなし

Page 17: Estimating conversion rate in display advertising from past performance data

§5.2 Missing Value Imputation

1. 欠損値のあるデータの補正 * 補正後の数値と中央値との差はあまりみられない

Page 18: Estimating conversion rate in display advertising from past performance data

§5.3 “Baseline Estimators” vs “Logistic Regression”

1.  提案手法の効果

1. Baseline 1 : ユーザーの年齢、性別、居住地域等のデモグラフィックな属性によるクラスタリングと

広告群による推定

ユーザーと同じユーザーグループ(クラスター)(過去の閲覧パターンやデモグラフィック等により特定)

pijk ⇡ ˆp1 = pMLE(Y = 1| u 2 CGui,ak 2 Campaignak)

Page 19: Estimating conversion rate in display advertising from past performance data

2. BaseLine 2 :  広告群を見たユーザーと特定の広告による推定

2. 結果

- LRがB1に対して28.2%、B2に対して5.92%数値が高い

pijk ⇡ ˆp2 = pMLE(Y = 1|u 2 CAui,ak)

Page 20: Estimating conversion rate in display advertising from past performance data

Output Calibration

Page 21: Estimating conversion rate in display advertising from past performance data

§6 Conclusion

1. 結論

1. RTBに対する高速なCVR推定手法を提案

→ LRによるパラメータの推定が好ましい

2. 階層構造化により精度が向上

→ {user,page,ad} のように階層化することが好ましい

2. 課題と疑問

•  CV率のクラスタリング手法に関しては詳しい記載がなかった点。

 ”implicit”なクラスタリングの具体的な手法が記載されていない。