SlideShare a Scribd company logo
1 of 38
Download to read offline
Rで学ぶデータサイエンス
 #05 ロジスティック回帰

     2012/04/28
 TwitterID:sleipnir002
自己紹介

Twitter ID:@sleipnir002
みかどのひと@悪の枢軸
•Tokyo.Rでパターン認識の発表をシリーズで
やっています。
•職業:BIコンサル
•IT業界からBIを駆逐して、統計をやろうぜとい
う運動を起こしたい。
•おみやげを置いておきます。
•AKB48だと、こじはるが好きです。
R一人勉強会のご紹介
                       Rで学ぶデータサイエンス 5パターン認識
                       (著)金森 敬文, 竹之内 高志, 村田 昇, 金 明哲
                       共立出版
                       今ならデモスクリプトがダウンロードできる!
                       http://www.kyoritsu-
                       pub.co.jp/service/service.html#019256


第1章 判別能力の評価 Done
第2章 k-平均法 Done
第3章 階層的クラスタリング
第4章 混合正規分布モデル Done
第5章 判別分析                               面白ネタ募集中!
第6章 ロジスティック回帰 ←イマココ!
第7章 密度推定
第8章 k-近傍法 Done
第9章 学習ベクトル量子化 Done
第10章 決定木
第11章 サポートベクターマシン
第12章 正則化とパス追跡アルゴリズム
第13章 ミニマックス確率マシン
第14章 集団学習                      さぁ、今すぐAmazonでクリック!!
第15章 2値判別から多値判別へ
これまでのあらすじ
• 前回は第4回としてK近傍法とLVQを学んだ
  よ!
     K近傍法           LVQ




   テストデータ




 3近傍のトレーニングデータ



     訓練データ
今回の目的
    ロジスティック回帰とその仲間についての大枠を理解

•   ロジスティック回帰
•   ロジスティック回帰の弱点
•   非線形ロジスティック回帰
•   ニューラルネットワーク

    関数の細かい使用法などは
     後でBlogにまとめます。
※今日は話を2値判別に絞ります。
ロジスティック回帰
   質的変数を線形に回帰するためのアルゴリズム。

                          e.g.2値判別の場合
• クラスの事後確率オッズ比
  の対数(ロジット)が特徴量             Pr(Y  1 | x)
                  (A) log                    Tx
  の線形和で表現されている            1  Pr(Y  1 | x)
  モデル(A)
• 事後確率はシグモイド関数
  (B)であらわされる。

                  (B)
回帰ってなんすか?
回帰分析
説明される(従属)変数を説明(独立)変数の式で当てはめる。
      予測、変数の効果の調査に用いる。
            モデル式                         既にあるデータ

従属変数    従属変数
         係数             独立変数              x11  x1 p   y1 
                                                       
                                      X      Y   
                                         x  x        y 
   y  1 x1   2 x2     n xn        n1     np    n




              1               2             
例:
ワインの値段~畑の温度+土壌のミネラル+・・・
幸福度~年収+周りとの年収比+・・・
課題
質的変数はそのままでは回帰できない。
質的変数を回帰する上での問題
   離散型の変数を連続変数で予測しても意味がない。

                               e.g.SPAM判別問題
• 判別したいクラスにそれぞ     Y=30→?
  れ-1とか1とか数字を割り当
  てる。
                   Y=1→No       y  1 x1   2 x2     n xn
• 30や-1はどういう意味があ
  る?                                         X

                    Y=0→?


 無理やり2値判別問題に
線形回帰を適用すると、、、      Y=-1→ Yes
ためしにやってみると
2値判別問題として、ラベルに1と2を割り当てて
  Irisデータを対象に回帰分析を行った結果
ロジスティック回帰
   質的変数を線形に回帰するためのアルゴリズム。

                          e.g.2値判別の場合
• クラスの事後確率の比の対
  数(ロジット)が特徴量の線             Pr(Y  1 | x)
                  (A) log                    Tx
  形和で表現されているモデ            1  Pr(Y  1 | x)
  ル(A)
• 事後確率はシグモイド関数
  (B)であらわされる。

                  (B)
ロジスティック回帰で判別する
               モデル構築:対数尤度の最大化
            判別:事後確率の最大化→  T x  0 ならY=1
判別
                                                                              モデル構築
predict() テストデータ                      ラベル付きデータ
                x                                                  glm( family=binominal)
                                         x11  x1 p   y1 
                                                      
                                     X      Y   
                                        x  x        y 
                                         n1     np    n
           事後確率
                                                                       対数尤度
                             1
    Pr ( Y  1 | x ) 
                                                                                  n
                                                            L(  )       y log Pr(Y  j | x )
                                                                                        j   i   i


                         1  e x
                                 T                                     j {1, 2} i 1

                                                                       を最大化

                                                  
            予測結果                       モデル=パラメータ
                 y
参考:ロジットから事後確率までの
       流れ
                                                                       T x
      Pr(Y  1 | x)                                                e
log                    x
                        T
                                            Pr(Y  1 | x)               T x
    1  Pr(Y  1 | x)                                         (1  e )
    Pr(Y  1 | x)      T x                                             1
                    e                      Pr(Y  1 | x) 
  1  Pr(Y  1 | x)                                           (e    T x
                                                                               1)
                 T x
 Pr(Y  1 | x)  e (1  Pr(Y  1 | x))                                  1
                                            Pr(Y  1 | x)          T x
        T x                         T x
                                                              (e               1)
 (1  e ) Pr(Y  1 | x)  e
ロジスティック回帰をRで実行する
その前に
データの前処理について
IRISデータ
   花の種類×萼片(幅・長さ)×花弁(幅・長さ)

setosa          versicolor           virginia




             sepal           petal

         Setosaだけ形が異なる?
2値判別問題にするための処理

setosaとvirginica+versicolorに分けて2値判別を行う。

                                          Set




                                      Vir+Ver



 3群                     2群


線形分離可能なデータであることに注目
実行してみる
ロジスティック回帰で判別する。

                                                       GLMのモデルを
                                                      返す。Binominalで
                                                      ロジスティック判別




*デモ、http://www.kyoritsu-pub.co.jp/service/service.html#019256を基に一部改変
判別結果
予測値と事後確率          予測値と残差




     判別の精度はほぼ完ぺき!
ロジスティック回帰の弱点
ロジスティック回帰の弱点
              入力データに対して超平面を構成する→
                線形分離不可能なデータに弱い

• 入力空間のデータより、超平
  面を構成、1次元に落とし込む。                               通常の回帰と同じ

                                                超平面(線形)
      y   x( R  R)
              T     n


        T x  0  c  1
       T                
        x  0  c  2
                                   超平面(非線形)              T x  0

• 非線形に回帰したい。
 y   T  ( x) ( R k  R)
                                                              T x  0
 e.g.  1 , x2 )  ( x1 , x2 , x1  x2 )
     (x                                             x0
                                                    T
2値判別問題にするための処理

       Setosa+virginiaとversicolorに分ける

                                        Set+Vir




  3群                      2群             Ver


線形分離不可能?なデータであることに注目
線形で判別してみる
 (さっきと一緒)
判別結果
予測値と事後確率          予測値と残差




    判別の精度が著しく落ちている。
非線形に判別してみる。

         e.g. 一次式ではなく二次式で判別する。




y  1 x1   2 x2     n xn



y  1 x1   2 x2     n xn  12 x1 x2    n 1n xn 1 xn
Rで書くとこんなかんじ

       e.g. 一次式ではなく二次式で判別する。




glm(Species~.,iris[index,],family=binomial)

glm(Species~.*.,iris[index,],family=binomial)
非線形で判別してみる
判別結果
予測値と事後確率          予測値と残差




線形分離不可能?なデータでも判別の精度が高い
ニューラルネットワーク
ニューラルネットワーク

     生物の脳の情報処理構造を模した情報処理装置


•   多層パーセプトロン
•   自己組織化マップ
•   RBFネットワーク
•   学習ベクトル量子化

      単純パーセプトロン=
       ロジスティック回帰
ロジスティック回帰と
                       多層パーセプトロン
      複数の階層を設けることで、非線形の効果を得ることが
                出来る。

ロジスティック回帰                               多層パーセプトロン
input output                input         hidden output
                                    W                    W
                                                                     この本を
 x1                          x1
       w1                                h1         j1               チェック!
 x2   w2                     x2                              f(y1)

      w3
                   f(y)                  h2   ・・・   j2
 x3                          x3                              f(y2)
      w4
                 1                       h3         j3
 x4   f:                     x4
           1  exp(  Y )

                                        誤差逆伝播法で
                                         重みを学習
ニューラルネットで判別する。
                モデル構築:nnet(Species~, X, size)
                予測:predict(res, X, type=“class”)




                                                     入力の一次式の
                                                       未使用




                                データが1次式でもモデルが複雑なので、非線
                                形ロジスティック回帰のように判別可能である。
   結果
*デモ、http://www.kyoritsu-pub.co.jp/service/service.html#019256を基に一部改変
まとめ
• ロジスティック回帰は質的変数の判別に用い
  る回帰モデル
• データが線形判別不可能な場合は非線形ロ
  ジスティック回帰を用いる。
• さらに複雑なモデル構築を行うとニューラル
  ネットワークとなる。

More Related Content

What's hot

ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門
Miyoshi Yuya
 
階層ベイズによるワンToワンマーケティング入門
階層ベイズによるワンToワンマーケティング入門階層ベイズによるワンToワンマーケティング入門
階層ベイズによるワンToワンマーケティング入門
shima o
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
Kawamoto_Kazuhiko
 
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
Kohta Ishikawa
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類
Shintaro Fukushima
 
ロジスティック回帰分析の入門 -予測モデル構築-
ロジスティック回帰分析の入門 -予測モデル構築-ロジスティック回帰分析の入門 -予測モデル構築-
ロジスティック回帰分析の入門 -予測モデル構築-
Koichiro Gibo
 
R Study Tokyo03
R Study Tokyo03R Study Tokyo03
R Study Tokyo03
Yohei Sato
 

What's hot (20)

ベイズ統計入門
ベイズ統計入門ベイズ統計入門
ベイズ統計入門
 
Transformerを雰囲気で理解する
Transformerを雰囲気で理解するTransformerを雰囲気で理解する
Transformerを雰囲気で理解する
 
サポートベクターマシン(SVM)の数学をみんなに説明したいだけの会
サポートベクターマシン(SVM)の数学をみんなに説明したいだけの会サポートベクターマシン(SVM)の数学をみんなに説明したいだけの会
サポートベクターマシン(SVM)の数学をみんなに説明したいだけの会
 
階層ベイズによるワンToワンマーケティング入門
階層ベイズによるワンToワンマーケティング入門階層ベイズによるワンToワンマーケティング入門
階層ベイズによるワンToワンマーケティング入門
 
PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説PCAの最終形態GPLVMの解説
PCAの最終形態GPLVMの解説
 
PRML8章
PRML8章PRML8章
PRML8章
 
グラフィカルモデル入門
グラフィカルモデル入門グラフィカルモデル入門
グラフィカルモデル入門
 
Stanコードの書き方 中級編
Stanコードの書き方 中級編Stanコードの書き方 中級編
Stanコードの書き方 中級編
 
Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)Rでisomap(多様体学習のはなし)
Rでisomap(多様体学習のはなし)
 
不均衡データのクラス分類
不均衡データのクラス分類不均衡データのクラス分類
不均衡データのクラス分類
 
ロジスティック回帰分析の入門 -予測モデル構築-
ロジスティック回帰分析の入門 -予測モデル構築-ロジスティック回帰分析の入門 -予測モデル構築-
ロジスティック回帰分析の入門 -予測モデル構築-
 
グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知グラフィカル Lasso を用いた異常検知
グラフィカル Lasso を用いた異常検知
 
PRML復々習レーン#9 前回までのあらすじ
PRML復々習レーン#9 前回までのあらすじPRML復々習レーン#9 前回までのあらすじ
PRML復々習レーン#9 前回までのあらすじ
 
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
乱択データ構造の最新事情 -MinHash と HyperLogLog の最近の進歩-
 
R Study Tokyo03
R Study Tokyo03R Study Tokyo03
R Study Tokyo03
 
Hyperoptとその周辺について
Hyperoptとその周辺についてHyperoptとその周辺について
Hyperoptとその周辺について
 
【論文読み会】Universal Language Model Fine-tuning for Text Classification
【論文読み会】Universal Language Model Fine-tuning for Text Classification【論文読み会】Universal Language Model Fine-tuning for Text Classification
【論文読み会】Universal Language Model Fine-tuning for Text Classification
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
 
2 3.GLMの基礎
2 3.GLMの基礎2 3.GLMの基礎
2 3.GLMの基礎
 
劣モジュラ最適化と機械学習1章
劣モジュラ最適化と機械学習1章劣モジュラ最適化と機械学習1章
劣モジュラ最適化と機械学習1章
 

Viewers also liked

機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価
Shintaro Fukushima
 
ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33
horihorio
 

Viewers also liked (11)

MlaPP 7章 「線形回帰」 8章 「ロジスティック回帰」
MlaPP 7章 「線形回帰」 8章 「ロジスティック回帰」MlaPP 7章 「線形回帰」 8章 「ロジスティック回帰」
MlaPP 7章 「線形回帰」 8章 「ロジスティック回帰」
 
1 8.交互作用
1 8.交互作用1 8.交互作用
1 8.交互作用
 
1 5.パラメトリックブートストラップ検定と確率分布
1 5.パラメトリックブートストラップ検定と確率分布1 5.パラメトリックブートストラップ検定と確率分布
1 5.パラメトリックブートストラップ検定と確率分布
 
1 7.Type II ANOVA
1 7.Type II ANOVA1 7.Type II ANOVA
1 7.Type II ANOVA
 
1 6.変数選択とAIC
1 6.変数選択とAIC1 6.変数選択とAIC
1 6.変数選択とAIC
 
1 2.t検定
1 2.t検定1 2.t検定
1 2.t検定
 
1 3.分散分析 anova
1 3.分散分析 anova1 3.分散分析 anova
1 3.分散分析 anova
 
1 4.回帰分析と分散分析
1 4.回帰分析と分散分析1 4.回帰分析と分散分析
1 4.回帰分析と分散分析
 
機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価機械学習を用いた予測モデル構築・評価
機械学習を用いた予測モデル構築・評価
 
1 1.はじめに
1 1.はじめに1 1.はじめに
1 1.はじめに
 
ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33ロジスティック回帰の考え方・使い方 - TokyoR #33
ロジスティック回帰の考え方・使い方 - TokyoR #33
 

Similar to パターン認識 05 ロジスティック回帰

13.2 隠れマルコフモデル
13.2 隠れマルコフモデル13.2 隠れマルコフモデル
13.2 隠れマルコフモデル
show you
 
情報検索の基礎(11章)
情報検索の基礎(11章)情報検索の基礎(11章)
情報検索の基礎(11章)
Katsuki Tanaka
 
030 2変数の集計
030 2変数の集計030 2変数の集計
030 2変数の集計
t2tarumi
 
コホート研究 isseing333
コホート研究 isseing333コホート研究 isseing333
コホート研究 isseing333
Issei Kurahashi
 
mathemaical_notation
mathemaical_notationmathemaical_notation
mathemaical_notation
Kenta Oono
 

Similar to パターン認識 05 ロジスティック回帰 (20)

8.4 グラフィカルモデルによる推論
8.4 グラフィカルモデルによる推論8.4 グラフィカルモデルによる推論
8.4 グラフィカルモデルによる推論
 
PRML上巻勉強会 at 東京大学 資料 第1章後半
PRML上巻勉強会 at 東京大学 資料 第1章後半PRML上巻勉強会 at 東京大学 資料 第1章後半
PRML上巻勉強会 at 東京大学 資料 第1章後半
 
Introduction to the particle filter
Introduction to the particle filterIntroduction to the particle filter
Introduction to the particle filter
 
Re revenge chap03-1
Re revenge chap03-1Re revenge chap03-1
Re revenge chap03-1
 
PRML Chapter5.2
PRML Chapter5.2PRML Chapter5.2
PRML Chapter5.2
 
17th cvsaisentan takmin
17th cvsaisentan takmin17th cvsaisentan takmin
17th cvsaisentan takmin
 
NLPforml5
NLPforml5NLPforml5
NLPforml5
 
PRML 1.6 情報理論
PRML 1.6 情報理論PRML 1.6 情報理論
PRML 1.6 情報理論
 
機械学習と深層学習の数理
機械学習と深層学習の数理機械学習と深層学習の数理
機械学習と深層学習の数理
 
13.2 隠れマルコフモデル
13.2 隠れマルコフモデル13.2 隠れマルコフモデル
13.2 隠れマルコフモデル
 
Infomation geometry(overview)
Infomation geometry(overview)Infomation geometry(overview)
Infomation geometry(overview)
 
ウィナーフィルタと適応フィルタ
ウィナーフィルタと適応フィルタウィナーフィルタと適応フィルタ
ウィナーフィルタと適応フィルタ
 
パターン認識と機械学習6章(カーネル法)
パターン認識と機械学習6章(カーネル法)パターン認識と機械学習6章(カーネル法)
パターン認識と機械学習6章(カーネル法)
 
第8章 ガウス過程回帰による異常検知
第8章 ガウス過程回帰による異常検知第8章 ガウス過程回帰による異常検知
第8章 ガウス過程回帰による異常検知
 
PRML 8.4-8.4.3
PRML 8.4-8.4.3 PRML 8.4-8.4.3
PRML 8.4-8.4.3
 
情報検索の基礎(11章)
情報検索の基礎(11章)情報検索の基礎(11章)
情報検索の基礎(11章)
 
wq-1. ポアソン分布、指数分布、アーラン分布
wq-1. ポアソン分布、指数分布、アーラン分布wq-1. ポアソン分布、指数分布、アーラン分布
wq-1. ポアソン分布、指数分布、アーラン分布
 
030 2変数の集計
030 2変数の集計030 2変数の集計
030 2変数の集計
 
コホート研究 isseing333
コホート研究 isseing333コホート研究 isseing333
コホート研究 isseing333
 
mathemaical_notation
mathemaical_notationmathemaical_notation
mathemaical_notation
 

More from sleipnir002

TSP and Geocoding on R
TSP and Geocoding on RTSP and Geocoding on R
TSP and Geocoding on R
sleipnir002
 
How to use animation packages in R(Japanese)
How to use animation packages in R(Japanese)How to use animation packages in R(Japanese)
How to use animation packages in R(Japanese)
sleipnir002
 
Japan.r 2データベース
Japan.r 2データベースJapan.r 2データベース
Japan.r 2データベース
sleipnir002
 
パターン認識 08 09 k-近傍法 lvq
パターン認識 08 09 k-近傍法 lvqパターン認識 08 09 k-近傍法 lvq
パターン認識 08 09 k-近傍法 lvq
sleipnir002
 
パターン認識 04 混合正規分布
パターン認識 04 混合正規分布パターン認識 04 混合正規分布
パターン認識 04 混合正規分布
sleipnir002
 
パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0
sleipnir002
 
パターン認識 第01章-判別能力の評価
パターン認識 第01章-判別能力の評価パターン認識 第01章-判別能力の評価
パターン認識 第01章-判別能力の評価
sleipnir002
 

More from sleipnir002 (8)

TSP and Geocoding on R
TSP and Geocoding on RTSP and Geocoding on R
TSP and Geocoding on R
 
How to use animation packages in R(Japanese)
How to use animation packages in R(Japanese)How to use animation packages in R(Japanese)
How to use animation packages in R(Japanese)
 
animation1.0
animation1.0animation1.0
animation1.0
 
Japan.r 2データベース
Japan.r 2データベースJapan.r 2データベース
Japan.r 2データベース
 
パターン認識 08 09 k-近傍法 lvq
パターン認識 08 09 k-近傍法 lvqパターン認識 08 09 k-近傍法 lvq
パターン認識 08 09 k-近傍法 lvq
 
パターン認識 04 混合正規分布
パターン認識 04 混合正規分布パターン認識 04 混合正規分布
パターン認識 04 混合正規分布
 
パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0パターン認識02 k平均法ver2.0
パターン認識02 k平均法ver2.0
 
パターン認識 第01章-判別能力の評価
パターン認識 第01章-判別能力の評価パターン認識 第01章-判別能力の評価
パターン認識 第01章-判別能力の評価
 

パターン認識 05 ロジスティック回帰