Your SlideShare is downloading. ×
Rで階層ベイズモデル
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Rで階層ベイズモデル

10,484
views

Published on


0 Comments
46 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
10,484
On Slideshare
0
From Embeds
0
Number of Embeds
6
Actions
Shares
0
Downloads
0
Comments
0
Likes
46
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Rで階層ベイズモデル @yokkuns 里 洋平 yohei0511@gmail.com 2013.01.26 第28回Tokyo.R2013年1月26日土曜日
  • 2. AGENDA ■ 自己紹介 ■ 階層ベイズモデルとは ■ ユーザーの選択行動モデルでの例 ■ 2項ロジットモデル ■ 階層ベイズ2項ロジットモデル2013年1月26日土曜日
  • 3. AGENDA ■ 自己紹介 ■ 階層ベイズモデルとは ■ ユーザーの選択行動モデルでの例 ■ 2項ロジットモデル ■ 階層ベイズ2項ロジットモデル2013年1月26日土曜日
  • 4. 自己紹介 ◆ 里 洋平(@yokkuns) ◆ 元Webエンジニアのデータサイエンティスト ・今は主にマーケティング周りを見てる ◆ 統計解析やデータマイニングをビジネスに適用 ・時系列解析とか異常検知とか最適化とか ・いろんなモデルの構築2013年1月26日土曜日
  • 5. 活動例: 勉強会の主催・執筆 Tokyo.R主催 パッケージ本執筆しました!2013年1月26日土曜日
  • 6. 活動例: 動画レコメンド 閲覧されている動画の情報を用いておすすめ動画を表示する2013年1月26日土曜日
  • 7. 活動例: 市場予測 Web上の情報から市場予測2013年1月26日土曜日
  • 8. 活動例: 異常検知 Anomaly detection 複数時系列から異常な振る舞いを検知する C A 時系列のモデリング 複数時系列の異常検知 B 時系列A 時系列A 異常な振る舞い 時系列B 時系列C 時系列B 時系列C 異常な振る舞いの時系列を検出 例1:トラフィック異常検知 例2:CM効果のノイズ除去 トラフィックA ケースA CM効果 トラフィックB ケースB トラフィックC 調査 ケースC 異常な振る舞いをしている 異常な振る舞いをしているケースを トラフィックの原因を調査する 除外して、CMの効果を算出する 852013年1月26日土曜日
  • 9. 活動例: 時系列解析と影響分析 TV Commercial Effects 時系列的な振る舞いの特徴から各KPIへのCMの影響度を算出 イベン CM時系列 ト 新規 登録 CM ARPP U ARPU 各KPIの時系列 その他 外部 継続率 要因 ケース 872013年1月26日土曜日
  • 10. 新たな勉強会 TokyoApache.Pig https://groups.google.com/group/tokyo_apache_pig2013年1月26日土曜日
  • 11. AGENDA ■ 自己紹介 ■ 階層ベイズモデルとは ■ ユーザーの選択行動モデルでの例 ■ 2項ロジットモデル ■ 階層ベイズ2項ロジットモデル2013年1月26日土曜日
  • 12. 階層ベイズモデルとは 統計モデルのパラメータに 階層構造を持たせてベイズ推定する高性能なモデル2013年1月26日土曜日
  • 13. 階層ベイズモデルと他のモデルの比較 超パラメータを確率変数とする事で ノンパラメトリックと同等の頑健性2013年1月26日土曜日
  • 14. Rで階層ベイズモデルを実行するには bayesmパッケージの rhier***という関数群が階層ベイズモデルの関数2013年1月26日土曜日
  • 15. 階層ベイズモデルの例: シミュレーション用データ作成 真のCVRとclick数(10∼20くらい)から乱数を使って サンプルデータを作成し、割り算で出したCVRと比較2013年1月26日土曜日
  • 16. 階層ベイズモデルの例: シミュレーション用データ作成 真のCVRとclick数(10∼20くらい)から乱数を使って サンプルデータを作成し、割り算で出したCVRと比較2013年1月26日土曜日
  • 17. 階層ベイズモデルの例: シミュレーション用データ作成 真のCVRとclick数(10∼20くらい)から乱数を使って サンプルデータを作成し、割り算で出したCVRと比較2013年1月26日土曜日
  • 18. 階層ベイズモデルの例: シミュレーション用データ作成 真のCVRとclick数(10∼20くらい)から乱数を使って サンプルデータを作成し、割り算で出したCVRと比較 結構ずれる2013年1月26日土曜日
  • 19. 階層ベイズモデルの例: 推定結果 個人毎だとclick数がすくないためかなりブレる2013年1月26日土曜日
  • 20. 階層ベイズモデルの例: シミュレーション用データ作成 真のCVRとclick数(10∼20くらい)から 乱数を使ってサンプルデータを作成する2013年1月26日土曜日
  • 21. 階層ベイズモデルの例: 階層ベイズ推定 baysemパッケージのrhierBinLogit用のデータを作成2013年1月26日土曜日
  • 22. 階層ベイズモデルの例: 階層ベイズ推定 rhierBinLogit関数を実行2013年1月26日土曜日
  • 23. 階層ベイズモデルの例: 推定結果 割り算推定よりはブレが小さそう2013年1月26日土曜日
  • 24. 階層ベイズモデルの例: 割り算推定と階層ベイズ推定の比較 割り算推定CVRよりも 真のCVRに近くなっている2013年1月26日土曜日
  • 25. 階層ベイズモデルの例: 割り算推定と階層ベイズ推定の比較 割り算推定CVRよりも 真のCVRに近くなっている2013年1月26日土曜日
  • 26. AGENDA ■ 自己紹介 ■ 階層ベイズモデルとは ■ ユーザーの選択行動モデルでの例 ■ 2項ロジットモデル ■ 階層ベイズ2項ロジットモデル2013年1月26日土曜日
  • 27. 参考 Rで学ぶデータサイエンス マーケティング・モデル2013年1月26日土曜日
  • 28. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている2013年1月26日土曜日
  • 29. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている2013年1月26日土曜日
  • 30. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている インストールする インストールしない2013年1月26日土曜日
  • 31. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている インストールする インストールしない2013年1月26日土曜日
  • 32. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている インストールする インストールしない2013年1月26日土曜日
  • 33. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている アイテムAを買う インストールする アイテムBを買う インストールしない アイテムCを買う2013年1月26日土曜日
  • 34. ユーザーの選択行動モデル ユーザーは様々な選択行動をしている アイテムAを買う インストールする アイテムBを買う インストールしない アイテムCを買う2013年1月26日土曜日
  • 35. ユーザーの選択行動モデル 選択行動への影響を知る事で 効率的な施策を実行する事が出来る β1 広告 アイテムA β2 レコメンド Model アイテムB ・ ・ ・ アイテムC その他 βn2013年1月26日土曜日
  • 36. 2項ロジットモデル アイテムを買う・買わないのような 二択の選択行動モデル β1 広告 β2 購入する レコメンド Model ・ ・ ・ 購入しない その他 βn2013年1月26日土曜日
  • 37. 2項ロジットモデル ロジスティック曲線の回帰モデルで表現 各変数の回帰系数を市場反応パラメータとして解釈する β1 広告 購入する β2 レコメンド 購入確率 Model ・ ・ ・ 購入しない その他 βn2013年1月26日土曜日
  • 38. Rによる実行: glm関数 一般化線形モデルの関数glmで familyでbinominalを指定 glm(formula, family, data, ...)2013年1月26日土曜日
  • 39. Rによる実行: データセット mlogitパッケージのKetchupデータセット ケチャップのブランド選択データ 個人ID 購入機会 選択結果 説明変数2013年1月26日土曜日
  • 40. Rによる実行: データセット ブランドをhuntsとstbの2種類だけに限定 huntsの選択を0、stbの選択を1に変換2013年1月26日土曜日
  • 41. Rによる実行: 実行結果 stbの購入確率は、huntsの値上がりの影響よりも stbの値引きの方が影響が大きい2013年1月26日土曜日
  • 42. AGENDA ■ 自己紹介 ■ ユーザーの選択行動モデル ■ 2項ロジットモデル ■ 階層ベイズロジットモデル2013年1月26日土曜日
  • 43. ユーザー毎にパラメータを知りたい 市場反応パラメータをユーザー毎に求めて ユーザーにあわせた施策を行えるようにしたい β1 広告 購入する β2 レコメンド 購入確率 Model ・ ・ ・ 購入しない その他 βn2013年1月26日土曜日
  • 44. ユーザー毎にパラメータを知りたい 市場反応パラメータをユーザー毎に求めて ユーザーにあわせた施策を行えるようにしたい βh1 広告 購入する βh2 レコメンド 購入確率 Model ・ ・ ・ 購入しない その他 βhn2013年1月26日土曜日
  • 45. 2項ロジットモデルの限界 ユーザーによる違いは考慮されていないため 個々で見ると非効率な部分もある2013年1月26日土曜日
  • 46. 2項ロジットモデルの限界 ユーザーによる違いは考慮されていないため 個々で見ると非効率な部分もある2013年1月26日土曜日
  • 47. 2項ロジットモデルの限界 ユーザーによる違いは考慮されていないため 個々で見ると非効率な部分もある2013年1月26日土曜日
  • 48. 2項ロジットモデルの限界 ユーザーによる違いは考慮されていないため 個々で見ると非効率な部分もある2013年1月26日土曜日
  • 49. 2項ロジットモデルの限界 ユーザーによる違いは考慮されていないため 個々で見ると非効率な部分もある2013年1月26日土曜日
  • 50. ユーザー毎のパラメータが知りたい 市場反応パラメータはユーザー毎に違うはず しかし、ユーザー毎に推定するほどのデータはない・・ ? ? ? ?2013年1月26日土曜日
  • 51. ユーザー毎のパラメータが知りたい ユーザーは一人一人違うものの、共通な部分もある 共通部分を全ユーザーの情報を用いて推定する 個人毎に回帰するには データが少ないが・・・2013年1月26日土曜日
  • 52. ユーザー毎のパラメータが知りたい ユーザーは一人一人違うものの、共通な部分もある 共通部分を全ユーザーの情報を用いて推定する 個人毎に回帰するには データが少ないが・・・2013年1月26日土曜日
  • 53. ユーザー毎のパラメータが知りたい ユーザーは一人一人違うものの、共通な部分もある 共通部分を全ユーザーの情報を用いて推定する 個人毎に回帰するには データが少ないが・・・2013年1月26日土曜日
  • 54. ユーザー毎のパラメータが知りたい ユーザーは一人一人違うものの、共通な部分もある 共通部分を全ユーザーの情報を用いて推定する 個人毎に回帰するには 大まかな傾向は全体で推定 データが少ないが・・・ 個人毎に微調整2013年1月26日土曜日
  • 55. 階層ベイズ2項ロジットモデルの構築2013年1月26日土曜日
  • 56. 階層ベイズ2項ロジットモデルの構築 yh2013年1月26日土曜日
  • 57. 階層ベイズ2項ロジットモデルの構築 観測変数yhは個人パラメータβhを持つxhの関数 xh βh yh2013年1月26日土曜日
  • 58. 階層ベイズ2項ロジットモデルの構築 個人パラメータβhは 共通パラメータVB,Δを持つデモグラ変数zhの関数 zh xh VB βh yh Δ2013年1月26日土曜日
  • 59. 階層ベイズ2項ロジットモデルの構築 共通パラメータVB,Δも確率変数 多変量正規分布と逆ウィッシャート分布を事前分布とする zh xh 事前分布 V0 IW(v0,V0) VB v0 βh yh 事前分布 Σ0 Δ MVN(Δ0,Σ0) Δ02013年1月26日土曜日
  • 60. 階層ベイズ2項ロジットモデルのベイズ推定 MCMC法を用いてパラメータを推定する MCMCについては@teramonagiさんの資料を確認2013年1月26日土曜日
  • 61. 階層ベイズ2項ロジットモデルのベイズ推定 βh,VB,Δについて適当に初期値を設定する zh xh 事前分布 V0 IW(v0,V0) VB v0 βh yh 事前分布 Σ0 Δ MVN(Δ0,Σ0) Δ02013年1月26日土曜日
  • 62. 階層ベイズ2項ロジットモデルのベイズ推定 VB,Δを固定してβhの事後分布からサンプリング zh xh 事前分布 V0 IW(v0,V0) VB v0 βh yh 事前分布 Σ0 Δ MVN(Δ0,Σ0) Δ02013年1月26日土曜日
  • 63. 階層ベイズ2項ロジットモデルのベイズ推定 サンプリングされたβhを目的変数とする 多変量回帰モデルからΔの事後分布を得る zh xh 事前分布 V0 IW(v0,V0) VB v0 βh yh 事前分布 Σ0 Δ MVN(Δ0,Σ0) Δ02013年1月26日土曜日
  • 64. 階層ベイズ2項ロジットモデルのベイズ推定 Δとβhを固定してVBを発生させる zh xh 事前分布 V0 IW(v0,V0) VB v0 βh yh 事前分布 Σ0 Δ MVN(Δ0,Σ0) Δ02013年1月26日土曜日
  • 65. 階層ベイズ2項ロジットモデルのベイズ推定 M回以降の繰り返しについて それぞれのパラメータを保存する zh xh 事前分布 V0 IW(v0,V0) VB v0 βh yh 事前分布 Σ0 Δ MVN(Δ0,Σ0) Δ02013年1月26日土曜日
  • 66. Rによる実行例:データセット モデル評価のため、人工データを生成2013年1月26日土曜日
  • 67. Rによる実行例:階層ベイズ2項ロジットモデルの実行 rhierBinLogit関数を実行する2013年1月26日土曜日
  • 68. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 Δの推定結果2013年1月26日土曜日
  • 69. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 Δの分布2013年1月26日土曜日
  • 70. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 Δの分布2013年1月26日土曜日
  • 71. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 Δのサンプリング2013年1月26日土曜日
  • 72. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 βh1の推定値2013年1月26日土曜日
  • 73. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 βh2の推定値2013年1月26日土曜日
  • 74. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 βh3の推定値2013年1月26日土曜日
  • 75. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 βh4の推定値2013年1月26日土曜日
  • 76. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 βh5の推定値2013年1月26日土曜日
  • 77. Rによる実行例:階層ベイズ2項ロジットモデルの実行結果 βhの事後分布2013年1月26日土曜日
  • 78. AGENDA ■ 自己紹介 ■ 階層ベイズモデルとは ■ ユーザーの選択行動モデルでの例 ■ 2項ロジットモデル ■ 階層ベイズ2項ロジットモデル2013年1月26日土曜日
  • 79. ご清聴ありがとうございました!2013年1月26日土曜日
  • 80. APENDIX2013年1月26日土曜日

×