rstanで個人のパラメーター
を推定した話
Japan.R 2015 LT
12月5日
@y__mattu
1
自己紹介
•松村優哉 @y__mattu
•慶應義塾大学経済学部3年
•星野崇宏研究会
•興味:統計学、機械学習、マーケティング
•使用言語: SAS, Hive, Python, R
•R歴:1年
2
宣伝
• 『調査観察データの統計科学』
• 星野崇宏 著
3
• MCMCアルゴリズムとしてHMC、NUTSを使用
→収束しやすい
• ベースがC++
→計算が速い
• 詳しくは各種の発表資料を参照(TokyoR #50とか)
• RでStanを動かせる{rstan}
Stanって何だっけ
4
• 階層ベイズモデルを書いてパラメーター推定してみる
• 個人の購買履歴データと時系列データと属性データ
Stanで何すんの?
ID 日時 メーカー 商品名 価格 CM SNS 年齢 性別 年収
1 2014/10/25 P&G パンテーン 720 15 300 35 男 1000万以上
1 2015/1/16 P&G パンテーン 619 20 240 35 男 1000万以上
1 2015/3/20 花王 メリット 510 34 500 35 男 1000万以上
2 : : : : : : 28 女 500-1000万
2 : : : : : : 28 女 500-1000万
3 : : : : : : 48 女 500-1000万
: : : : : : : 48 女 500-1000万
メーカーの乗り換え
→目的変数にして
ロジスティック回帰
5
𝑃𝑟 𝑦 𝑘𝑖𝑡 = 1 =
𝑒𝑥𝑝(𝑈 𝑘𝑖𝑡)
1 + 𝑒𝑥𝑝(𝑈 𝑘𝑖𝑡)
𝑈 𝑘𝑖𝑡= 𝑗=0
𝐽
𝛼𝑗𝑖 𝑥𝑗𝑘𝑖𝑡 + ℎ=1
𝐻
𝛽ℎ𝑖 𝑊ℎ𝑘𝑡 + 𝜀 𝑘𝑖𝑡
𝛼𝑗𝑖 = 𝚯 𝑇
𝒁 𝑞𝑖 + 𝜂 𝑗𝑖 ; 𝜂 𝑗𝑖~𝑀𝑉𝑁 𝟎, 𝑉𝛼 ; 𝑉𝛼~𝐼𝑊 𝑑1, 𝒔 𝟏
𝛽ℎ𝑖 = 𝚲 𝑇
𝒁 𝑞𝑖 + 𝜉ℎ𝑖 ; 𝜉ℎ𝑖~𝑀𝑉𝑁(𝟎, 𝑉𝛽) ; 𝑉𝛽~𝐼𝑊(𝑑2, 𝒔 𝟐)
モデル式(𝑖さんが𝑡期にメーカー𝑘を選ぶ確率)
6
モデル式
• マーケティング変数𝑥の番号𝑗
①切片項1(𝑗 = 0)
②𝑡期購買商品の価格
• デジタル環境変数𝑊の番号ℎ
① 𝑡 − 1期の「ブランド名」を含む投稿数
② 𝑡 − 1期のCM本数
• 個人属性変数𝑍の番号𝑞
①年齢
②性別
③結婚ダミー
④世帯年収
7
RとStanで書いていく
Stan
data{データ(Rから呼ぶ)}
parameter{パラメーターを定義}
model{モデル式を書く}
8
RからStanにデータを渡す
9
Stanでデータを定義
10
Stanでデータを定義
11
Stanでパラメーターを定義
12
Stanでモデル式を定義
13
{rstan}で推定
14
待つこと20時間…
15
Rで結果の出力
mean se_mean sd X2.5 X25 X50 X97.5 n_eff Rhat
EAP推定量 EAPの標準偏差 事後標準偏差 95%確信区間および四分位点 有効サンプルサイズ
収束判定指標
1.1or1.2以下
ならOK 16
Rで結果の出力(プロット)
17
結局
18
でやりました。
Enjoy !!
Enjoy !!
19
Enjoy !!

rstanで個人のパラメーターを推定した話