SlideShare a Scribd company logo
1 of 53
http://www.ashinari.com/2009/09/30-029113.php
第7回 金沢人工知能勉強会 KAIM
回帰分析と使う上での注意事項
tomitomi
2018/11/2 初版
注意
本資料に使われている文献、図は勉強会及び教育目的のために引用して
います。引用されている文献の内容、図は著作者に帰属します。
abstract
• (重)回帰分析は、回帰を行う教師あり機械学習技法
の一つである。本発表では、回帰分析と回帰分析を
行う上での注意事項とその背景について概説する。
• “(Multiple) Regression analysis” is one of the basic
machine learning techniques for regression. In this
presentation, I will explain the points in using
regression analysis.
目次
• 自己紹介
• (参考資料)機械学習と回帰分析
• (参考資料)回帰分析のおさらい
• 回帰分析における変数選択
自己紹介
• 第6回 KAIM 発表資料 参照
– https://www.slideshare.net/tomit3/6-kaim-120127099
• パワポを作りすぎた。今回も昔の資料を整理しつつ多
めになった。発表内容からぼけるのがたまにきず。
• 機械学習を学習中。全然追いつけない。
機械学習と回帰分析
自己紹介
(参考資料)機械学習と回帰分析
(参考資料)回帰分析のおさらい
回帰分析の注意事項
回帰分析
• 今の時代はニューラルネットワークしかも深いやつ!
回帰分析なんて古い! と思っていませんか?
• 基本的な機械学習技法の一つ
– 回帰の機械学習技法は様々提案されているが回帰分析も
その一つ。NN、SVM、決定木といった技法特有のパラメータ
が違うだけで前処理や評価の考え方は同じ。
• シグナル&ノイズ(ネイトシルバー, 2013)では回帰分析のみで大統
領選挙における各州の候補者予測を行いほぼ当てた。
– 昨今は正則化を用いた技法の発展もあり(スパースモデリン
グ)
機械学習の歴史を振り返る→
良い初期値を与え、
勾配消失の回避
超多層化の時代へ
誤差伝播による多層化
(合成関数)
決定木+アンサンブル学習
Ridge+LASSOの組み合わせ
学習法の一般化
(デルタルール)
カーネルトリック(カーネル関数を
用いてデータを高次元へ写像)
パーセプトロンの発展、識別面に注目
(サポートベクター)
形式ニューロン
McCulloch, Pitts (1943)
↓
Perceptron
↓Rosenblatt (1958)
↓逆誤差伝播法:Rumelhart,
Hinton, Williams(1986) Autoencoder
Deep belief network
Hinton(2006)
ネオコグニトロン
福島(1984)↓
1940 1960 1980 2000 2020
ニューラルネットワーク(Neural Network) 多層NNの実現 深層学習※ホットな分野
Convolution NN:
↓ LeCun(1989)
↓ID3:Quinlan(1986)
↓CART:Breiman(1984) Random Forest
↓Breiman(2001)
↓C4.5:Quinlan(1993)
CHAID:
Gordon V. Kass(1980)↓
決定木(Decision Tree/Stamp)
アンサンブル学習
AdaBoost:Freund, Schapire(1995)↓
Bagging:Breiman, Leo (1996)↓
↓(線形)SVM:Vapnik(1963)
サポートベクターマシン(Support Vector Machine)
(非線形)SVM:
↓Boser, Guyon and Vapnik(1992)
判別分析
Fisher(1936)
統計学
(多変量解析)
回帰分析(線形回帰)
?(1800後半~)
Gradient Boosting
↓Brieman(1997), Friedman(1999)
※分類と回帰のはじまり
Ridge回帰:
↓Hoerl, Kennard (1970)
LASSO回帰:Tibshirani, R. (1996)
↓
回帰( 正則化→スパースモデリング)
↓ElasticNet:
H Zou, etal(2005)
機械学習技法の変遷
※教師あり機械学習の技法を抜粋
(主観で代表的な技法を抜粋)
精度向上・高速化のため日進月歩
最小二乗法の発見
(Methode des miondres quarres)
ルジャンドル(1805)
天体のモデル化
良い初期値を与え、
勾配消失の回避
超多層化の時代へ
誤差伝播による多層化
(合成関数)
決定木+アンサンブル学習
Ridge+LASSOの組み合わせ
学習法の一般化
(デルタルール)
カーネルトリック(カーネル関数を
用いてデータを高次元へ写像)
パーセプトロンの発展、識別面に注目
(サポートベクター)
形式ニューロン
McCulloch, Pitts (1943)
↓
Perceptron
↓Rosenblatt (1958)
↓逆誤差伝播法:Rumelhart,
Hinton, Williams(1986) Autoencoder
Deep belief network
Hinton(2006)
ネオコグニトロン
福島(1984)↓
1940 1960 1980 2000 2020
ニューラルネットワーク(Neural Network) 多層NNの実現 深層学習※ホットな分野
Convolution NN:
↓ LeCun(1989)
↓ID3:Quinlan(1986)
↓CART:Breiman(1984) Random Forest
↓Breiman(2001)
↓C4.5:Quinlan(1993)
CHAID:
Gordon V. Kass(1980)↓
決定木(Decision Tree/Stamp)
アンサンブル学習
AdaBoost:Freund, Schapire(1995)↓
Bagging:Breiman, Leo (1996)↓
↓(線形)SVM:Vapnik(1963)
サポートベクターマシン(Support Vector Machine)
(非線形)SVM:
↓Boser, Guyon and Vapnik(1992)
判別分析
Fisher(1936)
統計学
(多変量解析)
回帰分析(線形回帰)
?(1800後半~)
Gradient Boosting
↓Brieman(1997), Friedman(1999)
※分類と回帰のはじまり
Ridge回帰:
↓Hoerl, Kennard (1970)
LASSO回帰:Tibshirani, R. (1996)
↓
回帰( 正則化→スパースモデリング)
↓ElasticNet:
H Zou, etal(2005)
機械学習技法の変遷
※教師あり機械学習の技法を抜粋
(主観で代表的な技法を抜粋)
精度向上・高速化のため日進月歩
最小二乗法の発見
(Methode des miondres quarres)
ルジャンドル(1805)
天体のモデル化
←ここ
色々言葉が出てくるが、、、
• 機械学習
– コンピュータにヒトのような学習能力を持たせるための技術の総称[4]
– 人間が自然に行っている学習能力と同様の機能をコンピュータで実現し
ようとする技術・手法のこと[5]
• パターン認識
– 物事の類型を知るはたらき、およびその内容[2]
– 画像・音声などの雑多な情報を含むデータの中から、意味を持つ対象を
選別して取り出す処理[3]
• データサイエンス(データサイエンティスト)
– データに関する研究を行う学問。(略)データサイエンスの研究者や実践
者はデータサイエンティストと呼ばれる。[1]
参考資料
[1]データサイエンス:http://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E3%82%B5%E3%82%A4%E3%82%A8%E3%83%B3%E3%82%B9
[2]平井 有三, "はじめてのパターン認識", 森北出版, 2012年
[3]パターン認識:http://ja.wikipedia.org/wiki/%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%E8%AA%8D%E8%AD%98
[4]杉山 将, "イラストで学ぶ 機械学習 最小二乗法による識別モデル学習を中心に (KS情報科学専門書)", 講談社, 2013年
[5]機械学習:http://ja.wikipedia.org/wiki/%E6%A9%9F%E6%A2%B0%E5%AD%A6%E7%BF%92
色々言葉が出てくるが、、、
• 多変量解析
– 複数の項目について同時に調査が行われた資料の分析に有効な統計
解析の手法[1]
– 複数の結果変数からなる多変量データを統計的に扱う手法[2]
– 数学的に決められた一連の手続きにしたがって、多次元のデータを加工
して新しい情報を引出し判断や推測を行うための手法の総祢[3]
• データマイニング
– 大量のデータの中からビジネスに有用な知識となるパターンを発見する
プロセス[4]
– 統計学、パターン認識、人工知能等のデータ解析の技法を大量のデー
タに網羅的に適用することで知識を取り出す技術[5]
参考資料
[1]涌井 良幸, 涌井 貞美, "図解でわかる多変量解析―データの山から本質を見抜く科学的分析ツール", 日本実業出版社, 2003年第8刷
[2]多変量解析:http://ja.wikipedia.org/wiki/%E5%A4%9A%E5%A4%89%E9%87%8F%E8%A7%A3%E6%9E%90
[3]多変量解析法(2015 統計数理研究所 公開講座 配布資料)
[4]近藤 宏 , 末吉 正成, "Excelでできるかんたんデータマイニング入門", 同友館
[5]データマイニング: http://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E3%83%9E%E3%82%A4%E3%83%8B%E3%83%B3%E3%82%B0
機械学習のバックグラウンド
(学問と技法で分けてみる(主観有))
統計学(数学)
⇒データの特徴(平均etc)をつかむ
技法(多変量解析)
回帰分析
(重回帰、ロジスティック回帰など)
主成分分析、独立成分分析
因子分析、判別分析
数量化理論 (I類、II類、III類、IV類)
コンジョイント分析 など
技法(ベイズ推定・確率)
ナイーブベイズ推定
ガウス過程回帰
ベイジアンネット など
参考資料
機械学習のバックグラウンド
(学問と技法で分けてみる(主観有))
統計学(数学)
⇒データの特徴(平均etc)をつかむ
機械学習(パターン認識)
⇒データからの学習
(再現)、手法に重点
技法
クラスター分析(K-meansなど)、
決定木、サポートベクターマシン
ニューラルネットワーク、アンサンブル学習
(バギング、ブースティング)など
技法(多変量解析)
回帰分析
(重回帰、ロジスティック回帰など)
主成分分析、独立成分分析
因子分析、判別分析
数量化理論 (I類、II類、III類、IV類)
コンジョイント分析 など
技法(ベイズ推定・確率)
ナイーブベイズ推定
ガウス過程回帰
ベイジアンネット など
参考資料
機械学習のバックグラウンド
(学問と技法で分けてみる(主観有))
統計学(数学)
⇒データの特徴(平均etc)をつかむ
機械学習(パターン認識)
⇒データからの学習
(再現)、手法に重点
技法
クラスター分析(K-meansなど)、
決定木、サポートベクターマシン
ニューラルネットワーク、アンサンブル学習
(バギング、ブースティング)など
データマイニング
⇒新たな知識発見に重点
技法(多変量解析)
回帰分析
(重回帰、ロジスティック回帰など)
主成分分析、独立成分分析
因子分析、判別分析
数量化理論 (I類、II類、III類、IV類)
コンジョイント分析 など
技法(ベイズ推定・確率)
ナイーブベイズ推定
ガウス過程回帰
ベイジアンネット など
参考資料
機械学習のバックグラウンド
(学問と技法で分けてみる(主観有))
統計学(数学)
⇒データの特徴(平均etc)をつかむ
機械学習(パターン認識)
⇒データからの学習
(再現)、手法に重点
技法
クラスター分析(K-meansなど)、
決定木、サポートベクターマシン
ニューラルネットワーク、アンサンブル学習
(バギング、ブースティング)など
データマイニング
⇒新たな知識発見に重点
技法(多変量解析)
回帰分析
(重回帰、ロジスティック回帰など)
主成分分析、独立成分分析
因子分析、判別分析
数量化理論 (I類、II類、III類、IV類)
コンジョイント分析 など
技法(ベイズ推定・確率)
ナイーブベイズ推定
ガウス過程回帰
ベイジアンネット など
データサイエンス
⇒データを包括的に扱う
(視覚化という技法も含まれる)
参考資料
多変量解析法概要
• 目的によって技法を使い分ける
– 組み合わせて使う場合もある
• 例:主成分分析した結果を重回帰分析、判別分析へ
目的(何をしたいか?) 手法
予測(推測)
例:体重から身長を予測
重回帰分析、数量化Ⅰ類
判別
例:データから判断
判別分析法、数量化Ⅱ類
変換・縮約・結合
例:データをまとめる
主成分分析法、数量化Ⅲ、Ⅳ類
分類
例:データをカテゴリに分ける
クラスター分析
潜在因子の抽出
例:データ間の隠れたルールを見つける
因子分析、共分散構造分析
参考資料
機械学習は何ができるのか?
• 機械学習は3種類
– 教師あり学習
– 教師なし学習
– 強化学習
• それぞれの特徴
– 教師あり学習
• 出来ること:分類と回帰
• どうやって?:教師データ(正解が分かっている)から予測するモデル生成
– 教師なし学習
• 出来ること:特徴抽出(意味ある特徴に次元を縮約、グループ化)
• どうやって?:データのみから数理的な手法を用いて行う
– 強化学習
• 出来ること:行動(一連の流れ)の学習
• どうやって?:環境とのやり取りによる学習。行動に対し報酬で学習を行
う。
参考資料
機械学習のできること
• 入力した情報から、分類/回帰を行う。
入力 出力
入力に応じ
出力を
返す仕組み
例
分類(カテゴリ分け)
• 明日は晴れ/雨/曇り
• 画像の分類(犬、猫など)
回帰(数値)
• 店舗の売り上げ など
量的・質的データ
• 駅からの距離(数値)
• 競合店の有無(有/無)
• 天気(晴れ、曇り、雨)
バイナリデータ(表現を変えただけ)
• 画像データ、音データ
仕組みをどうやって作るか?⇒
参考資料
機械学習のできること
• 仕組みを作るには学習が必要(教師有り学習)
入力 出力
仕組み
(識別(規則)、学習機、
モデルとも呼ばれる)
・誤差から仕組みを調整
・仕組みの評価など
※学習:入力データから仕組みを作ること
⇒入力と出力の誤差を最小化する最適化問題
参考資料
http://gendai.ismedia.jp/articles/-/40925 より
参考資料
“消える・なくなる仕事”
“消える・なくなる仕事”のきっかけ
• とある論文がきっかけ
– Carl Benedikt Frey, Michael A. Osborne(2013)発表
『THE FUTURE OF EMPLOYMENT: HOW SUSCEPTIBLE ARE JOBS TO
COMPUTERISATION?』
• 意訳:「雇用の未来:情報化がどのように影響を与えるか?」
– 要約
• 機械学習とロボティクスの発達により10~20年後、米国の47%の雇
用が失われる(代替の可能性が高い)。
※日本の場合49%
(野村総研とOsborneとの共同研究(2015))
ちなみに、、、この論文も機械学習(ガウス過程回帰)を使って職業が代替される確率を求めている
参考資料
“消える・なくなる仕事”のきっかけ
• 情報化の対象が時代とともに変化
– 今までは“ルーチン”の仕事のみ情報化出来ていたが、、、
• どうやって?→データがあればOK
– we argue that it is largely already technologically possible to
automate almost any task, provided that sufficient amounts of
data are gathered for pattern recognition.
手作業 認知タスク
ルーチン
(定型)
非ルーチン
(非定型)
手作業 認知タスク
ルーチン
(定型)
非ルーチン
(非定型)
職人の技など
参考資料
職人の技など
“消える・なくなる仕事”のきっかけ
• 内閣府 「選択する未来」委員会 第5回 人の活躍ワーキング・グループ
資料3 産業社会・労働市場の未来の姿と求められる人材像 より
(平成26年7月23日)
参考資料
人工知能(AI)
AIに仕事が奪われる
参考資料
人工知能(AI)
AIに仕事が奪われる
疑問
どうやって?
そもそもAIって?
参考資料
回帰分析のおさらい
自己紹介
(参考資料)機械学習と回帰分析
(参考資料)回帰分析のおさらい
回帰分析の注意事項
回帰分析について
• どんな事が出来るのか?
– 欠測値の推測
– 変数の代替(求めにくい変数を求めやすい変数から推測)
– コントロール(入力した変数から出力した変数をコントロー
ル)
– 例:はかりの目盛の補正(工学的な応用)
– 異常値の発見
– 要因分析
• どの変数がどの程度影響を及ぼすか判断する事が出来る
回帰分析について
• 回帰分析とは?
– ある変数𝒚 (目的変数)を、他の変数𝒙 𝟏, … , 𝒙 𝒑(説明変数)
で予測する式を求め目的変数を予測、説明変数の寄与を
評価したりする分析のことをいう
– 説明変数が1つの場合は単回帰分析、2つ以上の場合は
重回帰分析という
𝒚 = 𝒇 𝒙 𝟏 + ⋯ + 𝒙 𝒑 + 𝜺
↑
目的変数
↑
予測する式
(回帰式、モデル)
※既知と未知
の場合がある
↑
説明変数
(添え字の
pは変数の数)
↑
誤差/定数項
(説明変数だけで
は説明できない定
数の変数)
回帰分析について
• 回帰式とモデル
– 一般的に回帰分析の予測式(回帰式)は、説明変数と回帰
係数を乗算し、線形結合(足し算)した式を扱う。
• 線形モデルと呼ばれる。扱うデータの分布、扱う対象によってモデ
ルは異なる(次ページ)。
– 今回の発表では線形モデルの回帰分析を対象とする
• 線形重回分析
𝒚 = 𝜷 𝟎 + 𝜷 𝟏 𝒙 𝟏
𝒚 = 𝜷 𝟎 + 𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑
単回帰分析
重回帰分析
𝛽0は定数項
𝛽𝑖 𝑖 = 1, ⋯ , 𝑛 は回帰係数
と呼ばれる
回帰分析について
• 回帰分析で用いるモデル
– 線形モデルの発展[1]
[1]生態学のデータ解析 - GLM 参照,
http://hosho.ees.hokudai.ac.jp/~kubo/ce/LinksGlm.html
一般化線形モデル
ロジスティック回帰etc
線形モデル
説明変数の足し算
参考資料
回帰分析:回帰式の作り方
• データから目的変数𝑦を予測する回帰式 𝑦を作る。
回帰係数を𝛽、説明変数を𝑥とする。
No 𝒙 𝟏 ⋯ 𝒙 𝒑 𝒚 𝒚
1 𝒙 𝟏𝟏 ⋯ 𝒙 𝒑𝟏 𝒚 𝟏 𝒚 𝟏
⋮ ⋮ ⋱ ⋮ ⋮ ⋮
n 𝒙 𝟏𝒏 ⋯ 𝒙 𝒑𝒏 𝒚 𝒏 𝒚 𝒏
説明変数
(行列)
目的変数
(ベクトル)
回帰式から得
られる予測値
𝒚 𝟏 = 𝜷 𝟎 + 𝜷 𝟏 𝒙 𝟏𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑𝟏
⋮
𝒚 𝒏 = 𝜷 𝟎 + 𝜷 𝟏 𝒙 𝟏𝒏 + ⋯ + 𝜷 𝒑 𝒙 𝒑𝒏
※回帰式
𝑸 = 𝒚 − 𝒚 𝟐 =
𝒊
𝒚𝒊 − 𝜷 𝟎 +
𝒋
𝜷𝒋 𝒙𝒊
𝟐
𝒚 = 𝜷 𝟎 + 𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑
• 目的変数𝑦と回帰式から予測される 𝑦の差の平方和(残差平方和) を求める。
𝝏𝑸
𝝏𝜷 𝟎
= 𝟎 ・・・
𝝏𝑸
𝝏𝜷𝒋
= 𝟎
• 残差平方和𝑸が最少となるような回帰係数を𝜷を求める。
• 整理すると
𝒘𝒊≠𝟎 = 𝑺−𝟏
𝒄
𝒘 𝟎 = 𝒚 − (𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑)
𝜷𝒊≠𝟎 = (𝒙 𝑻 𝒙)−𝟏 𝒙 𝑻 𝒚 ※説明変数間の分散を求めた共分散行列を用いても解ける
⇒回帰係数で偏微分した連立方程式を解く
𝑆:共分散行列
𝑐:𝑥と𝑦の共分散ベクトル
• データから目的変数𝒚を予測する回帰式 𝒚を作る。
回帰係数を𝜷、説明変数を𝒙とする。
定数項𝜷 𝟎は代入して後から求める
回帰分析:回帰式の作り方
回帰分析:回帰式の作り方
• 回帰式の作り方の補足説明
– 1点のデータと回帰式に注目する。
– 回帰式のパラメータ𝒂, 𝒃を変化させて、データと回帰式の残
差(誤差)を最小化するとよさそうだ。
15
16
17
18
19
20
2 2.5 3 3.5 4
y
x
𝒂を変更して、データを通るように変更
𝒃を変更して、データを通るように変更
参考資料
15
16
17
18
19
20
2 2.5 3 3.5 4
y
x
回帰分析:回帰式の作り方
• 回帰式の作り方の補足説明
– 1点のデータと回帰式に注目する。
– 回帰式のパラメータ𝑎, 𝑏を変化させて、データと回帰式の残
差(誤差)を最小化するとよさそうだ。
適当にa,bとした回帰式
𝑦 = 𝑎𝑥 + 𝑏
𝑥 = 3の時
𝑦 3 = 𝑎𝑥3 + 𝑏・・・予測値
𝑦3・・・目的変数(誤差を含む真の値)
残差 = 𝑦 3 − 𝑦3
+、-の影響をなくすため二乗する
残差平方和 = 𝑦 3 − 𝑦3
2
⇒ 小さくするようにa,bを求める
𝑦3→
← 𝑦 3
参考資料
回帰分析:回帰式の作り方
• 残差平方和を最小化する=最小二乗法
– 各データ毎に目的変数と回帰式の予測値の残差平方
(𝑦 − 𝑦)2の和を求める。この和(残差平方和)を最小化す
る。
– 俗にいう「最小二乗法」
• 誤差に注目したのがルジャンドル(最小二乗法の発案者)
– 単回帰・重回帰分析でも同じ手法を用いて回帰係数を求め
ることが可能。解けるかどうかは条件がある
• 回帰式が線形か非線形か。1次式の重回帰式は足し算(線形結合)
なので解ける。
参考資料
回帰分析
• これで回帰分析ができる!
実際はそんなに甘くはない、、、
回帰分析
• 回帰式が出来たがこれで良いのだろうか?
– 例)
3つのテスト結果から成績を推測する(こんなことはしないが)
– 出来た回帰式
国語テスト結果 国語小テスト 数学テスト結果 成績
23 54 56 2
57 60 100 4
16 10 27 1
・・・ ・・・ ・・・ ・・・
𝒇 𝒙 = 𝟎. 𝟐𝟒 + 𝟎. 𝟎𝟐𝟒 ∗ 国語 − 𝟎. 𝟎𝟎𝟏 ∗ 国語小 + 𝟎. 𝟎𝟐𝟑 ∗ 数学
国語小テスト結果が高いと成績が下がる?
回帰式は作り方、考慮するポイント(コツ)がある。
回帰分析の注意事項
自己紹介
(参考資料)機械学習と回帰分析
(参考資料)回帰分析のおさらい
回帰分析の注意事項
回帰分析の実際
• 回帰式を作る流れ
– 準備:データクレンジング(データの前処理)
• 外れ値/欠損値の対応、多重共線性の回避、正規化、質的/量的変
数の変換など
– 1.変数選択※1
• 全組み合わせ※2、変数増加・減少法、変数増減法
– 2.回帰式の作成
– 3.回帰式の評価
• 誤差による評価(残差、R^2 決定係数)
• 情報量基準(AIC、BICなど)による評価
• 交差検証(Cross-Validation)による予測誤差の評価
– 学習データのみ説明できる回帰式を回避(過学習の回避)
1~3を
ひたすら
繰り返す
※1・・・変数選択に万能の方法は無いといわれている(Murtaugh(2009))。
※2・・・全組み合わせは2説明変数-1パターンある。説明変数が10個あれば1023パターンある。
※発表者が文献等を調べて、
こう行うのではとまとめたも
の。有識者の意見を求む
回帰分析の実際
• 先の流れは、機械学習の各種技法を使うときでも、
多少違えど同じことを必ず行っている
– データに過剰に合わないようにする戦いがある
• 何か結果が出るモデルができるがそれが正しいか、
使えるものかはヒトが判断
– 直感に反するモデルができる場合がある。それが意味を持
つかもしれないし、そうでもないかもしれない。
回帰分析の実際
• 回帰分析を行う前に確認すること
– データに外れ値、欠損値がないか
• 何かの基準を用いて除外、補完、そのデータを使わないなど
• 外れ値が意味を持つかも、、、
– データに相関がないか
• 相関がr=1の関係を持つデータがあると解けない!
• 相関が高いデータがあると数値計算を行う上で不安定になる
– データ数より説明変数が多い場合(n<p問題)
• そもそも解けない!
• 遺伝子データ(SNP)の解析などはこの問題が多々
数万の説明変数に対し、正解データは1/10以下
𝑸 = 𝒚 − 𝒚 𝟐 =
𝒊
𝒚𝒊 − 𝜷 𝟎 +
𝒋
𝜷𝒋 𝒙𝒊
𝟐
𝒚 = 𝜷 𝟎 + 𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑
• 目的変数𝑦と回帰式から予測される 𝑦の差の平方和(残差平方和) を求める。
𝝏𝑸
𝝏𝜷 𝟎
= 𝟎 ・・・
𝝏𝑸
𝝏𝜷𝒋
= 𝟎
• 残差平方和𝑸が最少となるような回帰係数を𝜷を求める。
• 整理すると
𝒘𝒊≠𝟎 = 𝑺−𝟏
𝒄
𝒘 𝟎 = 𝒚 − (𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑)
𝜷𝒊≠𝟎 = (𝒙 𝑻 𝒙)−𝟏 𝒙 𝑻 𝒚 ※説明変数間の分散を求めた共分散行列を用いても解ける
⇒回帰係数で偏微分した連立方程式を解く
𝑆:共分散行列
𝑐:𝑥と𝑦の共分散ベクトル
• データから目的変数𝒚を予測する回帰式 𝒚を作る。
回帰係数を𝜷、説明変数を𝒙とする。
定数項𝜷 𝟎は代入して後から求める
回帰分析:回帰式の作り方
①微分可能である事
②逆行列・行列の積が
計算できる事
★線形モデルの
回帰式を求めるために必要な事
多重共線性の回避
• 多重共線性(Multi Colinearity)とは?
– 相関が高い説明変数を含んだまま回帰式を求めると、回帰係数
が不安定(極端に大きくなる等 数値計算特有の問題)になる。
– 相関係数が1が存在する場合、回帰係数を求められない。
• 回避方法
– 相関行列・散布図行列を求め相関が高い説明変数を除外
(相関係数が1の説明変数除外は必須!)
– 相関が高い説明変数を合成または加算する。
主成分分析で説明変数を縮約するなど
– L2ノルム正則化を用いたRidge回帰
𝒘𝒊≠𝟎 = 𝑺−𝟏
𝒄
𝒘 𝟎 = 𝒚 − (𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑)
𝜷𝒊≠𝟎 = (𝒙 𝑻
𝒙)−𝟏
𝒙 𝑻
𝒚 逆行列が原因
• デモ
– 3つのテストから成績を予測する回帰式
– 回帰式(r>0.9の変数削除有無)、Ridge回帰で比較
• 結果
国語テスト結果 国語小テスト 数学テスト結果 成績
23 54 56 2
・・・ ・・・ ・・・ ・・・
条件 R^2 定数
国語テスト
結果係数
国語
小テスト係数
数学テスト
結果係数
回帰式
(相関排除無)
0.9176 0.2437 0.0245 -0.0016 0.0234
回帰式
(相関排除有)
0.9172 0.2272 0.0229 ―(無し) 0.0234
Ridge回帰
(α=204.8)
0.9104 0.0037 0.0232 0.0021 0.0244
多重共線性の回避
-0.05
0
0.05
0.1
0.15
0.2
0.25
0.1 1 10 100 1000 10000
定数
国語テスト結果
国語小テスト
数学テスト結果
0.88
0.89
0.9
0.91
0.92
0.1 1 10 100 1000 10000
R^2
回帰係数R^2(決定係数)
Ridge回帰パラメータα
Ridge回帰のパラメータ
と係数変化
• αを大きくすると決定係
数(R^2)は小さくなる
• 誤差が大きい
• 決定係数が大きく変わら
ないα=200
• 相関がともに高い変数で
も係数が負にならない。
説明変数が多い場合
• データ数<説明変数の場合
– 暗に“データ数>説明変数”を仮定していた。
“データ数<説明変数”の場合、回帰式を求める事が出来な
い。
• 回避方法
– 説明変数を減らす
– 値を補完する
– LASSO回帰(スパースな回帰)
𝒘𝒊≠𝟎 = 𝑺−𝟏
𝒄
𝒘 𝟎 = 𝒚 − (𝜷 𝟏 𝒙 𝟏 + ⋯ + 𝜷 𝒑 𝒙 𝒑)
𝜷𝒊≠𝟎 = (𝒙 𝑻
𝒙)−𝟏
𝒙 𝑻
𝒚
行列の積が計算不可
• LASSOによる縮小選択のデモ
– 10個のテストから成績を予測する回帰式
– Stepwiseによる変数選択、LASSO回帰で比較
• 結果
国語小 国語 英語小 英語 社小 社 数小 数 理小 理 成績
51 67 90 90 51 55 62 65 75 75 4
・・・ ・・・ ・・・ ・・・ ・・・ ・・・ ・・・ ・・・ ・・・ ・・・ ・・・
条件 R^2 定数 国語小 国語 英語小 英語
回帰(全変数) 0.914 -0.976 0.016 -0.004 -0.013 0.030
回帰(Stepwise) 0.910 -0.989 0.012 -0.012 0.029
Lasso回帰(204.8) 0.854 0.000 0.000 0.007 0.000 0.013
条件 社小 社 数小 数 理小 理
回帰(全変数) 0.002 0.014 0.000 0.016 0.003 0.008
回帰(Stepwise) 0.016 0.015 0.011
Lasso回帰(204.8) 0.000 0.011 0.000 0.013 0.000 0.010
LASSO回帰
0
0.5
1
0.1 1 10 100 1000
R^2
-0.02
-0.01
0
0.01
0.02
0.03
0.1 1 10 100 1000
定数 国語小
国語 英語小
英語 社小
社 数小
数 理小
LASSO回帰のパラメータ
と係数変化
• αを大きくすると係数
が0(疎)になる。
• パラメータα=204.8
• Lasso回帰は各科目
の小テスト結果の係
数を全て0にした。
回帰係数R^2(決定係数)
Lasso回帰パラメータα
参考文献
1. Thomas P. Ryan, “Modern Regression Methods 2nd Edition”, Wiley, New York, 2009
2. 多変量解析法(2015 統計数理研究所 公開講座 配布資料)
3. 田中豊, 垂水共之, “Windows版 統計解析ハンドブック 多変量解析”, 共立出版株式会社, 1995
4. 安藤洋美, "最小二乗法の歴史", 株式会社現代数学社, 1995, 初版1刷
5. 涌井 良幸, 涌井 貞美, “図解でわかる多変量解析―データの山から本質を見抜く科学的分析ツー
ル”, 日本実業出版社, 2003年第8刷
6. 近藤 宏 , 末吉 正成, "Excelでできるかんたんデータマイニング入門", 同友館
7. 平井 有三, "はじめてのパターン認識", 森北出版, 2012年
8. 杉山 将, "イラストで学ぶ 機械学習 最小二乗法による識別モデル学習を中心に (KS情報科学専門
書)", 講談社, 2013年
9. Hoerl, A.E.; R.W. Kennard (1970). "Ridge regression: Biased estimation for nonorthogonal problems".
Technometrics 12 (1): 55-67.
10. Tibshirani, R. (1996). "Regression shrinkage and selection via the lasso". Journal of the Royal Statistical
Society, Series B 58 (1): 267-288.
11. Zou, Hui; Hastie, Trevor (2005). "Regularization and Variable Selection via the Elastic Net". Journal of
the Royal Statistical Society, Series B: 301-320.
12. Murtaugh PA. 2009. ”Performance of several variable-selection methods applied to real ecological
data”. Ecol Lett 12:1061-1068.
13. 涌井 良幸, 涌井 貞美, "図解でわかる多変量解析―データの山から本質を見抜く科学的分析ツール",
日本実業出版社, 2003年第8刷
14. 近藤 宏 , 末吉 正成, "Excelでできるかんたんデータマイニング入門", 同友館
15. Trevor Hastie,Robert Tibshirani,Jerome Friedman 監訳:杉山 将,井手 剛,神嶌 敏弘,栗田 多喜
夫,前田 英作“統計的学習の基礎 ―データマイニング・推論・予測―”, 共立出版, 2014
回帰式の評価
• 良い回帰式とは?
– ①既存データとの誤差が小さく、
②未来のデータもよく予測する
• 既存データとの誤差が小さい
– 説明変数は増えるほど誤差(残差平方和)は減少する。
• 誤差と説明変数のバランスをとった指標:赤池情報量基準(AIC)など
– しかし、汎化性能(新たなデータに対する予測力)は低い
• 未来のデータに対し予測力を見積もるには?
– 交差検証(Cross-Validation)により般化性能を見積もる
y = 2.1707x + 9.473
R² = 0.9924
y = 0.0348x3 - 0.4585x2 + 3.5446x + 9.2879
R² = 1
8
13
18
23
28
33
0 2 4 6 8 10
y
x
回帰式の評価
• どちらが良い回帰式か?
– 1次式と3次多項式の回帰式を作成
赤の回帰式は全ての点
を通っているが、、、
x=10の場合は?
赤の回帰式は過剰適合(Over fitting)または、過学習
⇒データに依存しすぎた回帰式になっている。
既存データの誤差は少ないが、新たなデータへの誤差は大きい
回帰式の評価
• 交差検証(Cross-Validation)
– k-分割交差検証
• n個のデータをk分割する。k-1個のデータで回帰式を作成し、残りの
データで誤差を調べる。
⇒k回行い、誤差の平均から汎化能力(予測能力)を測る。
・・・
青データで回帰式を作成
赤データで回帰式の誤差
k回分の誤差の平均を求める
⇒平均予測二乗誤差(MSPE)
MSPEが小さいものが般化性能
は高いと推測
回帰分析の種類
• 一言に「回帰分析」といっても、、、
– 説明変数が1つ:単回帰分析 𝒇 𝒙 = 𝒂𝒙 + 𝒃
– 説明変数が2つ以上 𝒇 𝒙 = 𝒂 𝟎 + 𝒃 𝟏 𝒙 𝟏 ⋯ + 𝒃 𝒏 𝒙 𝒏
• 数量化理論I類(説明変数が数値ではない場合 例:月日など)
– ロジスティック回帰
• 値ではなく、確率(0~1の範囲で値を返す)。
– 正則化(罰則)を加えた回帰分析
• RIDGE 回帰(L2)・・・回帰係数の二乗和を追加(Hoerl 1970)
• LASSO (least absolute shrinkage and selection operator)回帰(L1)
・・・回帰係数の絶対値の和を追加(Tibshirani 1996)
• ELASTIC NET(L1+L2)・・・上記ハイブリッド(Zou 2005)
ELASTIC NET
𝒇 𝒙 = 𝒂 𝟎 +
𝒊=𝟎
𝒏
𝒃𝒊 𝒙𝒊 + 𝜸 𝟏
𝒊=𝟎
𝒏
𝒃𝒊
𝟐
+ 𝜸 𝟐
𝒊=𝟎
𝒏
𝒃𝒊
Ridge回帰:𝒇 𝒙 = 𝒂 𝟎 +
𝒊=𝟎
𝒏
𝒃𝒊 𝒙𝒊 + 𝜸
𝒊=𝟎
𝒏
𝒃𝒊
𝟐
LASSO回帰:𝒇 𝒙 = 𝒂 𝟎 +
𝒊=𝟎
𝒏
𝒃𝒊 𝒙𝒊 + 𝜸
𝒊=𝟎
𝒏
𝒃𝒊

More Related Content

What's hot

機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
Teppei Baba
 

What's hot (20)

人工知能2018 強化学習の応用
人工知能2018 強化学習の応用人工知能2018 強化学習の応用
人工知能2018 強化学習の応用
 
人工知能2018 5 機械学習の基礎
人工知能2018 5 機械学習の基礎人工知能2018 5 機械学習の基礎
人工知能2018 5 機械学習の基礎
 
続・わかりやすいパターン認識第5章
続・わかりやすいパターン認識第5章続・わかりやすいパターン認識第5章
続・わかりやすいパターン認識第5章
 
機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト機会学習ハッカソン:ランダムフォレスト
機会学習ハッカソン:ランダムフォレスト
 
データ解析13 線形判別分析
データ解析13 線形判別分析データ解析13 線形判別分析
データ解析13 線形判別分析
 
アンサンブル学習
アンサンブル学習アンサンブル学習
アンサンブル学習
 
Yamadai.Rデモンストレーションセッション
Yamadai.RデモンストレーションセッションYamadai.Rデモンストレーションセッション
Yamadai.Rデモンストレーションセッション
 
データ解析6 重回帰分析
データ解析6 重回帰分析データ解析6 重回帰分析
データ解析6 重回帰分析
 
AI2018 8 ニューラルネットワークの基礎
AI2018 8 ニューラルネットワークの基礎AI2018 8 ニューラルネットワークの基礎
AI2018 8 ニューラルネットワークの基礎
 
forestFloorパッケージを使ったrandomForestの感度分析
forestFloorパッケージを使ったrandomForestの感度分析forestFloorパッケージを使ったrandomForestの感度分析
forestFloorパッケージを使ったrandomForestの感度分析
 
Objectnessとその周辺技術
Objectnessとその周辺技術Objectnessとその周辺技術
Objectnessとその周辺技術
 
続・わかりやすいパターン認識 9章
続・わかりやすいパターン認識 9章続・わかりやすいパターン認識 9章
続・わかりやすいパターン認識 9章
 
EMアルゴリズム
EMアルゴリズムEMアルゴリズム
EMアルゴリズム
 
ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定ようやく分かった!最尤推定とベイズ推定
ようやく分かった!最尤推定とベイズ推定
 
ランダムフォレストとそのコンピュータビジョンへの応用
ランダムフォレストとそのコンピュータビジョンへの応用ランダムフォレストとそのコンピュータビジョンへの応用
ランダムフォレストとそのコンピュータビジョンへの応用
 
Fisher Vectorによる画像認識
Fisher Vectorによる画像認識Fisher Vectorによる画像認識
Fisher Vectorによる画像認識
 
データ解析3 最適化の復習
データ解析3 最適化の復習データ解析3 最適化の復習
データ解析3 最適化の復習
 
10分でわかるRandom forest
10分でわかるRandom forest10分でわかるRandom forest
10分でわかるRandom forest
 
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
[The Elements of Statistical Learning]Chapter8: Model Inferennce and Averaging
 
人工知能2018 6 強化学習の基礎
人工知能2018 6 強化学習の基礎人工知能2018 6 強化学習の基礎
人工知能2018 6 強化学習の基礎
 

Similar to 第7回 KAIM 金沢人工知能勉強会 回帰分析と使う上での注意事項

機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
Yuya Unno
 
Machine learning for biginner
Machine learning for biginnerMachine learning for biginner
Machine learning for biginner
Atsushi Hayakawa
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38
horihorio
 
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tatsuya Tojima
 
LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門
Yuichiro Kobayashi
 

Similar to 第7回 KAIM 金沢人工知能勉強会 回帰分析と使う上での注意事項 (20)

論文紹介&実験
論文紹介&実験論文紹介&実験
論文紹介&実験
 
[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
[DL輪読会]Meta-Learning Probabilistic Inference for Prediction[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
[DL輪読会]Meta-Learning Probabilistic Inference for Prediction
 
関数データ解析の概要とその方法
関数データ解析の概要とその方法関数データ解析の概要とその方法
関数データ解析の概要とその方法
 
時系列解析の使い方 - TokyoWebMining #17
時系列解析の使い方 - TokyoWebMining #17時系列解析の使い方 - TokyoWebMining #17
時系列解析の使い方 - TokyoWebMining #17
 
強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習強化学習と逆強化学習を組み合わせた模倣学習
強化学習と逆強化学習を組み合わせた模倣学習
 
機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks機械学習チュートリアル@Jubatus Casual Talks
機械学習チュートリアル@Jubatus Casual Talks
 
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
【招待講演】パラメータ制約付き行列分解のベイズ汎化誤差解析【StatsML若手シンポ2020】
 
大規模地震シミュレーション1
大規模地震シミュレーション1大規模地震シミュレーション1
大規模地震シミュレーション1
 
Machine learning for biginner
Machine learning for biginnerMachine learning for biginner
Machine learning for biginner
 
ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習
 
20170618論文読み会 伊藤
20170618論文読み会 伊藤20170618論文読み会 伊藤
20170618論文読み会 伊藤
 
NIPS KANSAI Reading Group #7: 逆強化学習の行動解析への応用
NIPS KANSAI Reading Group #7: 逆強化学習の行動解析への応用NIPS KANSAI Reading Group #7: 逆強化学習の行動解析への応用
NIPS KANSAI Reading Group #7: 逆強化学習の行動解析への応用
 
外国語教育研究におけるRを用いた統計処理入門
外国語教育研究におけるRを用いた統計処理入門外国語教育研究におけるRを用いた統計処理入門
外国語教育研究におけるRを用いた統計処理入門
 
第3回nips読み会・関西『variational inference foundations and modern methods』
第3回nips読み会・関西『variational inference  foundations and modern methods』第3回nips読み会・関西『variational inference  foundations and modern methods』
第3回nips読み会・関西『variational inference foundations and modern methods』
 
状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38状態空間モデルの考え方・使い方 - TokyoR #38
状態空間モデルの考え方・使い方 - TokyoR #38
 
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
Tokyo.R 41 サポートベクターマシンで眼鏡っ娘分類システム構築
 
LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門LET2011: Rによる教育データ分析入門
LET2011: Rによる教育データ分析入門
 
Model seminar shibata_100710
Model seminar shibata_100710Model seminar shibata_100710
Model seminar shibata_100710
 
東大大学院 電子情報学特論講義資料「深層学習概論と理論解析の課題」大野健太
東大大学院 電子情報学特論講義資料「深層学習概論と理論解析の課題」大野健太東大大学院 電子情報学特論講義資料「深層学習概論と理論解析の課題」大野健太
東大大学院 電子情報学特論講義資料「深層学習概論と理論解析の課題」大野健太
 
Fast abstractive summarization with reinforce selected sentence rewriting
Fast abstractive summarization with reinforce selected sentence rewritingFast abstractive summarization with reinforce selected sentence rewriting
Fast abstractive summarization with reinforce selected sentence rewriting
 

More from tomitomi3 tomitomi3

More from tomitomi3 tomitomi3 (11)

ChatGPTでモノづくりを支援してもらった話(移行済)
ChatGPTでモノづくりを支援してもらった話(移行済)ChatGPTでモノづくりを支援してもらった話(移行済)
ChatGPTでモノづくりを支援してもらった話(移行済)
 
Lチカで終わらせないArduino シリアル通信 Part2(移行済)
Lチカで終わらせないArduino シリアル通信 Part2(移行済)Lチカで終わらせないArduino シリアル通信 Part2(移行済)
Lチカで終わらせないArduino シリアル通信 Part2(移行済)
 
Lチカで終わらせないArduino シリアル通信 Part1(移行済)
Lチカで終わらせないArduino シリアル通信 Part1(移行済)Lチカで終わらせないArduino シリアル通信 Part1(移行済)
Lチカで終わらせないArduino シリアル通信 Part1(移行済)
 
ちょっと使えるようになる信頼度成長曲線(移行済)
ちょっと使えるようになる信頼度成長曲線(移行済)ちょっと使えるようになる信頼度成長曲線(移行済)
ちょっと使えるようになる信頼度成長曲線(移行済)
 
開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython
開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython
開発環境構築からはじめるPython VisualStudio Codeとpipenvで始めるpython
 
M5StickC M5StickVを使った簡易監視装置を作ってみる
M5StickC M5StickVを使った簡易監視装置を作ってみるM5StickC M5StickVを使った簡易監視装置を作ってみる
M5StickC M5StickVを使った簡易監視装置を作ってみる
 
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
第14回 KAIM M5StickV(K210)をDNNアクセラレータとして使おうとした試み
 
第11回 KAIM 金沢人工知能勉強会 改めて機械学習を広く浅く知る
第11回 KAIM 金沢人工知能勉強会 改めて機械学習を広く浅く知る第11回 KAIM 金沢人工知能勉強会 改めて機械学習を広く浅く知る
第11回 KAIM 金沢人工知能勉強会 改めて機械学習を広く浅く知る
 
第9回 KAIM 金沢人工知能勉強会 進化的計算と最適化 / Evolutionary computation and optimization(移行済)
第9回 KAIM 金沢人工知能勉強会 進化的計算と最適化 / Evolutionary computation and optimization(移行済)第9回 KAIM 金沢人工知能勉強会 進化的計算と最適化 / Evolutionary computation and optimization(移行済)
第9回 KAIM 金沢人工知能勉強会 進化的計算と最適化 / Evolutionary computation and optimization(移行済)
 
第6回 KAIM 金沢人工知能勉強会 人工知能を知るために脳を知る
第6回 KAIM 金沢人工知能勉強会 人工知能を知るために脳を知る第6回 KAIM 金沢人工知能勉強会 人工知能を知るために脳を知る
第6回 KAIM 金沢人工知能勉強会 人工知能を知るために脳を知る
 
A history of neuro brain imaging
A history of neuro brain imagingA history of neuro brain imaging
A history of neuro brain imaging
 

第7回 KAIM 金沢人工知能勉強会 回帰分析と使う上での注意事項