重回帰分析
(今日のポイント)
因果関係を求める
(重回帰分析)
multiple regression analysis
◎回帰分析は条件の付かない最大最小問題
◎最小二乗法で因果関係を線形関係で表現
○潜在能力/重要度ランキング/決定係数
回帰分析(Regression Analysis)
平均偏差データより重回帰直線
二個の説明変数の場合:
X i1  xi1  x1 ;
 S11 S12   b1   S1 y 
S
    
X i 2  xi 2  x2 ;
 21 S 22  b2   S 2 y 
Yi  yi  y (i  1,2,...n) Sb  w
y  b0  b1 x1  b2 x2がY  b1 X 1  b2 X 2になって、
b1とb2が求めれたあと、
(Y  y )  b1 ( X 1  x1 )  b2 ( X 2  x 2 )よりb0を求める
具体例(潜在能力・評価)
実際に測定された値(売上額):
理論値(予測値)
実績値≒理論値 とすることが目標
x x
X i1  i1 1 ;
s11
X i2 
Yi 
xi 2  x2
;
s22
yi  y
s yy
(i  1,2,...n)
生データで求めたもの
 S11 S12   b1   S1 y 
    
S
 21 S 22  b2   S 2 y 
 Sb  w
分散共分散行列
標準変量で求めたもの
 r11 r12  b1*   r1 y 
r
 *    
 21 r22  b2  r2 y 
Rb  w 相関行列
分析精度を表す ー 決定係数
A~F営業所における売上額、広告費、セールスマン数を示したもの
予測、「潜在能力」以外、「評価」もできる
実績値(観測値)
式に変数を代入して得られる値:
標準変量より重回帰直線
二個の説明変数の場合:
売上額(y)
千万円
広告費(x1)
百万円
セールスマン(x2)
人
A
8
5
6
B
9
5
8
C
12
7
10
D
11
5
12
E
13
8
12
F
17
12
12
G
?
17
14
売上額 理論値 ●実際に測定された値(売上額):実績値
(観測値:A…F)を用いて
A
8
8.1
B
9
9 yi  1.02  0.86 x1  0.46 x2   i
C
12
11.7 ●重回帰分析より得られた式:
D
11
10.9
ˆ  1.02  0.86 x1  0.46 x2
E
13
13.4 y
F
17
16.9 式に変数を代入して得られた値(理論値)
比較結果: 実績値(売上額)≒理論値
→ 回帰係数が精度よく推定できた
→ 平面がデータによく当てはめた
1
単(or 重)相関係数 Rの計算例
分析精度を表す ー 寄与率(決定係数)
説明変数の選択が良い・・・実績値と理論値が近づく
(「分析の精度」が良いと言う)
説明変数の選択が悪い・・・実績値と理論値は近づかない
●重相関係数による方法(教科書p.13)
実績値と理論値がどれほど一致しているかを見るのは、
実績値と理論値との相関係数を求めることと同じ
単(or 重)相関係数 R :
平均:
y i :実績値
yˆ i :理論値・予測値
  yi  y  yˆ i  y 
2
2
(回帰直線上の点)
ˆ






y
y
y
y
 i
 i
R
実績値 理論値
A
8
8.1
B
9
9
C
12
11.7
D
11
10.9
E
13
13.4
F
17
16.9
Rは1に近いほど、比較的に重回帰式がよく当てはまっている
R
y i :実績値
  y  y  yˆ  y 
ˆ
  y  y    yˆ  y  yi :理論値・予測値
i
i
2
i
2
i
決定係数=寄与率=R
2
2
決定係数(寄与率)の回答
実績値 理論値
8
8.1
9
9
12
11.7
11
10.9
13
13.4
17
16.9
平均:
11.7
11.7
y i :実績値
yˆ i :理論値・予測値(回帰直線上の点)
 y
 y
 y
i
 y   51.34 i
 y   50.98
i
 y  yˆ i  y   50.98
2
2
  y  y  yˆ  y 
  y  y    yˆ  y 
i
i
2
2
 0.9965
i
決定係数(寄与率)の練習問題
A
B
C
D
E
F
実績値 理論値 y :実績値
i
8
8.1
ˆ
:理論値・予測値(回帰直線上の点)
y
i
9
9
12
11.7
決定係数・寄与率を求めてください
11
10.9
13
13.4 2
 ( yi  yˆi ) 2
R  1
17
16.9
s yy
平均:
11.7
11.7
i
 yˆ i   0.35
i
 yˆ i   0
タイトル「出席レポート」、日付、学籍番号、氏名を用紙
の一番上に書く
重回帰モデルの仕組み
(単回帰=(1+1)D平面,重回帰=(N+1)D空間)
2
2
決定係数=寄与率=R 2  1 
R2  1
 y   51.34 2
s
  i  1   ( yi  yˆi )
 1 E  1
s yy
s yy
s yy
A
B
C
D
E
F
i
Rは1に近いので、重回帰式がよく当てはまっている
●重相関係数による方法(教科書p.13)
R
 y
  yˆ
 y
11.7
i
分析精度を表す ー 寄与率(決定係数)
実績値と理論値がどれほど一致しているかを見るのは、
実績値と理論値との相関係数Rを求めることと同じ
11.7
y i :実績値
yˆ i :理論値・予測値(回帰直線上の点)
(y
i
 yˆ i ) 2
s yy
0.35 / 6
 0.9931  0.99652
51.34 / 6
2
重回帰分析(説明変数p個)
目的変数yを複数(p個)の説明変数xiの線形重回帰モデル
として表す: yi   0  1 x1i   2 x2 i ・・・  p x pi   i
Yi  yˆ i  b0  b1 x1i  b2 x2i ・・・ b p x pi
残差平方和Qを最小にするようなβiを最小2乗法で求める
S 
n
 {y
i 1
i
 ( b0  b1 x1i  b 2 x 2 i ・・・  b p x pi )} 2
重回帰分析(説明変数p個)
重回帰分析の正規方程式は次のようになる.
 b1x1i b2 x2i  ・・・ bp xpi  yi
b0 1 bp x1i xpi  yi x1i
b0 x1i b1x1i b2 x1i x2i  ・・・ 2
: :
bp xpi  yi xpi
b0 xpi b1x1i xpi b2 x2i xpi  ・・・ 2
n
 S /  b0  2  { y i  ( b0  b1 x1i  b 2 x 2 i ・・・  b p x pi )}(  1)  0
i 1
n
 S /  b1  2  { y i  ( b0  b1 x1i  b 2 x 2 i ・・・  b p x pi )}(  x1i )  0
行列とベクトルで表現
・・・・・
X'Xb X'y i 1
n
 S /  b p  2  { y i  ( b0  b1 x1i  b 2 x 2 i ・・・  b p x pi )}(  x pi )  0
X'X  0の場合、 b  (X'X)1X'y
i 1
行列を用いた方法(説明変数p個)
目的変数yを複数(p個)の説明変数xiの
線形重回帰モデルとして表す:
yi   0  1 x1i   2 x2i ・・・  p x pi   i
ベクトルと行列を用いた方法:y  Xβ  ε
1 x11
 y1 
1 x
y 
12
y   2 , X  
 


 
 yn 
1 x1n
x21  x p1 
 0 
1 



 
x22  x p 2 
1
, β   , ε   2 
  


 


 
 
x2 n  x pn 
 n 
  p 
標準変量データより重回帰直線
p個の説明変数の場合:
まず、生データから標準変量へ
X i1 
Yi 
xip  x p
xi1  x1
x x
; X i 2  i 2 2 ;; X ip 
s11
s22
s pp
yi  y
(i  1,2,...n)
s yy
次、標準変量データを用いて分散共分散行列
(=相関行列)を求める
行列を用いた方法(説明変数p個)
yの予測値Yを表す線形の式
Yi  b0  b1 x1i  b2 x2i ・・・ b p x pi
 Y  Xb
1 x11
Y1 
1 x
Y 
12
2

Y
,X  
 


 
Yn 
1 x1n
x21  x p1 
 b0 

b 
x22  x p 2 
1
,b   



 

 
x2 n  x pn 
b p 
標準変量データより重回帰直線
p個の説明変数の場合:
 S11 S12 ... S1 p   b1   S1 y 
S
   
 21 S 22 ... S 2 p   b2    S 2 y 
 :
:
:
:  :   : 

   
S
S
S
...
 b p   S py 
p2
pp 
 p1
行列とベクトルで表現すると Rb  w
Rは説明変数データの分散共分散行列(or相関行列)
bは(偏)回帰係数のベクトル
wは説明変数と目的変数の共分散ベクトル
(R 1R  1より)
回帰係数のベクトルbを求める: b  R 1 w 3
変数選択の方法
分析の精度はどのような説明変数を用いるかによって決まる
良い説明変数の選択が分析の精度向上に必要
説明変数の選択
・目的変数と相関の高い変数を説明変数にする
説明変数の数とサンプルの数
●説明変数の数は10未満に
説明変数の数が多い・・・決定係数が高くなる
・・・マルチコの問題にぶつかる
数が2桁になるとマルチコが起こる確率が高くなる
そのため、10個未満で決定係数を最大にするように
変数選択する
・重相関係数を用い、相関が0.7以上のものを説明変数にするのが一般的
説明変数の絞込み
①説明変数相互で高い相関のあるものを探し、そのどちらかを
落とす。相関が0.9以上あるときはどちらかを落とすのが一般的
②将来設定できない説明変数を落とす
③データが全て同じ値の説明変数は、重回帰分析に使えない
変数クラスター分析、変数選択法を用いると変数選択が容易にできる
決定係数はいくつ以上あれば良い?
●サンプル数は変数の数より多めに
サンプル数(n)と変数の数(p)の差は2以上であることが必要
n-p-1 > 0 (必要条件)
サンプル数が少ないと、求めた重回帰式を予測に使えないという事態が発生する
サンプル数はできるだけ多く取った方がよい
EXCELを用いた重回帰分析
分析者が経験的な判断から決める!!
決定係数 R 2 普通・・・0.5(重相関係数Rは0.7)を基準に判断
表5.1 中古マンションのデータ
サンプルNo.
決定係数
重相関係数
非常に良い
0.8以上
0.9以上
やや良い
0.5以上
0.7以上
悪い
0.5未満
0.7未満
1
2
3
4
5
6
7
8
9
10
広さx1
2
(m )
51
38
57
51
53
77
63
69
72
73
築年数x2
価格y
(年数) (千万円)
16
3.0
4
3.2
16
3.3
11
3.9
4
4.4
22
4.5
5
4.5
5
5.4
2
5.4
1
6.0
サンプル数pと説明変数nとの差が2以上でなければ分析できない
「決定係数の検定」より決定係数の有意性を評価
EXCELを用いた重回帰分析の手順
http://keijisaito.info/econ/jp/excel_ols/tool.htm
http://enterprisezine.jp/iti/detail/3964
1 アドインから分析ツールを追加
2 回帰分析用データを縦に並べる
3 分析ツールから回帰分析を実行
EXCELの出力例
概要
寄与率
回帰統計
重相関 R
0.97384694
重決定 R2
0.94837787
補正 R2
0.93362869
標準誤差
0.263625
観測数
10
分散分析表
Excelにおける回帰分析(最小二乗法)の手順と出力
http://keijisaito.info/pdf/excel_ols.pdf
自由度
回帰
残差
合計
変動
分散
観測された分散比
有意 F
2 8.93751302 4.46875651
64.30037501 3.1255E-05
7 0.48648698 0.06949814
9
9.424
回帰係数
http://d.hatena.ne.jp/dwashizu+tips/20131213/1386900545
(NEW)
切片
X値1
X値2
係数
標準誤差
t
1.02012955 0.44362392 2.29953684
0.06680477 0.00706459 9.45628471
-0.0808299 0.0122415 -6.6029458
P-値
下限 95% 上限 95%
0.055028639 -0.0288736 2.069133
3.08902E-05 0.05009968 0.08351
0.000303475 -0.1097765 -0.05188
4
EXCELを用いた重回帰分析課題1
表5.1 中古マンションのデータ
サンプルNo.
1
2
3
4
5
6
7
8
9
10
広さx1
2
(m )
51
38
57
51
53
77
63
69
72
73
築年数x2 価格y
(年数) (千万円)
16
3.0
4
3.2
16
3.3
11
3.9
4
4.4
22
4.5
5
4.5
5
5.4
2
5.4
1
6.0
EXCELを用いた重回帰分析課題2
教科書pp.24-26の計算例2(表1.5)の問題をExcelで
確認してください。
[ツール]→[分析ツール]→[回帰分析]を選び,説明
変数と被説明変数を指定すると,パラメータの推定値
が得られる.(計算結果のプリントを提出してください)
[ツール]→[分析ツール]→[回帰分析]を選び,説明変数と
被説明変数を指定すると,パラメータの推定値が得られる.
(計算結果のプリントを提出してください)
2次元画像の高次元ベクトル表現
回帰分析による画像処理例
2次元画像(64*64=4096画素)
高(4096)次元ベクトルで表現
12
24
64
184
12 24 64 184
35 21 72 118
54 13 90 200
86 99 86 42
高次元空間内での画像データ表現
回帰計算
回帰方程式を求め、入力から出力を推定できる
回帰方程式
出力
4096次元空間内、各画像は1点に対応
入力
5
欠損のある画像と回帰方程式による元画像の推定
• φ1  φ N :正規直交基底
• x :直積空間内の点 (N次元)
• y :入力ベクトル (N次元)
• z :出力ベクトル (N次元)
出力
z
構造を探る
(主成分分析)
Principal Component Analysis
(PCA)
x x  yz
出力超平面
y
入力
回帰分析と主成分分析
◎回帰分析は条件の付かない最大最小問題
◎主成分分析は条件付の最大最小問題
⇒手順は殆ど同じ
◎回帰分析は
主成分分析(今回のポイント)
◎主成分分析は条件付の最大最小問題
問題:
観測データにおける分散が最大の軸を求める
新しい軸 Z
条件:
軸同士が直交
p次元の軸の長さ=1
1
多変量解析の手法の中で最もポピュラーな手法
新しい軸 Z 2
主成分分析の問題
主成分分析(PCA)
固有値問題
データの要約(縮約)とは
多変量解析の数学的考え方の基本形は主成分分析にある
主成分分析が理解できれば
多変量解析は半分以上が理解できたと言える
観測データの主要な変動を要約し、特徴を把握する
ための統計的手法を主成分分析と呼ぶ
1変量の要約→ 平均・分散・標準偏差
 2変量の要約→ 相関係数(分散、共分散)
 多変量の要約→ 総和・加重和

• 主成分分析、回帰分析など
z = Xl
z1
主成分分析の目的
・情報の要約(縮約)
・新しい尺度の構築
・構造の探索
z2
l

X
多変量 X → 1変量の z に ⇒ 次元縮小
6
データの要約(縮約)の特例

次元縮小・情報要約・新変数
質量÷体積
= 密度
 体重・身長・胸囲・座高 → 体格

2変量( )は一直線上に並んでいる場合
y
新しい軸z
→ 新しいz軸で表現
→2次元表現が1次元に圧縮
⇒ 次元縮小
• 具体的・現象的 → 抽象的・概念的
• 次元縮小 → 抽象度上昇

科目テストの成績 → 能力
• 観測変数 → 合成変数
• 単純化 → 理解・解釈が容易に
拡張:N次元の変量は一直線上に並んでいる時も
同じように1次元に圧縮できる
• 不可視 → 可視化
x
データの要約(縮約)の一般例

情報要約と情報損失の関係
N変量は直線に近い状態で並んでいる場合
→N(=2)次元から1次元へ
新しい軸z
y
⇒次元縮小

情報要約 → 情報の保存と損失
• 両者のトレードオフ

目指:
多くを要約し,少ない損失ですませる
x
問題:Z軸をどのように定めたらよいか?
回帰分析と主成分分析における
誤差の考え方
主成分分析のイメージ
OZ1  OZ 2  OZ 3  OZ 4
y
回帰直線
y
が最大にするのが元の点Pi (i  1...4)の位置をあまり損なわずに めのこ
z軸上に表現できる
新しい軸z
y
P4
負の値を取ることが避けるため
2
2
2
2
OZ1  OZ 2  OZ 3  OZ 4 (1)
考え方を用いる
主成分分析
残差は,垂直方向最小
残差は,直線の方向最小
x
x
主成分分析の基本は(1)式が
重心O
P1
Z3
Z2
Z1
Z4
P3
P2
最大となる新しい軸を求める
問題に帰着する
 新しい軸の分散を最大にする
新しい軸への垂線
x
7
直線と点 の距離の2乗
データの中心(平均)
データの中心(平均)
主成分の分散 =主成分得点
中心を通る以下の直線(新しい軸Z)を求める問題に帰着:
(1)各点からこの直線におろした垂線の長さの2乗和の値が最小にする直線(軸)
or
(2)各点からこの直線におろした点と中心の距離の2乗和を最大にする直線(軸)
直線と点の距離の2乗(最小)
(1)直線と点の距離の2乗(最小)
一定
(一定)
データの中心(平均)
データの中心(平均)
主成分の分散(最大)
=主成分得点
(2)主成分の分散(最大)
=主成分得点
これから(2)の言い方で統一
中心を通る以下の直線(新しい軸Z)を求める問題に帰着:
(1)各点からこの直線におろした垂線の長さの2乗和の値が最小にする直線(軸)
直角三角形の有名なピタゴラスの定理より || (内容的にはまったく同じことを意味)
⇒ 全てのデータに対して、新しい軸Zの分散を最大にする
(2)各点からこの直線におろした点と中心の距離2乗総和を最大にする直線(軸)
主成分分析の例
主成分分析の例(続)
数 英
学 語
合
計
順
位
左の表では、順位は単純合計値によるが、
A
2
3
5
7
B
1
4
5
7
主成分分析を行い、主成分得点で順位を出す
C
2
2
4
10
3
2
5
7
E
5
4
9
3
4
4
8
6
G
8
5
13
1
H
F
6
3
9
3
I
7
6
13
1
J
4
5
9
3
1)点数グラフを作成
8
6
2)英語と数学のそれ
ぞれの平均点を重心
とする
3)重心を通る線を引く
英語
D
10
4
・B
2
 x2 
0
・A
・C ・D
2
・
I
・
J
・F×
・E
・H
4
6
数学  ( x1 )
・G
8
数 英
学 語
合
計
順
位
A
2
3
5
7
B
1
4
5
7
C
2
2
4
10
D
3
2
5
7
E
5
4
9
3
F
10
重心(4.2,3.8)
主成分分析で求めた主成分(主軸)は
4
4
8
6
G
8
5
13
1
H
6
3
9
3
I
7
6
13
1
J
4
5
9
3
新しい軸 Z1
第一主成分
重心
第一主成分得点
新しい軸 Z 2
Z1
第二主成分
軸:第1主成分で総合能力
Z2 軸:第2主成分で系別能力
1)重心を通る直線である
2)各点からこの直線におろした点と重心の距離2乗総和を最大に
する直線(軸)(=分散最大)
Z1 と Z2 垂直
8
2次元のデータ形式と主成分(主軸)
得られる主成分(主軸):
2個の変数
1
2
:
:
n
x1
x2
x11
x12
x21
x22

z1  l11x1  l12x2
x1n
n個のケース
単位ベクトル: lij 1,
x2 n
各 変数 の観
測データ
分散が最大の軸を探す
2
2
軸同士直交: likl jk  0, i, j 1,2;
k 1
i j
l 
l 
単位ベクトル: l1   11, l2   21, l1  l1  l2  l2  l1  l2  1
l
l22 
 12 
軸同士直交: l1  l2  0
Z i  (cos  ) xi  (sin  ) yi (i  1,2,..., n)より
Z i  xi l1  yi l2 (i  1,2,..., n)
y軸
新しいZ軸
X軸
p(x1,y1)
P(X1, Y1)
X1
Y1

この基礎知識から、(xi, yi)が
新しいZ軸(第1主軸)上の点Ziを次式で表現する:
x軸
Z i  (cos  ) xi  (sin  ) yi (i  1,2,...n)
S ZZ 
2
軸同士直交: likl jk  0, ただし、i, j 1,2; i  j
(2次元の場合、数式で表す)
(2次元の場合、数式で表す)
x-y座標系上の点p(x1, y1)は、直交軸の回転をした場合の
新しいX-Y座標系では点P(X1,Y1)となる
回転角度をとすると、点P(X1, Y1)と点p(x1, y1)の関係:
Y軸
2
i 1
主成分分析
主成分分析
Z1  (cos  ) x1  (sin  ) y1
単位ベクトル: lij 1,
k 1
i1
 X 1  (cos  ) x1  (sin  ) y1

Y1  ( sin  ) x1  (cos  ) y1
z1  l11x1  l12x2
z2  l21x1  l22x2
2
2個の変量の線形(一次)結合
但し、以下の条件を満足:
2
得られる主成分(主軸):
2個の変量の線形結合であり、以下の条件を満足:
z2  l21x1  l22x2

2次元のデータ形式と主成分(主軸)
ただし、l1  cos  ; l2  sin 
ベクトルZとl、行列Xで表現:  Z1   x1 y1 
 Z   x y  l
2  1 
Z   2   2
 Xl
 :   : :  l2 
  

 Z n   xn y n 
1
ベクトルZの分散 S ZZ  Z 'Z を最大にする問題
n
主成分分析
主成分分析
(2次元の場合、数式で表す)
(2次元の場合、数式で表す)
1 '
Z Z の最大となる時のベクトルlの値を求めれば、
n
新しいZ 軸(第1主軸)が求められる
ただし、下の制約条件が常に付いている:
l1  cos  ; l2  sin  から l12  l22  1
l 
ベクトルl   1 で表現すると l 'l  1となる
l2 
ラグランジュの未定乗数法を使って新しい式を定義
1 '
Z Z を最大にする問題
n
下の制約条件が常に付いている
◎ベクトルZの分散 S ZZ 
l1  cos  ; l2  sin  から l12  l22  1
l 
ベクトルl   1 で表現すると l 'l  1となる
l2 
ラグランジュの未定乗数法を使って、問題を解く式:
その問題を解く式は?(各自で書いてみてください)
タイトル「出席レポート」、日付、学籍番号、氏名を書く
9
主成分分析(数式で表す)
v
1 '
Z Z   (l 'l  1) にZ=Xl を代入して
n
1
1
v  ( Xl)' (Xl)   (l 'l  1)  l ' X' Xl   (l 'l  1)  l ' Σl  l 'l  
n
n
1 '
ここで、Σ  X X (分散共分散行列) →対称行列
n
ベクトルlについて偏微分して、0とおくと
どんな式が得られるか?
「数式で表す」のまとめ
●主成分分析はとても簡単な計算で求めることができる
●今まで復習した内容を綺麗にかつ簡潔に使った
●データ行列の分散共分散行列さえ計算されれば、
簡単にヤコビ法で解くことができる
注意:対称行列Aのとき
(1)w  Axのベクトルxについての偏微分は、w x  A
(2)w  x' xのベクトルxについての偏微分は、w x  2x
(3)w  x' Axのベクトルxについての偏微分は、w x  2 Ax
タイトル「出席レポート」、日付、学籍番号、氏名を書く
10