Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Rで学ぶ離散選択モデル
@sanoche16
第37回 Tokyo.R
About me
名前:佐野宏喜、sanoche16
職業:コンサルタント
出身:商学部卒業
得意:マーケティングサイエンス
経験:Linux, PHP, Python, Java, Ruby
夢:修行が終わったら起業したいです^^
About me
Agenda
1. 離散選択モデルの導入
2. 2項ロジットモデルの活用
3. 離散選択モデル本格入門
4. Rを用いた多項ロジットモデルの利用
Agenda
1. 離散選択モデルの導入
私たちが日々直面している何らかの選択
1. 離散選択モデルの導入
私たちが日々直面している何らかの選択
1. 離散選択モデルの導入
私たちが日々直面している何らかの選択
1. 離散選択モデルの導入
私たちが日々直面している何らかの選択
1. 離散選択モデルの導入
私たちが日々直面している何らかの選択
=>これらの選択行動をモデル化したい!
1. 離散選択モデルの導入
選択行動のモデル化の例
1. 離散選択モデルの導入
選択行動のモデル化の例
1. 離散選択モデルの導入
選択行動のモデル化の例
1680円2079円
Amazon星 4
284ページ
Amazon星 4.5
152ページ
1. 離散選択モデルの導入
選択行動のモデル化の例
1680円2079円
Amazon星 4
284ページ
Amazon星 4.5
152ページ
年収○○万円
閲覧回数xx回
統計スキル Lv.??
1. 離散選択モデルの導入
選択行動のモデル化の例
1680円2079円
Amazon星 4
284ページ
Amazon星 4.5
152ページ
観測要因
年収○○万円
閲覧回数xx回
統計スキル Lv.??
1. 離散選択モデルの導入
選択行動のモデル化の例
1680円2079円
Amazon星 4
284ページ
Amazon星 4.5
152ページ
年収○○万円
閲覧回数xx回
統計スキル Lv.??
観測要因
非観測要因
1. 離散選択モデルの導入
選択行動のモデル化の例
1680円2079円
Amazon星 4
284ページ
Amazon星 4.5
152ページ
年収○○万円
閲覧回数xx回
統計スキル Lv.??
観測要因
非観測要因
要因と選択行動の関係は、、、?
1. 離散選択モデ...
選択行動のモデル化
製品の価格
レビュー数
ページ数
・・・
年収
閲覧回数
統計スキル
・・・
1. 離散選択モデルの導入
選択行動のモデル化
製品の価格
レビュー数
ページ数
・・・
年収
閲覧回数
統計スキル
・・・
観測要因
非観測要因
1. 離散選択モデルの導入
選択行動のモデル化
処理
製品の価格
レビュー数
ページ数
・・・
年収
閲覧回数
統計スキル
・・・
観測要因
非観測要因
1. 離散選択モデルの導入
選択行動のモデル化
処理
製品の価格
レビュー数
ページ数
・・・
選択行動
年収
閲覧回数
統計スキル
・・・
観測要因
非観測要因
1. 離散選択モデルの導入
選択行動のモデル化
処理
製品の価格
レビュー数
ページ数
・・・
年収
閲覧回数
統計スキル
・・・
観測要因
非観測要因
選択行動
1. 離散選択モデルの導入
選択行動のモデル化
処理
製品の価格
レビュー数
ページ数
・・・
年収
閲覧回数
統計スキル
・・・
     という関数を考えて
選択行動のモデル化出来る!
観測要因
非観測要因
選択行動
1. 離散選択モデルの導入
• 選択行動を決めた要因は観測要因xと非観測要因εに分け
られる
• h(x, ε) とはx, εを与えることで選択行動y(実現値)を決
定する関数とする
• ただし、非観測要因は観測できないので、代わりに確率
変数を用いて表現する
• y =...
• 選択行動を決めた要因は観測要因xと非観測要因εに分け
られる
• h(x, ε) とはx, εを与えることで選択行動y(実現値)を決
定する関数とする
• ただし、非観測要因は観測できないので、代わりに確率
変数を用いて表現する
• y =...
• 選択行動を決めた要因は観測要因xと非観測要因εに分け
られる
• h(x, ε) とはx, εを与えることで選択行動y(実現値)を決
定する関数とする
• ただし、非観測要因は観測できないので、代わりに確率
変数を用いて表現する
• y =...
• 選択行動を決めた要因は観測要因xと非観測要因εに分け
られる
• h(x, ε) とはx, εを与えることで選択行動y(実現値)を決
定する関数とする
• ただし、非観測要因は観測できないので、代わりに確率
変数を用いて表現する
• y =...
• y=h(x, ε)を考える
• x, εにより、享受できる効用(欲求)をUとすると、     
-                      とかける
• εがロジスティック分布に        に従う場合
実際に使ってみる
1. 離散選択...
• y=h(x, ε)を考える
• x, εにより、享受できる効用(欲求)をUとすると、     
-                      とかける
• εがロジスティック分布に        に従う場合
実際に使ってみる
1. 離散選択...
まとめ
1. 離散選択モデルの導入
• 選択行動はいくつかの要因に基づいて決定されると考え
られる
• 選択行動を決める要因は観測要因と非観測要因に分けら
れる
• 非観測要因を確率分布として考えることで、選択行動がy
となる事象を観測要因だけ...
まとめ
1. 離散選択モデルの導入
• 選択行動はいくつかの要因に基づいて決定されると考え
られる
• 選択行動を決める要因は観測要因と非観測要因に分けら
れる
• 非観測要因を確率分布として考えることで、選択行動がy
となる事象を観測要因だけ...
2. 実践!2項ロジットモデル
• 選択行動として、yを選ぶ確率は観測要因xを使って次のよ
うに考えられることが分かった
!
• これは選択行動がyとなる確率を表しており、ここではyを
選ぶという選択肢とyを選ばないという選択肢の2択と
なっている
• そのため、このモデルは...
• 例として、R関連書籍の購入回数から、とある新書の購入
確率を予測することを考える
• 観測要因は購入回数のみなので、  は購入回数を用い
て、  =     と表せる
• 非観測要因も考えると購入確率は、購入回数をx, 購入する
場合は1購...
データは以下のように人工データを用いて作成する
人工データの作成
2. 実践!2項ロジットモデル
データは以下のように人工データを用いて作成する
人工データの作成
2. 実践!2項ロジットモデル
購入回数 買った or 買ってない
• 例として、購入回数が10回の人の購入確率を考えてみる
 , ,  をそれぞれ0.1, 0.05とすると、P=0.65となる
  ,  をそれぞれ0.05, 0.2とすると、P=0.89となる
• また、購入回数が2回の人の購入確率も考える
...
•  ,  が求まれば、購入回数毎に購入確率が求められる
• 例えば、 が0.05,  が0.1のとき、購入回数が10回の場
合の購入確率はP=0.65であり、これは購入の生起確率を
表している
• そこで、この生起確率を用いて、実際に起きた事...
b0が0.05, b1が0.1の時
1. 離散選択モデルの導入
購入回数 8 7 4 …
購入確率 0.62 0.61 0.57 …
実際の購入有無 買った 買った 買ってない …
生起確率 0.62 0.61 0.43 …
尤度 = 0.62...
• Rではglmという関数を使い、b0, b1の最尤推定値を求め
ることが出来る
Rでの実行
2. 実践!2項ロジットモデル
• Rではglmという関数を使い、b0, b1の最尤推定値を求め
ることが出来る
Rでの実行
2. 実践!2項ロジットモデル
• Rではglmという関数を使い、b0, b1の最尤推定値を求め
ることが出来る
Rでの実行
2. 実践!2項ロジットモデル
係数が求まる
求めたモデルを可視化してみる
2. 実践!2項ロジットモデル
求めたモデルを可視化してみる
2. 実践!2項ロジットモデル
回数が分かると確率が分かる!
• 2項ロジットモデルを用いることで、2択の選択肢におけ
る選択行動をモデル化することが出来る
• 観測要因の係数となる  , , は最尤推定を行うことで、
求めることが出来る
• モデル化を行うことで、観測要因の新たな値に対して、特
定の選択...
3. 離散選択モデル本格入門
• 2項ロジットモデルは買う、買わないなど、2つの選択肢
からの選択をモデル化している
• 実際には選択肢が複数存在することもあり、選択肢間の関
係は様々である
• 複数の選択肢を同時に扱い、選択肢間の関係も同時に扱い
たい!
2項ロジットモデ...
• 2項ロジットモデルは買う、買わないなど、2つの選択肢
からの選択をモデル化している
• 実際には選択肢が複数存在することもあり、選択肢間の関
係は様々である
• 複数の選択肢を同時に扱い、選択肢間の関係も同時に扱い
たい!
2項ロジットモデ...
• 離散選択モデルでは選択肢について、大きく3つの前提を
置いている
1. 相互排他性
離散選択モデルの選択肢から選ばれる数は常に1つでな
ければならない
2. 網羅性
離散選択モデルではすべての選択肢が選択可能なものと
して網羅されている必要...
• 離散選択モデルでの3つの前提のうち、前者2つは問題な
いが、3の条件により適用が難しい場合がある
1. 相互排他性
2つの商品を同時に買うという場合には、2つの商品を買
うという選択肢を入れればOK
2. 網羅性
選ばれない場合には選ばない...
• 離散選択モデルでは、意思決定者は効用を最大化させる選
択肢を選ぶと考える
• 効用は非観測要因からなる効用も加味したランダム効用モ
デルというモデルで効用が表現される
• n人目の意思決定者の選択肢jに対する効用は  と表現す
る(j = ...
• 意思決定者nによってj個の選択肢からiが選ばれるのは以
下のように表現される
!
!
!
• 観測要因にあたる  はパラメータに関して線形に考えら
れることが多い
• 非観測要因にあたる  の確率分布の仮定の仕方によっ
て、多項ロジットモデ...
• 車、バス、電車の交通手段の選択行動をモデル化する
• 観測要因として、コストと時間を考えるとすると、確定的
効用は以下のようにかける
!
!
• このうち、車を選択する条件は以下のようになる
選択確率の例
3. 離散選択モデル本格入門
かつ
• 不確定部分の分布がガンベル分布に従うとすると、
多項ロジットの導出
3. 離散選択モデル本格入門
• 不確定部分の分布がガンベル分布に従うとすると、
多項ロジットの導出
3. 離散選択モデル本格入門
多項ロジットの導出
• 先ほどの車、バス、電車のうち、車を交通手段として選択
する確率は次のようになる
多項ロジットモデルの例
3. 離散選択モデル本格入門
• 先ほどの車、バス、電車のうち、車を交通手段として選択
する確率は次のようになる
多項ロジットモデルの例
3. 離散選択モデル本格入門
• 多項ロジットモデルを用いることで複数の選択肢を同時に
比較することが可能になる
• また、観測要因の変化に合わせてシェアがどうなるのか、
価格をいくらにさげたらどれだけ売り上げがあがるかなど
の予測を行うことが出来る
• 一方で、多項ロジッ...
4. Rを用いた多項ロジット
モデルの利用
• 離散選択モデルを扱うためのパッケージとしてmlogitパッ
ケージがある
• mlogitはmultinominal logit(多項ロジット)の略だが、
実際にはプロビットモデルや入れ子ロジットモデルなど、
離散選択モデルを包括的に扱うた...
mlogitパッケージのデータ型
4. Rを用いた多項ロジットの利用
• mlogitパッケージでは離散選択モデルを十分に扱うために、
データを独自のデータフレーム型で持つ
• mlogitパッケージのデータは選択肢・観測要因・意思決定
者の3...
wide型のデータ型
4. Rを用いた多項ロジットの利用
• wide型では選択した状況毎に1行ずつ記載する
• カラム数が増えてしまう代わりにlong型と比べると意思決
定者に共通のデータを繰り返す必要がない
long型のデータ型
4. Rを用いた多項ロジットの利用
• long型では選択した意思決定の選択肢毎に1行ずつ記載する
• 収入などの情報を選択肢の回数繰り返さなければいけないが、
カラム数を減らすことが出来る
mlogitパッケージではこち...
mlogitパッケージのデータ型変換
4. Rを用いた多項ロジットの利用
• mlogit.data関数を使うことでwide型のデータもlong型で
扱うことが出来る
mlogit.data(Fishing, shape = "wide", v...
mlogitパッケージのデータ型変換
4. Rを用いた多項ロジットの利用
• mlogit.data関数を使うことでwide型のデータもlong型で
扱うことが出来る
mlogit.data(Fishing, shape = "wide", v...
mlogitパッケージのデータ型変換
4. Rを用いた多項ロジットの利用
• mlogit.data関数を使うことでwide型のデータもlong型で
扱うことが出来る
mlogit.data(Fishing, shape = "wide", v...
mlogitパッケージのデータ型変換
4. Rを用いた多項ロジットの利用
• mlogit.data関数を使うことでwide型のデータもlong型で
扱うことが出来る
mlogit.data(Fishing, shape = "wide", v...
多項ロジットモデルの実行
4. Rを用いた多項ロジットの利用
• 利用するのはmlogitパッケージにあるFishというデータ
選択肢 結果 収入 選択肢 価格 釣率 選択ID
多項ロジットモデルの実行
4. Rを用いた多項ロジットの利用
• 利用するのはmlogitパッケージにあるFishというデータ
選択肢 結果 収入 選択肢 価格 釣率 選択ID
多項ロジットモデルの実行
4. Rを用いた多項ロジットの利用
• 利用するのはmlogitパッケージにあるFishというデータ
選択肢 結果 収入 選択肢 価格 釣率 選択ID
観測要因
多項ロジットモデルの実行
4. Rを用いた多項ロジットの利用
• mlogitモデルの実行方法
共通係数を推定 個人に固有のもの それ以外
• 意思決定者・選択肢毎に異なる変数に対して共通の係数を推定
• 意思決定者に固有のものに対する係数を選...
多項ロジットモデルの実行
4. Rを用いた多項ロジットの利用
• mlogitモデルの結果確認
多項ロジットモデルの実行
4. Rを用いた多項ロジットの利用
• mlogitモデルの結果確認
係数が推定出来る
• mlogitパッケージを用いることで多項ロジットモデルを簡
単に実行することが出来る
• また、この結果を用いることで価格弾力性や消費者余剰を
測定することも出来る
• ただし、非測定要因が相互に相関がある場合にはその他の
モデルを使う必要...
• mlogitパッケージを用いることで多項ロジットモデルを簡
単に実行することが出来る
• また、この結果を用いることで価格弾力性や消費者余剰を
測定することも出来る
• ただし、非測定要因が相互に相関がある場合にはその他の
モデルを使う必要...
おすすめ資料
おわりに
階層ベイズを使った推定
Thank you!
Upcoming SlideShare
Loading in …5
×

Rで学ぶ離散選択モデル

19,940 views

Published on

37回Tokyo.Rの離散選択モデルの発表です。
多項ロジットモデルを中心に説明しています。

Published in: Marketing
  • Be the first to comment

Rで学ぶ離散選択モデル

  1. 1. Rで学ぶ離散選択モデル @sanoche16 第37回 Tokyo.R
  2. 2. About me
  3. 3. 名前:佐野宏喜、sanoche16 職業:コンサルタント 出身:商学部卒業 得意:マーケティングサイエンス 経験:Linux, PHP, Python, Java, Ruby 夢:修行が終わったら起業したいです^^ About me
  4. 4. Agenda
  5. 5. 1. 離散選択モデルの導入 2. 2項ロジットモデルの活用 3. 離散選択モデル本格入門 4. Rを用いた多項ロジットモデルの利用 Agenda
  6. 6. 1. 離散選択モデルの導入
  7. 7. 私たちが日々直面している何らかの選択 1. 離散選択モデルの導入
  8. 8. 私たちが日々直面している何らかの選択 1. 離散選択モデルの導入
  9. 9. 私たちが日々直面している何らかの選択 1. 離散選択モデルの導入
  10. 10. 私たちが日々直面している何らかの選択 1. 離散選択モデルの導入
  11. 11. 私たちが日々直面している何らかの選択 =>これらの選択行動をモデル化したい! 1. 離散選択モデルの導入
  12. 12. 選択行動のモデル化の例 1. 離散選択モデルの導入
  13. 13. 選択行動のモデル化の例 1. 離散選択モデルの導入
  14. 14. 選択行動のモデル化の例 1680円2079円 Amazon星 4 284ページ Amazon星 4.5 152ページ 1. 離散選択モデルの導入
  15. 15. 選択行動のモデル化の例 1680円2079円 Amazon星 4 284ページ Amazon星 4.5 152ページ 年収○○万円 閲覧回数xx回 統計スキル Lv.?? 1. 離散選択モデルの導入
  16. 16. 選択行動のモデル化の例 1680円2079円 Amazon星 4 284ページ Amazon星 4.5 152ページ 観測要因 年収○○万円 閲覧回数xx回 統計スキル Lv.?? 1. 離散選択モデルの導入
  17. 17. 選択行動のモデル化の例 1680円2079円 Amazon星 4 284ページ Amazon星 4.5 152ページ 年収○○万円 閲覧回数xx回 統計スキル Lv.?? 観測要因 非観測要因 1. 離散選択モデルの導入
  18. 18. 選択行動のモデル化の例 1680円2079円 Amazon星 4 284ページ Amazon星 4.5 152ページ 年収○○万円 閲覧回数xx回 統計スキル Lv.?? 観測要因 非観測要因 要因と選択行動の関係は、、、? 1. 離散選択モデルの導入
  19. 19. 選択行動のモデル化 製品の価格 レビュー数 ページ数 ・・・ 年収 閲覧回数 統計スキル ・・・ 1. 離散選択モデルの導入
  20. 20. 選択行動のモデル化 製品の価格 レビュー数 ページ数 ・・・ 年収 閲覧回数 統計スキル ・・・ 観測要因 非観測要因 1. 離散選択モデルの導入
  21. 21. 選択行動のモデル化 処理 製品の価格 レビュー数 ページ数 ・・・ 年収 閲覧回数 統計スキル ・・・ 観測要因 非観測要因 1. 離散選択モデルの導入
  22. 22. 選択行動のモデル化 処理 製品の価格 レビュー数 ページ数 ・・・ 選択行動 年収 閲覧回数 統計スキル ・・・ 観測要因 非観測要因 1. 離散選択モデルの導入
  23. 23. 選択行動のモデル化 処理 製品の価格 レビュー数 ページ数 ・・・ 年収 閲覧回数 統計スキル ・・・ 観測要因 非観測要因 選択行動 1. 離散選択モデルの導入
  24. 24. 選択行動のモデル化 処理 製品の価格 レビュー数 ページ数 ・・・ 年収 閲覧回数 統計スキル ・・・      という関数を考えて 選択行動のモデル化出来る! 観測要因 非観測要因 選択行動 1. 離散選択モデルの導入
  25. 25. • 選択行動を決めた要因は観測要因xと非観測要因εに分け られる • h(x, ε) とはx, εを与えることで選択行動y(実現値)を決 定する関数とする • ただし、非観測要因は観測できないので、代わりに確率 変数を用いて表現する • y = h(x, ε) が成り立つ場合に1、成り立たない場合には 0を返す指示関数Iを利用すると 1. 離散選択モデルの導入 離散選択モデルの導入
  26. 26. • 選択行動を決めた要因は観測要因xと非観測要因εに分け られる • h(x, ε) とはx, εを与えることで選択行動y(実現値)を決 定する関数とする • ただし、非観測要因は観測できないので、代わりに確率 変数を用いて表現する • y = h(x, ε) が成り立つ場合に1、成り立たない場合には 0を返す指示関数Iを利用すると 1. 離散選択モデルの導入 離散選択モデルの導入
  27. 27. • 選択行動を決めた要因は観測要因xと非観測要因εに分け られる • h(x, ε) とはx, εを与えることで選択行動y(実現値)を決 定する関数とする • ただし、非観測要因は観測できないので、代わりに確率 変数を用いて表現する • y = h(x, ε) が成り立つ場合に1、成り立たない場合には 0を返す指示関数Iを利用すると 1. 離散選択モデルの導入 離散選択モデルの導入 xが与えられた時 のyの確率
  28. 28. • 選択行動を決めた要因は観測要因xと非観測要因εに分け られる • h(x, ε) とはx, εを与えることで選択行動y(実現値)を決 定する関数とする • ただし、非観測要因は観測できないので、代わりに確率 変数を用いて表現する • y = h(x, ε) が成り立つ場合に1、成り立たない場合には 0を返す指示関数Iを利用すると 1. 離散選択モデルの導入 離散選択モデルの導入 xが与えられた時 のyの確率 εの確率で yが決まる
  29. 29. • y=h(x, ε)を考える • x, εにより、享受できる効用(欲求)をUとすると、      -                      とかける • εがロジスティック分布に        に従う場合 実際に使ってみる 1. 離散選択モデルの導入
  30. 30. • y=h(x, ε)を考える • x, εにより、享受できる効用(欲求)をUとすると、      -                      とかける • εがロジスティック分布に        に従う場合 実際に使ってみる 1. 離散選択モデルの導入 ロジスティック回帰となる
  31. 31. まとめ 1. 離散選択モデルの導入 • 選択行動はいくつかの要因に基づいて決定されると考え られる • 選択行動を決める要因は観測要因と非観測要因に分けら れる • 非観測要因を確率分布として考えることで、選択行動がy となる事象を観測要因だけを用いて確率を使って表現す ることが出来る • 非観測要因がロジスティック分布に従う場合、選択行動 がyとなる確率は !   と表せる
  32. 32. まとめ 1. 離散選択モデルの導入 • 選択行動はいくつかの要因に基づいて決定されると考え られる • 選択行動を決める要因は観測要因と非観測要因に分けら れる • 非観測要因を確率分布として考えることで、選択行動がy となる事象を観測要因だけを用いて確率を使って表現す ることが出来る • 非観測要因がロジスティック分布に従う場合、選択行動 がyとなる確率は !   と表せる
  33. 33. 2. 実践!2項ロジットモデル
  34. 34. • 選択行動として、yを選ぶ確率は観測要因xを使って次のよ うに考えられることが分かった ! • これは選択行動がyとなる確率を表しており、ここではyを 選ぶという選択肢とyを選ばないという選択肢の2択と なっている • そのため、このモデルは2項ロジットモデルと呼ばれる 2項ロジットモデルとは 2. 実践!2項ロジットモデル
  35. 35. • 例として、R関連書籍の購入回数から、とある新書の購入 確率を予測することを考える • 観測要因は購入回数のみなので、  は購入回数を用い て、  =     と表せる • 非観測要因も考えると購入確率は、購入回数をx, 購入する 場合は1購入しない場合は0を表すyを利用して、 !  と表せる いざ、実践! 2. 実践!2項ロジットモデル
  36. 36. データは以下のように人工データを用いて作成する 人工データの作成 2. 実践!2項ロジットモデル
  37. 37. データは以下のように人工データを用いて作成する 人工データの作成 2. 実践!2項ロジットモデル 購入回数 買った or 買ってない
  38. 38. • 例として、購入回数が10回の人の購入確率を考えてみる  , ,  をそれぞれ0.1, 0.05とすると、P=0.65となる   ,  をそれぞれ0.05, 0.2とすると、P=0.89となる • また、購入回数が2回の人の購入確率も考える  , ,  をそれぞれ0.1, 0.05とすると、P=0.55となる   ,  をそれぞれ0.05, 0.2とすると、P=0.61となる いざ、実践! 2. 実践!2項ロジットモデル 係数が分かれば確率が求まる!
  39. 39. •  ,  が求まれば、購入回数毎に購入確率が求められる • 例えば、 が0.05,  が0.1のとき、購入回数が10回の場 合の購入確率はP=0.65であり、これは購入の生起確率を 表している • そこで、この生起確率を用いて、実際に起きた事象のすべ ての実現値の確率を掛け合わせた値が、予測した確率から この購入が生まれた確率になる • この確率(=尤度)が最も高い  ,  を求めればよい b0, b1はどう求めればよいか 2. 実践!2項ロジットモデル
  40. 40. b0が0.05, b1が0.1の時 1. 離散選択モデルの導入 購入回数 8 7 4 … 購入確率 0.62 0.61 0.57 … 実際の購入有無 買った 買った 買ってない … 生起確率 0.62 0.61 0.43 … 尤度 = 0.62 0.61 0.43 … 尤度 =        … 実際にはb0, b1は不明なので、 尤度が最も高くなるb0, b1の組み合わせが、 b0, b1の推定値としてよいはず!
  41. 41. • Rではglmという関数を使い、b0, b1の最尤推定値を求め ることが出来る Rでの実行 2. 実践!2項ロジットモデル
  42. 42. • Rではglmという関数を使い、b0, b1の最尤推定値を求め ることが出来る Rでの実行 2. 実践!2項ロジットモデル
  43. 43. • Rではglmという関数を使い、b0, b1の最尤推定値を求め ることが出来る Rでの実行 2. 実践!2項ロジットモデル 係数が求まる
  44. 44. 求めたモデルを可視化してみる 2. 実践!2項ロジットモデル
  45. 45. 求めたモデルを可視化してみる 2. 実践!2項ロジットモデル 回数が分かると確率が分かる!
  46. 46. • 2項ロジットモデルを用いることで、2択の選択肢におけ る選択行動をモデル化することが出来る • 観測要因の係数となる  , , は最尤推定を行うことで、 求めることが出来る • モデル化を行うことで、観測要因の新たな値に対して、特 定の選択行動を取る確率を予測することが出来る まとめ 2. 実践!2項ロジットモデル
  47. 47. 3. 離散選択モデル本格入門
  48. 48. • 2項ロジットモデルは買う、買わないなど、2つの選択肢 からの選択をモデル化している • 実際には選択肢が複数存在することもあり、選択肢間の関 係は様々である • 複数の選択肢を同時に扱い、選択肢間の関係も同時に扱い たい! 2項ロジットモデルの限界 3. 離散選択モデル本格入門
  49. 49. • 2項ロジットモデルは買う、買わないなど、2つの選択肢 からの選択をモデル化している • 実際には選択肢が複数存在することもあり、選択肢間の関 係は様々である • 複数の選択肢を同時に扱い、選択肢間の関係も同時に扱い たい! 2項ロジットモデルの限界 3. 離散選択モデル本格入門 => より柔軟なモデルの利用
  50. 50. • 離散選択モデルでは選択肢について、大きく3つの前提を 置いている 1. 相互排他性 離散選択モデルの選択肢から選ばれる数は常に1つでな ければならない 2. 網羅性 離散選択モデルではすべての選択肢が選択可能なものと して網羅されている必要がある 3. 選択肢の数が有限である必要がある。 離散選択モデルの選択肢について 3. 離散選択モデル本格入門
  51. 51. • 離散選択モデルでの3つの前提のうち、前者2つは問題な いが、3の条件により適用が難しい場合がある 1. 相互排他性 2つの商品を同時に買うという場合には、2つの商品を買 うという選択肢を入れればOK 2. 網羅性 選ばれない場合には選ばないという選択肢を入れればOK 3. 選択肢の数が有限である必要がある。 ※年収など、上限がないものには適用できない 離散選択モデルの選択肢 3. 離散選択モデル本格入門
  52. 52. • 離散選択モデルでは、意思決定者は効用を最大化させる選 択肢を選ぶと考える • 効用は非観測要因からなる効用も加味したランダム効用モ デルというモデルで効用が表現される • n人目の意思決定者の選択肢jに対する効用は  と表現す る(j = 1, …, J) • 効用は観測要因に当たる確定的部分  と非観測要因に当 たる不確定的部分  の和として表現される 選択確率について 3. 離散選択モデル本格入門
  53. 53. • 意思決定者nによってj個の選択肢からiが選ばれるのは以 下のように表現される ! ! ! • 観測要因にあたる  はパラメータに関して線形に考えら れることが多い • 非観測要因にあたる  の確率分布の仮定の仕方によっ て、多項ロジットモデルやプロビットモデルなど様々なモ デルが表現される 選択確率について 3. 離散選択モデル本格入門
  54. 54. • 車、バス、電車の交通手段の選択行動をモデル化する • 観測要因として、コストと時間を考えるとすると、確定的 効用は以下のようにかける ! ! • このうち、車を選択する条件は以下のようになる 選択確率の例 3. 離散選択モデル本格入門 かつ
  55. 55. • 不確定部分の分布がガンベル分布に従うとすると、 多項ロジットの導出 3. 離散選択モデル本格入門
  56. 56. • 不確定部分の分布がガンベル分布に従うとすると、 多項ロジットの導出 3. 離散選択モデル本格入門 多項ロジットの導出
  57. 57. • 先ほどの車、バス、電車のうち、車を交通手段として選択 する確率は次のようになる 多項ロジットモデルの例 3. 離散選択モデル本格入門
  58. 58. • 先ほどの車、バス、電車のうち、車を交通手段として選択 する確率は次のようになる 多項ロジットモデルの例 3. 離散選択モデル本格入門
  59. 59. • 多項ロジットモデルを用いることで複数の選択肢を同時に 比較することが可能になる • また、観測要因の変化に合わせてシェアがどうなるのか、 価格をいくらにさげたらどれだけ売り上げがあがるかなど の予測を行うことが出来る • 一方で、多項ロジットは非観測要因の商品間の関係は考慮 されていない(IIA)。そのため、非観測要因が相互に相関関 係を持っているデータの分析にはプロビットモデルや入れ 子ロジットモデルなど、非観測要因間の相関をモデルに組 み込める手法を利用する必要がある まとめ 3. 離散選択モデル本格入門
  60. 60. 4. Rを用いた多項ロジット モデルの利用
  61. 61. • 離散選択モデルを扱うためのパッケージとしてmlogitパッ ケージがある • mlogitはmultinominal logit(多項ロジット)の略だが、 実際にはプロビットモデルや入れ子ロジットモデルなど、 離散選択モデルを包括的に扱うためのオブジェクト・関数 群が充実している • 今回は多項ロジットモデルのご紹介に限定 mlogitパッケージについて 4. Rを用いた多項ロジットの利用
  62. 62. mlogitパッケージのデータ型 4. Rを用いた多項ロジットの利用 • mlogitパッケージでは離散選択モデルを十分に扱うために、 データを独自のデータフレーム型で持つ • mlogitパッケージのデータは選択肢・観測要因・意思決定 者の3つの行をキー(index)として持つ • また、データセットはwide形、long型というの2つの形式 を扱える
  63. 63. wide型のデータ型 4. Rを用いた多項ロジットの利用 • wide型では選択した状況毎に1行ずつ記載する • カラム数が増えてしまう代わりにlong型と比べると意思決 定者に共通のデータを繰り返す必要がない
  64. 64. long型のデータ型 4. Rを用いた多項ロジットの利用 • long型では選択した意思決定の選択肢毎に1行ずつ記載する • 収入などの情報を選択肢の回数繰り返さなければいけないが、 カラム数を減らすことが出来る mlogitパッケージではこちらの形式の方が良い
  65. 65. mlogitパッケージのデータ型変換 4. Rを用いた多項ロジットの利用 • mlogit.data関数を使うことでwide型のデータもlong型で 扱うことが出来る mlogit.data(Fishing, shape = "wide", varying = 2:9, choice = "mode")
  66. 66. mlogitパッケージのデータ型変換 4. Rを用いた多項ロジットの利用 • mlogit.data関数を使うことでwide型のデータもlong型で 扱うことが出来る mlogit.data(Fishing, shape = "wide", varying = 2:9, choice = "mode") データ型(形式)を指定
  67. 67. mlogitパッケージのデータ型変換 4. Rを用いた多項ロジットの利用 • mlogit.data関数を使うことでwide型のデータもlong型で 扱うことが出来る mlogit.data(Fishing, shape = "wide", varying = 2:9, choice = "mode") データ型(形式)を指定 変数の場所を指定
  68. 68. mlogitパッケージのデータ型変換 4. Rを用いた多項ロジットの利用 • mlogit.data関数を使うことでwide型のデータもlong型で 扱うことが出来る mlogit.data(Fishing, shape = "wide", varying = 2:9, choice = "mode") データ型(形式)を指定 変数の場所を指定 選択行動を指定
  69. 69. 多項ロジットモデルの実行 4. Rを用いた多項ロジットの利用 • 利用するのはmlogitパッケージにあるFishというデータ 選択肢 結果 収入 選択肢 価格 釣率 選択ID
  70. 70. 多項ロジットモデルの実行 4. Rを用いた多項ロジットの利用 • 利用するのはmlogitパッケージにあるFishというデータ 選択肢 結果 収入 選択肢 価格 釣率 選択ID
  71. 71. 多項ロジットモデルの実行 4. Rを用いた多項ロジットの利用 • 利用するのはmlogitパッケージにあるFishというデータ 選択肢 結果 収入 選択肢 価格 釣率 選択ID 観測要因
  72. 72. 多項ロジットモデルの実行 4. Rを用いた多項ロジットの利用 • mlogitモデルの実行方法 共通係数を推定 個人に固有のもの それ以外 • 意思決定者・選択肢毎に異なる変数に対して共通の係数を推定 • 意思決定者に固有のものに対する係数を選択肢毎に推定 • 意思決定者・選択肢毎に異なる変数に対して選択肢毎に係数を推定
  73. 73. 多項ロジットモデルの実行 4. Rを用いた多項ロジットの利用 • mlogitモデルの結果確認
  74. 74. 多項ロジットモデルの実行 4. Rを用いた多項ロジットの利用 • mlogitモデルの結果確認 係数が推定出来る
  75. 75. • mlogitパッケージを用いることで多項ロジットモデルを簡 単に実行することが出来る • また、この結果を用いることで価格弾力性や消費者余剰を 測定することも出来る • ただし、非測定要因が相互に相関がある場合にはその他の モデルを使う必要がある まとめ 4. Rを用いた多項ロジットの利用
  76. 76. • mlogitパッケージを用いることで多項ロジットモデルを簡 単に実行することが出来る • また、この結果を用いることで価格弾力性や消費者余剰を 測定することも出来る • ただし、非測定要因が相互に相関がある場合にはその他の モデルを使う必要がある まとめ 4. Rを用いた多項ロジットの利用 次回以降に期待!?
  77. 77. おすすめ資料 おわりに 階層ベイズを使った推定
  78. 78. Thank you!

×