Upgrade to Pro — share decks privately, control downloads, hide ads and more …

ロジスティック回帰の考え方・使い方 - TokyoR #33

horihorio
August 31, 2013

ロジスティック回帰の考え方・使い方 - TokyoR #33

horihorio

August 31, 2013
Tweet

More Decks by horihorio

Other Decks in Business

Transcript

  1. 自己紹介 1 / 39 2013/8/31 • Twitter ID: @horihorio •

    お仕事: 分析コンサルタント • 興味: 統計色々/DB/R/Finance/金融業/会計 • 過去の発表: ここ • 最近の出来事 • 金融業以外の分析にも進出 • だが何故か証券アナリストを取った • 優秀な人のマネジメントっぽい事を • 息子が1歳になった • 嫁が怖い ロジスティック回帰の考え方・使い方
  2. 今回の想定ケース 2 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 • 旅行代理店勤務 マーケティング部所属3年目 •

    「Rによるやさしい統計学」で Rの操作、線形回帰に慣れた • 上司(超文系)に 「いつもツアーの案内DM送っているけど、 もっと上手い送り方って考えてくれない?」 と言われた。どうしよう…
  3. 紹介すること 3 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 データ: customers でロジスティック回帰 glm(hit

    ~ sex + age + income + (略) , data = customers , family = binomial (link = "logit") ) をする前に考えること の一部です。 hit sex age income … 0 Female 32 520 … 1 Male 24 340 … 0 Male 39 580 … … … … …
  4. 6 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 自動車の作り方 モデルの作り方 を何回も、行きつ戻りつ、繰り返す。 1. 設計する

    2. 車を作る 3. 機器で検査 4. テストコースで検査 1. 設計する 2. モデルを作る 3. 検証データで検査 4. 実ビジネスで検査 モノの作り方
  5. アジェンダ 7 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 1 ロジスティック回帰で良いの? • その他の方法もない?

    • 相手はどんな方ですか? 2 ロジスティック回帰の仕上がり図 • 仕上がりから逆算して考えてみると 3 結果の検証方法 • モデルをつくったら、きちんと検査を 4 データ加工方法の例 • 回帰モデルは加工が大変デス… その一旦を紹介します 作り方1. モデル設計 作り方1. モデル設計 作り方2. モデル作成 作り方3. 4. モデル検証
  6. 欲しい結果:DMに反応する確率(0~1) DMの発送って? 線形回帰モデル • 入力:性別、年齢、購買履歴、… • 出力:購入額 ロジスティック回帰モデル • 入力:性別、年齢、購買履歴、…

    • 出力: DMに反応する確率 ⇒0.5以上(例えば)はDMに反応、と考える 0~1の値 10 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 こっち
  7. ◦×とに分類したい ⇒ 識別モデル ただ、識別モデルって他にもある 他にも方法はある 代表的なところ • ロジスティック回帰 • 決定木

    • ランダムフォレスト • ニューラルネット • SVM (Support Vector Machine) などなど 11 / 39 2013/8/31 ロジスティック回帰の考え方・使い方
  8. 判断基準は色々山ほど。万能な基準はない。 どのモデルを選べばいいの? • 当たるか? ⇒高度な技術?は精度UP、分かりやすさはDOWN… • いつも同じ結果が出るか? ⇒毎回違う結果が出るモデルも… • データ加工の手間は?

    ⇒前処理が 相当必要~ほぼ不要 までイロイロ • モデルが解釈出来る/し易いか? ⇒ブラックボックスなモデルもあり • チューニングの余地があるか? ⇒「チューニング出来ないモデルが散々な結果」への恐怖… 12 / 39 2013/8/31 ロジスティック回帰の考え方・使い方
  9. ビジネスならば:「説明する相手を考える」 提案する基準 ※出典:私の独断と偏見 13 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 モデル 技術が

    ある 相手は… 技術が ない 相手は… 結果の 要因 追求 分析 工数 ロジスティック回帰 正面勝負か 分かる気も 可能 大 決定木 恥ずかしくネw よく分かる♪ えw 小 ランダムフォレスト 忙しかった? 結果だけなら よーく 分かった 難しい 小 ニューラル ネットワーク 結果が欲し かったのね 無理 小~中 SVM 好きですね… 難しい 中
  10. 結果に至った理由が知りたい場合 私がロジスティック回帰を選ぶ場合 14 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 モデル 技術が ある

    相手は… 技術が ない 相手は… 結果の 要因 追求 分析 工数 ロジスティック回帰 正面勝負か 分かる気も 可能 大 決定木 恥ずかしくネw よく分かる♪ えw 小 ランダムフォレスト 忙しかった? 結果だけなら よーく 分かった 難しい 小 ニューラル ネットワーク 結果が欲し かったのね 無理 小~中 SVM 好きですね… 難しい 中 ココに注目
  11. ※普段は、もう少し分かりやすく&マトモに書きます… 最低限伝えるメッセージ 説明の例 16 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 重要度 採用変数

    有意確率 オッズ比 1 年収_百万 0.1% 1.12 2 年齢_50代 0.5% 0.82 3 性別_女性 1.2% 1.32 … … … … - 切片 0.3% -
  12. 説明の例 ※普段は、もう少し分かりやすく&マトモに書きます… 17 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 重要度 採用変数 有意確率

    オッズ比 1 年収_百万 0.1% 1.12 2 年齢_50代 0.5% 0.82 3 性別_女性 1.2% 1.32 … … … … - 切片 0.3% - 有意確率の 小さい順 係数が本来はゼロ (つまり意味なし) である確率 (その他比で) 確率が…倍になる 最低限伝えるメッセージ
  13. R出力との対応 18 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 重要度 採用変数 有意確率 オッズ比

    1 年収_百万 0.1% 1.12 2 年齢_50代 0.5% 0.82 3 性別_女性 1.2% 1.32 … … … … - 切片 0.3% - 結果のsummaryの抜粋 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -1.978 … … 0.003 sex_femail 0.278 … … 0.012 age_50th -0.198 … … 0.005 income 0.113 … … 0.001 … exp(Estimate) の値
  14. だけど一応、軽く解説: オッズ比 ⇒ 「他と比べて確率がx倍」 を表す指標 【右上図での解釈例】 • カテゴリー変数の場合 女性ならば(対男性比で)DM反応率が1.12倍増加 •

    連続変数の場合 年収が100万円増えると、DM反応率が1.32倍増加 解説は他の資料を! オッズ比って? 20 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 重要度 採用変数 有意確率 オッズ比 1 年収_百万 0.1% 1.12 2 年齢_50代 0.5% 0.82 3 性別_女性 1.2% 1.32 … … … … - 切片 0.3% -
  15. 24 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 自動車の作り方 モデルの作り方 を何回も、行きつ戻りつ、繰り返す。 1. 設計する

    2. 車を作る 3. 機器で検査 4. テストコースで検査 1. 設計する 2. モデルを作る 3. 検証データで検査 4. 実ビジネスで検査 モノの作り方 再掲 ココの話
  16. 方法3.クロス・バリデーション ※これも一例です 作り方の3. 検証データで検査 27 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 No.1

    #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 ⇒ 精度1 No.2 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 ⇒ 精度2 No.3 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 ⇒ 精度3 … … … No.10 #1 #2 #3 #4 #5 #6 #7 #8 #9 #10 ⇒ 精度10 構築データ 検証データ 構築データの 精度と比較
  17. 作り方の3. 検証データで検査 28 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 で問題: 精度検証ってなに? 杓子定規な基準はない。

    教科書にありがち: CAP図、AR値 • 不適当 • 悪くないけどベストでない な場合も多々。 統計知識、データ抽出・加工技術、業界・業務知識 等々の総合力勝負だったり。
  18. 列「会員加入申込」は、 Web、郵送、電話、その他 のどれかがある そのまま投入すると、面倒くさい話が発生。 1. カテゴリ変数の扱い 32 / 39 2013/8/31

    ロジスティック回帰の考え方・使い方 採用変数 有意確率 オッズ比 会員加入申込. Web 0.3% 1.47 会員加入申込. 郵送 2.4% 0.69 会員加入申込. 電話 13.3% 0.92 会員加入申込. その他 65.2% 1.00 基準が選べない 怪しいのが混入
  19. • 会員加入申込_Web: Webならば1、非該当は0 • 会員加入申込_郵送: 郵送ならば1、非該当は0 • 会員加入申込_電話: 電話ならば1、非該当は0 •

    会員加入申込_その他:その他ならば1、非該当は0 例えば、caretパッケージの dummyVars が便利 対応法:(1)各々の変数を作る 1. カテゴリ変数の扱い 33 / 39 2013/8/31 ロジスティック回帰の考え方・使い方
  20. • 会員加入申込_Web: Webならば1、非該当は0 • 会員加入申込_郵送: 郵送ならば1、非該当は0 • 会員加入申込_電話: 電話ならば1、非該当は0 •

    会員加入申込_その他:その他ならば1、非該当は0 何を基準にすれば良い? ⇒ 業務の理解、ヒヤリング力のお話な 対応法:(2)基準としたい変数以外でステップワイズ 1. カテゴリ変数の扱い 34 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 郵送比でxx倍が 見たいので非投入
  21. どう切るのか? どこを基準にするのか? ⇒ 業務の理解、ヒヤリング力のお話な ※注:これは初心者向け 対応な気が • 20歳未満 • 20代

    … • 60代 • 70歳以上 推奨法:ビンニングをして、カテゴリ変数の扱いで ⇒ 各カテゴリはx倍、で曲線傾向を表現 2. 曲線傾向の扱い方 36 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 これを基準に
  22. • 外れ値の対応、処理 • 数値のスケール(例:金額は百万単位) • 変換(例:対数、ルート、log) • (30代等の)特定のカテゴリのみに効く変数の扱い • オッズ比が1以上/以下

    に納得感があるか …まだまだ挙げればキリナイです キッチリ回帰モデルをするのは大変 by ワタシの実感 その他の考慮事項 37 / 39 2013/8/31 ロジスティック回帰の考え方・使い方
  23. というか、言いたかったこと 39 / 39 2013/8/31 ロジスティック回帰の考え方・使い方 ビジネスの場合 • 分析して儲かる •

    相手が納得する が大前提。 で • 2度の翻訳の妥当性 • 「1から2」&「AからB」の両方が妥当か の両方を詰めるのは大変、だけど面白いです。 1. ビジネスの問題を A) 数学の問題に翻訳し B) 問題を数学的に解いて 2. 再度ビジネス世界に翻訳