階層ベイズによるワンToワンマーケティング入門
- 1. 階層ベイズによる
Oneマーケティング
One to Oneマーケティング
入門
@shima_x
2013/3/11
- 6. ネイマン-ピアソン統計の基本的な考え方
サンプリングを繰り返していけば誤差がなくなって
真の値(母数※)をぴったり推定できる!
母集団
(母平均)
標本 標本
A 標本 標本 E
標本
B C D
標本平均A
標本平均A 標本平均E
標本平均E
標本平均B
標本平均B 標本平均C
標本平均C 標本平均D
標本平均D
標本平均の平均→
標本平均の平均→母平均
※平均や分散などの母集団の分布の特徴を示すもの
- 8. リサンプリングとは
リサンプリン
グされた標本
1
標本抽出 リサンプリン
グされた標本
Sampling 2
・・・・
標本 Re-sampling
Sample 復元抽出と非復元抽出とがある
サンプルサイズ(N
サンプルサイズ(N) リサンプリン
グされた標本
B
- 9. ブートストラップとベイズ推定
• Bootstrap法とは「復元」抽出によって作られた標本(サンプルサイ
Bootstrap法とは「復元」抽出によって作られた標本(サンプルサイ
ズはサンプルN
ズはサンプルNに同じとする)に対して統計処理を行う方法
• ベイズ推定は更にそれを進化させ、
1. 統計的推定値を確率変数だと考え
(ある幅をもって推定する)
2. 事前情報を考慮し
(回帰分析の残差は正規分布するだろう、など)
標本分布から作られる推定値のリサンプリングにより(MCMC
3. 標本分布から作られる推定値のリサンプリングにより(MCMC
法)
4. 事後分布の代表値を母数の推定値とする
という手法である。
- 21. 階層ベイズモデルとは?
統計モデルのパラメータに
階層構造を持たせてベイズ推定する高性能なモデル
問題:事前分布をどう設定すべきか
古典的な
ベイズモデル
不確実性を考慮してハ
イパーパラメータを確率
変数として扱う
階層
ベイズモデル
- 22. なぜ階層ベイズか?
超パラメータを確率変数とすることで
ノンパラメトリックと同等の頑健性
パラメータ 複雑さ 超パラメータ 頑健性
最尤推定 一意に決定 手動で設定 不使用 ×
MAP推定
推定 一意に決定 手動で設定 手動で設定 △
古典的なベイズ推定 事後分布を推定 手動で設定 手動で設定 ○
ノンパラメトリックベイ 事後分布を推定 事後分布を推定 (手動で設定) ◎
ズ
階層ベイズモデル 事後分布を推定 (手動で設定) 事後分布を推定 ◎
- 24. ユーザの選択行動モデル
選択駆動への影響を知ることで
効率的な施策を実行することが出来る
広告 β1
β2 アイテムA
アイテムA
レコメンド
・ Model アイテムB
アイテムB
・
・ アイテムC
アイテムC
その他 β3
- 25. 2項ロジットモデル
アイテムを買う・買わないのような
二択の選択行動モデル
広告 β1
β2 購入する
レコメンド
・ Model
・
・ 購入しない
その他 β3
- 26. 2項ロジットモデル
ロジスティック曲線の回帰モデルで表現
各変数の回帰係数を市場反応パラメータとして解釈する
購入する
広告 β1
購入確率
レコメンド β2
・ Model
・
・ 購入しない
その他 β3
- 27. ユーザ毎にパラメータを知りたい
市場反応パラメータをユーザ毎に求めて
ユーザに合わせた施策を行えるようにしたい
購入する
広告 βh1
購入確率
レコメンド βh2
・ Model
・
・ 購入しない
その他 βh3
- 32. 階層ベイズ2
階層ベイズ2項ロジットモデルの構築
共通パラメータV ,Δも確率変数
共通パラメータVB,Δも確率変数
多変量正規分布と逆ウィッシャート分布を事前分布とする
Zh Xh
V0
事前分布
IW(v0,V0) VB
v0
βh yh
Σ0
事前分布
MVN(Δ0,Σ0) Δ
Δ0
- 33. 階層ベイズ2項ロジットモデルのベイズ推定
階層ベイズ2
,Δについて適当に初期値を設定する
βh,VB,Δについて適当に初期値を設定する
Zh Xh
V0
事前分布
IW(v0,V0) VB
v0
βh yh
Σ0
事前分布
MVN(Δ0,Σ0) Δ
Δ0
- 34. 階層ベイズ2項ロジットモデルのベイズ推定
階層ベイズ2
,Δを固定して
を固定してβ
VB,Δを固定してβhの事後分布からサンプリング
Zh Xh
V0
事前分布
IW(v0,V0) VB
v0
βh yh
Σ0
事前分布
MVN(Δ0,Σ0) Δ
Δ0
- 35. 階層ベイズ2項ロジットモデルのベイズ推定
階層ベイズ2
サンプリングされたβ
サンプリングされたβhを目的変数とする
多変量回帰モデルからΔ
多変量回帰モデルからΔの事後分布を得る
Zh Xh
V0
事前分布
IW(v0,V0) VB
v0
βh yh
Σ0
事前分布
MVN(Δ0,Σ0) Δ
Δ0
- 36. 階層ベイズ2項ロジットモデルのベイズ推定
階層ベイズ2
Δ とβhを固定してVBを発生させる
を固定してV
Zh Xh
V0
事前分布
IW(v0,V0) VB
v0
βh yh
Σ0
事前分布
MVN(Δ0,Σ0) Δ
Δ0
- 37. 階層ベイズ2項ロジットモデルのベイズ推定
階層ベイズ2
M回以降(バーンイン期間)の繰り返しについて
それぞれのパラメータを保存する
Zh Xh
V0
事前分布
IW(v0,V0) VB
v0
βh yh
Σ0
事前分布
MVN(Δ0,Σ0) Δ
Δ0
- 38. 実際の分析では?
ネステッドロジスティックモデルのようなモデルを使用する
来店の有無
第一階層
1
p0 = 1- p1 1 1
p1 来店意思決定
無 有
カテゴリ生起
第2階層
階層
2
p0 = 1- p1 2 2
p1 カテゴリ購買意思決定
購買無 購買有
ブランド選択
第3階層
階層
3
p0 = 1- p1 3
P13=1 – pa3 – pb3 – ・・・ - py3 ブランド選択意思決定
Aブランド購入
ブランド購入 ・・・ Zブランド購入
ブランド購入
- 42. 実際にどんな使い方をされているのか?
前回来店か
らの日数 βh1
降水量 βh2
…
…
…
…
Model
近い数値を持つユーザをセグメ
チラシ掲載
購入する
ロスリーダ βhn ント分けするような効果を持ち、
商品の平均
購入確率
値引き率 ユーザの共通部分によるパラメ
ータ算出を行う
平均
来店間隔 αh1 購入しない
来店手段 αh2
…
…
…
Model
年齢
αhn
- 44. 実際にどんな使い方をされているのか?
消費者異質性と消費者共通性のモデル化の概念
集団全体で共通の分散値
集団全体で共通の分散値
ある消費者i
ある消費者iの属性の関数で表現される平均
ある消費者i
ある消費者iの市場反応などを示すパラメータ
この分布には時間に依存しない構造(共通な関数形及び分布形)をもつ制約を課す
階層ベイズモデルでは、さらに各個人の行動データを表現する各
人の尤度関数(主体内行動)を定める
- 47. モデルの仮定
1.消費者の来店生起行動は個人ごとに異質だと考えるが、
部分的に消費者間共通性も存在する
2.来店生起行動に影響する疑似家庭内在庫金額(後述)の
形成メカニズムは消費者ごとに異質である(個人ごとの
パラメータをもつ)が、その背後に消費者間の共通性も
有する。消費者間の共通性は消費者の行動特性、人口動
態的特性で説明できる
3.消費者の来店意思決定は、連続的に変動する潜在効用を
導入し表現する
4.潜在効用には時系列的影響要素(トレンド、週周期、前
回来店からの日数)と回帰成分(降水量、チラシ掲載ロ
スリーダー※商品平均値引率、掲載商品数)が影響する
5.来店有無(実際には潜在効用)に対して説明変数が与え
る影響は、時間の進展に伴い滑らかに変動する
※ロスリーダー商品:チラシに掲載すると集客効果が大きい商品
- 48. モデル化
来店効用のモデル化
個人i
個人iのt時点における来店総効用
正規分布に従う確率項
来店効用の確定項 ※説明変数の数は設定
によって変わる
添え字のt
添え字のtは当該時点を、
iは人を指す
- 49. モデル化
来店効用のモデル化
前スライドの数式を以下を用いて書き直す
パラメータをまとめたベクトル
= 時系列パラメタ
観測変数
(疑似家庭内在庫金額は推定値)
時系列モデル用に変形する
- 50. モデル化
来店生起のモデル化
非集計プロビットモデルによるモデル化
来店生起確率
モデルの識別性確保のため1とする
モデルの識別性確保のため とする
識別性確保のため
- 51. モデル化
疑似家庭内在庫金額のモデル化
商品カテゴリを示す
疑似家庭内在庫金額 購買金額 消費金額
Cの影響を調整するパラメータ
の影響を調整するパラメータ 平均消費金額
(推定値) ← 0より大きいという制約を課す
より大きいという制約を課す (ホールドアウトデータから算出)
疑似家庭内消費金額に与える疑似家庭内在庫金額の影響度(推定値)
- 52. モデル化
消費者異質性のモデル化:階層モデル
全消費者共通のパラメタ( 時系列) ← セグメント化する
全消費者共通のパラメタ(not時系列) セグメント化する
商品カテゴリ数次元の誤差項
(商品カテゴリ数×消費者共通パラメタ)次元の回帰係数行列
商品カテゴリ数×消費者共通パラメタ 次元の回帰係数行列
商品カテゴリ数
したがって
パラメータの背後にある関係を
回帰式を使って説明している
※
- 53. モデル化
時変係数のモデル化
①tt,i , βjt,iのモデル化
j=1, … ,6
②wt,i のモデル化
時間変化を生み出す確率的変動項
③システムモデルの分散θ
③システムモデルの分散θi,sys のモデル化
- 55. モデル化
プロビットモデルにおけるデータ拡大
マルコフ連鎖モンテカルロ法の一種
(ギブスサンプラーの亜種)
総効用ut,iをパラメータの一種と考え(uat,iとする)、観測デ
総効用u をパラメータの一種と考え(u とする)
ータ(yt,i , Zt,i)に整合的になるようにサンプリングを行う
ータ(y
仮想的に疑似観測データを発生
⇒ 仮想的に疑似観測データを発生
サンプリングは切断正規分布 切断正規分布から行う
サンプリングは切断正規分布から行う
- 57. モデル化
プロビットモデルにおけるデータ拡大
非集計プロビットモデルに積分が含まれていることもあり、一般状態空間モデルの枠組
みが必要となる
非集計プロビットモデルの積分問題は、総効用u
非集計プロビットモデルの積分問題は、総効用ut,iが仮に観測できれば、積分計算は不
要になる
観測モデルをy でなくu
観測モデルをyt,iでなくut,iに対して設けることで、観測モデルが回帰モデルになる
つまり離散選択を回避し、回帰モデルを採用することになる
(0,1などの離散値ではなく連続数として扱える!)
0,1などの離散値ではなく連続数として扱える!)
この代替法が理論面※からも問題なく、また計算技術の面からも容易に実現できるので
あれば、離散選択モデルの活用範囲が格段に広がる!
あれば、離散選択モデルの活用範囲が格段に広がる!
※理論的説明は付録に収める
- 59. モデル化
プロビットモデルにおけるデータ拡大
正の領域だけを定義域としてもつ正規分布、
負の領域だけを定義域として持つ正規分布を考える
総効用u
総効用ut,iをパラメータの一種 個人 のt時点の平滑化推定値
個人iの 時点の平滑化推定値
としuat,iとした
としu
これにより取扱いやすいデータが手元に用意できる
これにより取扱いやすいデータが手元に用意できる
取扱いやすいデータ
- 61. モデル化
プロビットモデルにおけるデータ拡大
来店生起確率
データ拡大によってパラメータ化された総効用
yt,iのかわりに t,i, Ztpt,i)に整合的な at,iを導入することにより、消費者の来店生起行動の
のかわりに(y に整合的なu
に整合的な
観測モデルは以下で表現できる
- 62. モデル化
状態空間モデル
カルマンフィルタの適用
- 63. モデル化
状態空間モデル
状態変数の時間発展式も線形ガウス型
本稿の状態空間モデルは線形ガウス状態空間モデルとなる
状態空間モデルはシステムモデルと観測モデルで表現される
現在までに示されたモデルとの関係は次スライドの様になる
- 64. モデル化
状態空間モデル 状態空間モデルで
扱うのはここ
ギブスサンプラー
階層モデル システムモデル
FFBS
M-H法
観測モデル
説明変数 相対変数 来店有無
- 65. モデル化
状態空間モデル
システムモデル
観測モデル
- 66. MCMC法
MCMC法
同時事後分布の算出
計算にはこれを使う
① ② ③ ④
⑤ ⑥ ⑦ ⑧
⑨ ⑩
- 68. MCMC法
MCMC法
DAGを用いた視覚的な同時事後分布の分解
DAGを用いた視覚的な同時事後分布の分解
事前分布 事前分布 事前分布 事前分布
初期分布
モデルの尤度
状態ベクトルの分布
事前分布
- 69. MCMC法
MCMC法
推定の全体フロー
手順0 ※1
潜在効用のサンプリング
手順1 消費者iに対して時点数 だけサンプリング
消費者 に対して時点数Tだけサンプリング
に対して時点数
MCMCの繰り返しループ
の繰り返しループ
For r=1 to R 状態ベクトルのサンプリング
手順2 消費者iに対して時点数 だけサンプリング
消費者 に対して時点数Tだけサンプリング
に対して時点数
消費者のループ
消費者総数 回)のループ
消費者総数(I回 のループ 手順3 システムノイズのサンプリング
※1
手順4
消費者のループの終点
手順5
※2
※2
MCMCのループの終点
のループの終点 手順6
- 70. MCMC法
MCMC法
推定の全体フロー
手順0 ※1
潜在効用のサンプリング
手順1 消費者iに対して時点数 だけサンプリング
消費者 に対して時点数Tだけサンプリング
に対して時点数
MCMCの繰り返しループ
の繰り返しループ
For r=1,R 状態ベクトルのサンプリング
手順2 消費者iに対して時点数 だけサンプリング
消費者 に対して時点数Tだけサンプリング
に対して時点数
最終的に算出したい値に適応させるため
消費者のループ
消費者総数 回)のループ
に、サンプリリング手順は潜在効用値か
消費者総数(I回 のループ
手順3 システムノイズのサンプリング
ら行う※1
手順4
消費者のループの終点
手順5
※2
※2
MCMCのループの終点
のループの終点 手順6
- 71. MCMC法
MCMC法
各手順詳細
手順 :MCM のエルゴード性により、最終的な事後分布は初期値には依存しなくなる。
手順0: エルゴード性により、最終的な事後分布は初期値には依存しなくなる。
したがって、それらしい値を与えればよい。
- 72. MCMC法
MCMC法
各手順詳細
事前分布:逆ガンマ分布 尤度関数:正規分布
自然共役分布により事後分布は逆ガンマ分布となる
- 73. MCMC法
MCMC法
各手順詳細
事前分布の定義
j = 1,…,6
事後分布の定義
j = 1,…,6
- 74. MCMC法
MCMC法
各手順詳細
例ではブランドカテゴリが2以上あるので多変量正規分布
例ではブランドカテゴリが 以上あるので多変量正規分布
当該例の場合、尤度関数と事前分布は共役な関係ではないためM-Hアルゴリ
当該例の場合、尤度関数と事前分布は共役な関係ではないため
共役な関係ではないため アルゴリ
ズムを用いる
特にここでは酔歩M-Hアルゴリズムを用いる
特にここでは酔歩 アルゴリズムを用いる
- 75. MCMC法
MCMC法
各手順詳細
候補サンプルを発生させるために用いたランダムウォークを以下に示す
Σδ, Σλ = diag(0.01, 0.01)
とした。
以下に示す採択確率
が0.4程度となるように
程度となるように
調整するのが最も良い
ひとつ前のステップで とされている。
あることを意味する
採択確率 δを対数変換の影響を調整するヤコビアン。採択確率の計算は対数
を対数変換の影響を調整するヤコビアン。採択確率の計算は対数
変換前の空間で行わなければならない。(λの計算では不要)
変換前の空間で行わなければならない。( の計算では不要)
- 76. MCMC法
MCMC法
各手順詳細
事前分布:正規分布を仮定 尤度関数:正規分布
共役関係が成立するので、多変量回帰モデルにおける平均
共役関係が成立するので、多変量回帰モデルにおける平均
未知、分散共分散既知の場合のベイズ推測(正規分布×
未知、分散共分散既知の場合のベイズ推測(正規分布×正
規尤度→正規分布)を援用できる
規尤度 正規分布)を援用できる
- 77. MCMC法
MCMC法
各手順詳細
事前分布
Hδを縦につなげたベクトル クロネッカー積
事後分布
- 78. MCMC法
MCMC法
各手順詳細
事前分布:
事前分布:正規分布を仮定 逆ウィシャート分布を仮定 尤度関数:正規分布
共役関係が成立するので、多変量回帰モデルにおける平均
共役関係が成立するので、多変量回帰モデルにおける平均
既知、分散共分散未知の場合のベイズ推測(逆ウィシャート
分布×正規尤度→逆ウィシャート分布)を援用できる
分布×正規尤度 逆ウィシャート分布)を援用できる
- 79. MCMC法
MCMC法
各手順詳細
事前分布
事後分布
- 82. データ拡大
多項プロビットモデルへの応用
J個のブランドが選択肢とあると仮定し、識別性確保のため選択肢Jに対する相対効用の算
個のブランドが選択肢とあると仮定し、識別性確保のため選択肢Jに対する相対効用の算
識別性確保のため選択肢 相対効用
出を行う
パラメータベクトル
uの説明変数
の説明変数
- 83. データ拡大
多項プロビットモデルへの応用
個人iの時点tでの選択肢j
個人iの時点tでの選択肢jの選択確率(多項プロビットモデル)
- 84. データ拡大
多項プロビットモデルへの応用
つまり
- 85. データ拡大
ギブスサンプラーの適用
各選択肢の式に示す分布の切断領域は,yt,i=jのときは以下の式になる
上に示す個々の条件付き分布f(・
上に示す個々の条件付き分布f(・|・)は、多変量正規分布の条件付き分布の議論を援用
f(
することで、次のような1
することで、次のような1変量の切断正規分布となる
- 86. データ拡大
パラメータ化した潜在効用と観測値y
パラメータ化した潜在効用と観測値yの関係
相対効用uaj,t,iがほかの選択肢の相対効用
相対効用u
よりも必ず大きくならなければy =jとならな
よりも必ず大きくならなければyt,i=jとならな
いことからくる条件
(k≠j)
ブランドkの効用値と比較してk
ブランドkの効用値と比較してk以外のブランドの効用値の方
が高いため、y =kとなることはない
が高いため、yt,i=kとなることはない
この2つの条件を満たせばy =jが成立する
この2つの条件を満たせばyt,i=jが成立する
以上によりuat,iの発生は1変量の切断正規分布から乱数を発生するだけであり
以上によりu の発生は1
その履行は容易であることが示された
- 87. データ拡大
具体的な利点
選択データy
選択データyt,iに整合的な
潜在変数uat,iを発生
潜在変数u
多重積分の計算が不要になる
回帰モデルにおける被説明変数が観測され
たこととみなせる
離散選択モデルが線形回帰モデルに帰着できる
プロビットモデルにおける最大の問題であった
多重積分を行わずともモデルの推定を行える
多重積分を行わずともモデルの推定を行える
- 89. 線形ガウス型状態空間モデル
基本的考え方
時系列表現
直接観測できないベクトル
システム・ノイズ
観測ノイズ
状態推定
観測区間より先の状態を推定
現在の観測値から現在の状態を推定
(ただし、t<T)
現在までの観測値に基づいて過去の状態を推定
- 93. 線形ガウス型状態空間モデル
カルマンフィルタ
状態xの平均と分散
状態 の平均と分散
一期先予測
フィルタリング
固定区間平滑化
※F,G,Hはそれぞれのモデルにあった定型の行列を作成し、 は最尤推定によって求める
はそれぞれのモデルにあった定型の行列を作成し、Qは最尤推定によって求める
はそれぞれのモデルにあった定型の行列を作成し、
- 94. 参考文献
[1]Rで階層ベイズモデル, @yokkuns
http://www.slideshare.net/yokkuns/r-16189019
[2]Amosを使ったベイズ推定, 小杉考司
http://www.slideshare.net/KojiKosugi/amos-16660816
[3]ビッグデータ時代のマーケティング, 佐藤忠彦・樋口知之,
講談社