今日の講義内容
主成分分析
2 / 33
構成
1 主成分分析の概要
2 実データ解析
3 / 33
主成分分析の目的
主成分分析: PCA (Principal Component Analysis) とも呼ばれる.
使いドコロ:多変量データを少ない変数に要約したい.→ データの視覚化.→ 線形回帰等多変量データ解析の前処理.
データを低い次元に落とすことを「次元削減」と言う.
主成分分析はデータ解析において「とりあえずやってみること」の一つ.
4 / 33
主成分分析で何が得られる?
−6 −4 −2 0 2 4 6
−6
−4
−2
02
46
PC 1
PC
2
1
2
3
45
6 7
8
9
10111213
1415
1617 18
19
20
21
2223
2425
26
27 28
2930
31
32
3334
35
3637
383940
4142
4344 454647
48
49
5051
5253
54
55
56
57
58
59 6061
62
6364
65
66
6768
69
70
71
727374
7576
777879
80
81 82
83 84
85
86
87
88
8990
919293
9495
96
97
9899
100
101102
103104105
106107
108109
110111
112
113114115
116117118
119120
121122123
124125
126
127128
129
130
131132133
134135
136137
138
139
140
141
142
143
144
145
146147
148
149
150
151
152
153
154
155156
157
158
159
160
161
162
163164
165166
167
168
169170
171172
173
174
175
176
177
178
179180
181
182
183
184
185186
187
188
189
190
191
192
193
194195
196
197
198
199
200201202
203
204205
206
207
208
209
210
211
212213
214
215
216
217
218
219
220221
222
223
224
225
226
227
228
229
230
231
232
233234
235
236
237
238
239240241
242243244
245246
247248249250
251252253
254
255
256
257
258
259
260261
262
263
264265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288289290
291
292
293
294 295
296297
298
299
300 301 302303
304
305
306
307
308309
310
311
312 313314
315
316317318
319
320321322
323324
325
326327328329
330331
332
333
334335336 337338
339340341
342
343344345
346347348
349 350
351352
353
354
355
356
357
358359
360
361
362363
364
365
366
367
368
369
370371
372
373
374
375
376
377378
379380 381382
383384
385
386387388
389
390
391
392
393
394395
396397
398
399
400401
402403
404
405 406407
408
409
410
411
412
413
414
415
416417
418419
420
421
422423
424
425426
427
428429 430431432433434
435436
437
438
439
440441
442443444
445
446
447448449450451
452453
454
455456
457458
459460
461462463
464
465
466467468
469470
471472473
474
475
476
477
478
479
480
481
482483
484485
486 487488 489
490
491
492493
494495
496 497
498
499
500
501
502503
504505
506
−0.4 −0.2 0.0 0.2 0.4
−0.
4−
0.2
0.0
0.2
0.4
CRIM
ZN
INDUS
CHAS
NOX
RM
AGE
DIS
RADTAX
PTRATIO
B
LSTAT
MEDV
多変量データを二次元に射影してデータを要約することができる.
CRIM 各町の一人あたりの犯罪率
ZN 宅地割合
INDUS 非商用地の割合
CHAS チャールズ川沿いかどうか
NOX 一酸化窒素濃度
RM 住居の平均部屋数
AGE 1940 年より古くに建てられた住居の割合
DIS ボストンのビジネス街からの距離
RAD ハイウェイへのアクセスの良さ
TAX 固定資産税
PTRATIO 教師人口の割合
B アフリカ系アメリカ人の割合を Bk としたときの1000(Bk − 0.63)2
LSTAT 低所得者層の割合
MEDV 持ち家価格の中央値
5 / 33
主成分分析の流れ
1 データの標準化:中心化,分散の基準化
2 分散共分散行列の計算
3 分散共分散行列を固有値固有ベクトル分解
4 固有値の大きい方からいくつかの固有値固有ベクトルを取ってくる→主成分!
5 主成分にデータを射影して視覚化および回帰などの処理を続行
6 / 33
データの形式
X =
X1,1 X1,2 . . . X1,d
X2,1 X2,2 . . . X2,d
......
...Xn,1 Xn,2 . . . Xn,d︸ ︷︷ ︸
d 次元
n サンプル
=
x⊤1x⊤2...x⊤n
7 / 33
データの標準化
データの標準化
中心化 元データから平均を引いて平均を 0にする.
分散の基準化 中心化したデータを標準偏差で割って,分散を 1に基準化.
µ̂j =1
n
n∑i=1
Xij : 平均値 (の推定量)
σ̂j =
√√√√ 1
n − 1
n∑i=1
(Xij − µ̂j)2 : 標準偏差 (の推定量)
標準化:中心化して分散を 1に基準化
Xij ←Xij − µ̂j
σ̂j
→ 各成分は平均0分散1になる.※ 主成分分析においては分散は1に揃えない場合も多い.
8 / 33
バラツキ(分散)が最大の方向
第一主成分とは,バラツキが一番大きい方向である.分散が大きい→そのデータを特徴付ける方向→データの要約
9 / 33
バラツキ(分散)が最大の方向
第一主成分とは,バラツキが一番大きい方向である.分散が大きい→そのデータを特徴付ける方向→データの要約
9 / 33
バラツキ(分散)が最大の方向の計算
ある方向ベクトルを v(∥v∥ = 1)とおく.この方向への xの長さは
v⊤x
で求まる.よって v⊤xi の分散は
1
n − 1
n∑i=1
[v⊤(xi − µ̂)]2 = v⊤
(1
n − 1
n∑i=1
(xi − µ̂)(xi − µ̂)⊤
)︸ ︷︷ ︸
分散共分散行列
v
=: v⊤Σv ,
である.これを最大にする方向 v を求める:
maxv :∥v∥=1
v⊤Σv .
→ 最大固有値に対応する固有ベクトルにほかならない.
10 / 33
分散共分散行列の固有値
Σは (実対称) 半正定値行列 (チェックせよ)
一般に半正定値行列は直交行列で対角化可能 (固有値固有ベクト分解):
Σvj = λjvj (j = 1, . . . , d),
ただし,vj らは互いに直交 (⟨vj , vj′⟩ = 0 (j ̸= j ′)) し,λ1 ≥ . . . λd ≥ 0.
行列表現V = [v1, . . . , vd ], Λ = diag(λ1, . . . , λd)
に対して,ΣV = VΛ.
V は直交行列なので,V⊤ΣV = Λ, Σ = VΛV⊤
でもある.
11 / 33
最大固有値
maxv :∥v∥=1
v⊤Σv = maxv :∥v∥=1
v⊤VΛV⊤v
= maxv :∥v∥=1
v⊤Λv (∵ ∥Vv∥ = 1⇔ ∥v∥ = 1)
= maxv :∥v∥=1
d∑j=1
v2j λj
= λ1,
であり,最大化元は v1 (v⊤1 Σv1 = λ1).
12 / 33
第二第三の主成分
●
●
●
●
●
●
●
●
●
●
●
●●
●
●●
●●
●●
●●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
●●
●
●
●
●
●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
● ●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●●
第一主成分
第二主成分
v1 (第一主成分) に直交した成分で,バラツキの一番大きな成分:
maxv :v1⊥v ,∥v∥=1
v⊤Σv .
13 / 33
第二第三主成分の計算
maxv :v1⊥v ,∥v∥=1
v⊤Σv = maxv :v1⊥v ,∥v∥=1
v⊤VΛV⊤v
= maxv :v1⊥v ,∥v∥=1
v⊤[v1v2 . . . vd ]
λ1
. . .
λd
[v1v2 . . . vd ]⊤v
= maxv :v1⊥v ,∥v∥=1
v⊤[v2 . . . vd ]
λ2
. . .
λd
[v2 . . . vd ]⊤v
= λ2,
最適解は v2.以下同様に第 j 主成分は j 番目の固有ベクトル vj である.
14 / 33
まとめ
分散共分散行列を固有値分解して上から必要な数分だけ取ってくれば良い.
Σ = VΛV⊤ = [v1 . . . vd ]
λ1
. . .
λd
[v1 . . . vd ]⊤.
固有値固有ベクトル分解
第 j 主成分: vj第 j 主成分スコア: v⊤
j x (サンプル x が第 j 主成分をどれだけ含んでいるか)
第 j 主成分の寄与率:λj∑j λj
(> 0)
寄与率はその主成分方向がデータの何割を表現しているかを表している.寄与率の大きい成分から順に取ってくることでデータの良い要約を得る.それが主成分分析.
15 / 33
構成
1 主成分分析の概要
2 実データ解析
16 / 33
ボストンハウジングデータ
� �x <- read.table("housing_table.data", header=T)
plot(x)� �CRIM
0 80 0.0 1.0 4 7 2 10 200 0 400 10 50
080
080
ZN
INDUS
020
0.0
1.0
CHAS
NOX
0.4
47 RM
AGE
080
210
DIS
RAD
5
200
TAX
PTRATIO
1422
040
0
B
LSTAT
100 80
1050
0 20 0.4 0 80 5 14 22 10
MEDV
17 / 33
変数の意味
CRIM 各町の一人あたりの犯罪率
ZN 宅地割合
INDUS 非商用地の割合
CHAS チャールズ川沿いかどうか
NOX 一酸化窒素濃度
RM 住居の平均部屋数
AGE 1940年より古くに建てられた住居の割合
DIS ボストンのビジネス街からの距離
RAD ハイウェイへのアクセスの良さ
TAX 固定資産税
PTRATIO 教師人口の割合
B アフリカ系アメリカ人の割合を Bk としたときの 1000(Bk − 0.63)2
LSTAT 低所得者層の割合
MEDV 持ち家価格の中央値
18 / 33
変数の標準化
scale関数で標準化可能> x <- scale(x) #標準化> colMeans(x) #全変数の平均 0
CRIM ZN INDUS CHAS NOX RM-6.899468e-18 2.298337e-17 1.516683e-17 -3.510587e-18 -2.149412e-16 -1.058524e-16
AGE DIS RAD TAX PTRATIO B-1.645039e-16 1.144506e-16 4.651527e-17 1.906139e-17 -3.931034e-16 -1.155991e-16
LSTAT MEDV-7.012260e-17 -1.379311e-16> diag(var(x)) #全変数の分散 1
CRIM ZN INDUS CHAS NOX RM AGE DIS RAD TAX PTRATIO1 1 1 1 1 1 1 1 1 1 1B LSTAT MEDV1 1 1
19 / 33
分散共分散行列の計算
> Sigma = cov(x) #分散共分散行列を計算.> Sigma[1:5,1:5]
CRIM ZN INDUS CHAS NOX
CRIM 1.00000000 -0.20046922 0.40658341 -0.05589158 0.42097171
ZN -0.20046922 1.00000000 -0.53382819 -0.04269672 -0.51660371
INDUS 0.40658341 -0.53382819 1.00000000 0.06293803 0.76365145
CHAS -0.05589158 -0.04269672 0.06293803 1.00000000 0.09120281
NOX 0.42097171 -0.51660371 0.76365145 0.09120281 1.00000000
20 / 33
分散共分散行列の固有値固有ベクトル分解
> res <- eigen(Sigma) #分散共分散行列を固有値固有ベクトル変換> res
$values
[1] 6.54598958 1.64953191 1.34890592 0.88653987 0.85089944 0.66001077 0.53541080 0.40307658 0.27726358 0.25225744 0.21279025 0.18298750
[13] 0.13400970 0.06032666
$vectors
[,1] [,2] [,3] [,4] [,5] [,6] [,7] [,8] [,9] [,10]
[1,] 0.242284451 0.065873108 0.395077419 0.100366211 0.004957659 -0.22462703 0.777083366 0.15740140 0.254211798 0.071384615
[2,] -0.245435005 0.148002653 0.394545713 0.342958421 0.114495002 -0.33574694 -0.274178365 -0.38031404 0.382899480 -0.245579673
[3,] 0.331859746 -0.127075668 -0.066081913 -0.009626936 -0.022583692 -0.08082495 -0.340273839 0.17174578 0.627048264 0.254827026
[4,] -0.005027133 -0.410668763 -0.125305293 0.700406497 -0.535197817 0.16264906 0.074075775 -0.03292700 -0.018642967 0.041706916
res$values は固有値.降順に並んでいる.res$vectors は固有ベクトルを並べた行列 (V のこと).
21 / 33
固有値・固有ベクトルのチェック
固有値・固有ベクトルの性質をチェック
> norm(Sigma - res$vectors %*% diag(res$values) %*% t(res$vectors)) #確認[1] 2.668005e-14
> tmp <- (res$vectors %*% t(res$vectors)); tmp[1:5,1:5]
[,1] [,2] [,3] [,4] [,5]
[1,] 1.000000e+00 -5.551115e-17 1.040834e-16 2.602085e-18 -3.729655e-17
[2,] -5.551115e-17 1.000000e+00 -1.942890e-16 -1.170938e-16 2.064321e-16
[3,] 1.040834e-16 -1.942890e-16 1.000000e+00 -8.239937e-17 -6.834810e-16
[4,] 2.602085e-18 -1.170938e-16 -8.239937e-17 1.000000e+00 -6.591949e-17
[5,] -3.729655e-17 2.064321e-16 -6.834810e-16 -6.591949e-17 1.000000e+00
> tmp <- (t(res$vectors) %*% res$vectors); tmp[1:5,1:5]
[,1] [,2] [,3] [,4] [,5]
[1,] 1.000000e+00 1.387779e-16 3.191891e-16 4.857226e-17 2.081668e-17
[2,] 1.387779e-16 1.000000e+00 -4.024558e-16 6.938894e-17 -3.122502e-17
[3,] 3.191891e-16 -4.024558e-16 1.000000e+00 -5.551115e-17 -5.204170e-17
[4,] 4.857226e-17 6.938894e-17 -5.551115e-17 1.000000e+00 -3.070461e-16
[5,] 2.081668e-17 -3.122502e-17 -5.204170e-17 -3.070461e-16 1.000000e+00
※ 対角行列の場合,固有ベクトルは直交行列をなす.
22 / 33
固有値・固有ベクトルのチェック2
固有値・固有ベクトルの性質をチェック
> norm(Sigma %*% res$vectors - res$vectors %*% diag(res$values)) #確認[1] 2.207262e-14
Σvj = λjvj (∀1 ≤ j ≤ d)
⇒ ΣV = VΛ,
ただし V = [v1, . . . , vd ], Λ =
λ1 O. . .
O λd
.
23 / 33
主成分分析
> #主成分分析> Lam <- res$values
> V <- res$vectors
> y = x %*% V #主成分スコアの計算> dim(y) # n × d
[1] 506 14
y⊤i = x⊤i V = [x⊤i v1, . . . , x
⊤i vd ],
y =
y⊤1...y⊤n
.
24 / 33
第一,第二主成分スコアのプロット
> plot(y[,1],y[,2],type=’n’) #第一,第二主成分スコアをプロット> text(y[,1],y[,2],seq(length=nrow(y)),cex=0.5)
−6 −4 −2 0 2 4 6
−6
−4
−2
02
y[, 1]
y[, 2
]
1
2
3
45
67
8
9
10 1112
1314
15
1617 18
19
20
21
2223
2425
26
27 28
2930
31
32
33
3435
3637
383940
4142
4344 45
464748
49
5051
5253
54
55
56
57
58
59 6061
62
6364
65
66
67
68
69
70
71
727374
7576
77
7879
80
81 82
83 84
85
86
87
88
8990
9192
9394
95
96
97
98
99
100
101102
103104105
106107
108
109
110111
112
113114115
116117118
119120
121122123
124
125126
127128
129
130
131132
133
134135
136
137
138
139
140
141
142
143
144
145
146147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169170
171172
173
174
175
176
177
178
179180
181
182
183
184
185
186
187
188
189
190
191
192
193
194195
196
197
198
199
200201202
203
204205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233234
235
236
237
238
239
240241
242243244
245246
247
248249250
251252
253
254
255
256
257
258
259
260261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288289290
291
292
293
294 295
296 297
298
299
300 301302303
304
305
306
307
308
309
310
311
312 313314
315
316317318
319
320321322
323324
325
326327328329
330
331
332
333
334335
336 337338339340
341
342
343344345
346347
348
349 350
351352
353
354
355
356
357
358359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377378
379380 381
382
383384
385
386387388
389
390
391
392
393
394
395
396397
398
399
400401
402
403
404
405 406
407
408
409
410
411
412
413
414
415
416
417
418419
420
421
422423
424
425
426427
428429430
431
432433
434435
436437
438
439
440441
442443444
445
446
447448449450
451452
453
454
455456
457458
459460
461462463
464
465
466
467468
469470
471472
473
474
475
476
477
478
479
480
481
482
483
484485
486 487488 489
490
491
492
493
494495
496 497
498
499
500
501
502
503
504
505
506
25 / 33
主成分スコア (Y の各列) は互いに無相関.
> round(cov(y),10) #yは無相関[,1] [,2] [,3] [,4] [,5]
[1,] 6.54599 0.000000 0.000000 0.0000000 0.0000000
[2,] 0.00000 1.649532 0.000000 0.0000000 0.0000000
[3,] 0.00000 0.000000 1.348906 0.0000000 0.0000000
[4,] 0.00000 0.000000 0.000000 0.8865399 0.0000000
[5,] 0.00000 0.000000 0.000000 0.0000000 0.8508994
y = XV ∈ Rn×d
⇒ y⊤y = V⊤X⊤XV = V⊤(Σ)V = V⊤(VΛV⊤)V = (V⊤V )Λ(V⊤V ) = Λ.
26 / 33
主成分スコアと軸のプロット
biplot(y[,c(1,2)],V[,c(1,2)],cex=0.5) #第一,第二主成分スコア
27 / 33
第一・第二主成分スコア
−6 −4 −2 0 2 4 6
−6
−4
−2
02
46
PC 1
PC
2
1
2
3
45
6 7
8
9
10111213
1415
1617 18
19
20
21
2223
2425
26
27 28
2930
31
32
3334
35
3637
383940
4142
4344 454647
48
49
5051
5253
54
55
56
57
58
59 6061
62
6364
65
66
6768
69
70
71
727374
7576
777879
80
81 82
83 84
85
86
87
88
8990
919293
9495
96
97
9899
100
101102
103104105
106107
108109
110111
112
113114115
116117118
119120
121122123
124125
126
127128
129
130
131132133
134135
136137
138
139
140
141
142
143
144
145
146147
148
149
150
151
152
153
154
155156
157
158
159
160
161
162
163164
165166
167
168
169170
171172
173
174
175
176
177
178
179180
181
182
183
184
185186
187
188
189
190
191
192
193
194195
196
197
198
199
200201202
203
204205
206
207
208
209
210
211
212213
214
215
216
217
218
219
220221
222
223
224
225
226
227
228
229
230
231
232
233234
235
236
237
238
239240241
242243244
245246
247248249250
251252253
254
255
256
257
258
259
260261
262
263
264265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288289290
291
292
293
294 295
296297
298
299
300 301 302303
304
305
306
307
308309
310
311
312 313314
315
316317318
319
320321322
323324
325
326327328329
330331
332
333
334335336 337338
339340341
342
343344345
346347348
349 350
351352
353
354
355
356
357
358359
360
361
362363
364
365
366
367
368
369
370371
372
373
374
375
376
377378
379380 381382
383384
385
386387388
389
390
391
392
393
394395
396397
398
399
400401
402403
404
405 406407
408
409
410
411
412
413
414
415
416417
418419
420
421
422423
424
425426
427
428429 430431432433434
435436
437
438
439
440441
442443444
445
446
447448449450451
452453
454
455456
457458
459460
461462463
464
465
466467468
469470
471472473
474
475
476
477
478
479
480
481
482483
484485
486 487488 489
490
491
492493
494495
496 497
498
499
500
501
502503
504505
506
−0.4 −0.2 0.0 0.2 0.4
−0.
4−
0.2
0.0
0.2
0.4
CRIM
ZN
INDUS
CHAS
NOX
RM
AGE
DIS
RADTAX
PTRATIO
B
LSTAT
MEDV
各点:y⊤i = [yi,1, yi,2] = [x⊤i v1, x⊤i v2]
矢印の方向:uj = [v1,jv2,j ] = e⊤j [v1, v2].
矢印は各変数が主成分の上でどの方向を向いているかを示している.
CRIM 各町の一人あたりの犯罪率
ZN 宅地割合
INDUS 非商用地の割合
CHAS チャールズ川沿いかどうか
NOX 一酸化窒素濃度
RM 住居の平均部屋数
AGE 1940 年より古くに建てられた住居の割合
DIS ボストンのビジネス街からの距離
RAD ハイウェイへのアクセスの良さ
TAX 固定資産税
PTRATIO 教師人口の割合
B アフリカ系アメリカ人の割合を Bk としたときの1000(Bk − 0.63)2
LSTAT 低所得者層の割合
MEDV 持ち家価格の中央値
28 / 33
第一・第二主成分スコアの考察
第一主成分は,TAXや RAD,INDUSが大きく寄与していて,主に住環境に関する情報が乗っていると考えられる.第一主成分が大きいほど,産業地域のようなあまり居住に適さない住環境.
第二主成分は CHASやMEDV, RMの寄与が大きく,住宅の質の良さ(「いい家」かどうか)を表している.
29 / 33
第一・第三主成分スコア
−6 −4 −2 0 2 4 6
−6
−4
−2
02
46
PC 1
PC
3
1
2
345
67
8
9
10 111213
141516
17
18
19
20
21
22 2324
2526
27
282930
31
3233
34
353637
3839
40
41
42
4344
454647
48
49
50
5152
53
54
55
56
57
58
59
60
61 62
63
6465
66
67
68
69
7071
727374 75
76
77787980
81
8283
84
8586
878889
90
9192
9394
9596
97
9899
100
101102
103
104105
106107
108109110
111112
113114
115116
117118119120
121122123
124125
126
127
128
129
130
131132133
134
135136
137138
139140
141
142143
144
145
146147
148
149
150
151152
153
154
155
156157
158
159 160161
162
163164
165
166
167
168169170
171172
173
174175
176
177178
179180181
182
183
184
185
186
187
188189190
191
192
193
194195
196
197 198199
200201
202
203204205
206207
208209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225226
227
228
229
230
231
232
233234
235 236237
238
239240241
242
243
244
245246
247248
249
250251
252
253
254
255256
257
258
259
260
261
262
263
264265
266
267
268
269
270
271
272273
274275
276
277278 279280
281
282283
284 285
286
287
288289
290
291292
293
294
295
296297
298
299
300
301
302303
304
305
306
307
308
309
310311
312
313
314315
316317318
319320
321322323
324
325326
327
328
329
330331
332
333
334335336
337338339
340341
342
343
344
345
346347
348349
350
351
352
353
354
355356
357358359
360
361362
363364
365
366
367
368369
370371
372
373
374375
376
377
378
379
380
381
382
383384385
386387388
389390
391
392
393
394395396397
398
399
400
401402403 404
405
406
407
408
409
410
411
412
413414
415416417
418
419
420
421
422
423
424425 426427
428
429 430431432433
434435436
437
438
439
440
441442443
444445
446
447448449
450
451
452453
454
455
456457
458
459
460
461
462463
464465466
467
468
469470
471472473
474
475
476477478
479
480481482
483
484 485486
487488
489490
491
492
493494
495496
497
498499
500501502
503
504505
506
−0.2 0.0 0.2 0.4
−0.
20.
00.
20.
4
CRIMZN
INDUS
CHAS
NOX
RM
AGE
DIS
RAD
TAX
PTRATIO
B
LSTAT
MEDV
各点:y⊤i = [yi,1, yi,2] = [x⊤i v1, x⊤i v2]
矢印の方向:uj = [v1,jv2,j ] = e⊤j [v1, v2].
矢印は各変数が主成分の上でどの方向を向いているかを示している.
CRIM 各町の一人あたりの犯罪率
ZN 宅地割合
INDUS 非商用地の割合
CHAS チャールズ川沿いかどうか
NOX 一酸化窒素濃度
RM 住居の平均部屋数
AGE 1940 年より古くに建てられた住居の割合
DIS ボストンのビジネス街からの距離
RAD ハイウェイへのアクセスの良さ
TAX 固定資産税
PTRATIO 教師人口の割合
B アフリカ系アメリカ人の割合を Bk としたときの1000(Bk − 0.63)2
LSTAT 低所得者層の割合
MEDV 持ち家価格の中央値
30 / 33
Rの関数で主成分分析
princompで主成分分析,prcompもほぼ同じ.eigenか svdのどちらを使うかの違い.
> PCA <- princomp(x,cor=TRUE) %相関行列を用いて PCA
> biplot(PCA)
−0.20 −0.15 −0.10 −0.05 0.00 0.05 0.10
−0.
20−
0.15
−0.
10−
0.05
0.00
0.05
0.10
Comp.1
Com
p.2 1
2
3
45
67
8
9
101112
1314
15
1617 18
19
20
21
2223
2425
26
2728
2930
31
32
33
3435
3637
383940
4142
4344 45
464748
49
5051
5253
54
55
56
57
58
59 6061
62
6364
65
66
67
68
69
70
71
727374
7576
77
7879
80
81 82
8384
85
86
87
88
8990
9192
9394
95
96
97
98
99
100
101102
103104105
106107
108
109
110111
112
113114115
116117118
119120
121122123
124
125126
127128
129
130
131132
133
134135
136
137
138
139
140
141
142
143
144
145
146147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169170
171172
173
174
175
176
177
178
179180
181
182
183
184
185
186
187
188
189
190
191
192
193
194195
196
197
198
199
200201202
203
204205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233234
235
236
237
238
239
240241
242243244
245246
247
248249250
251252
253
254
255
256
257
258
259
260261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288289290
291
292
293
294295
296297
298
299
300301302303
304
305
306
307
308
309
310
311
312 313314
315
316317318
319
320321322
323324
325
326327328329
330
331
332
333
334335336337338
339340341
342
343344345
346347
348
349350
351352
353
354
355
356
357
358359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377378
379380 381
382
383384
385
386387388
389
390
391
392
393
394
395
396397
398
399
400401
402
403
404
405 406
407
408
409
410
411
412
413
414
415
416
417
418419
420
421
422423
424
425
426427
428429430
431
432433
434435436
437
438
439
440441
442443444
445
446
447448449450
451452453
454
455456
457458
459460
461462463
464
465
466
467468
469470
471472
473
474
475
476
477
478
479
480
481
482
483
484485
486 487488 489
490
491
492
493
494495
496 497
498
499
500
501
502
503
504
505
506
−30 −20 −10 0 10 20
−30
−20
−10
010
20
CRIM
ZN
INDUS
CHAS
NOX
RM
AGE
DIS
RADTAX
PTRATIO
B
LSTAT
MEDV
さっきと表示が違う...?31 / 33
主成分スコアのスケーリング
主成分スコアの分散を基準化:
zi,j = yi,j/√
λj
第 j主成分スコアの分散:
var(y:,j) = y⊤:,j y:,j = V⊤
:,jXX⊤V:,j = Λj,j = λj .
−0.20 −0.15 −0.10 −0.05 0.00 0.05 0.10
−0.
20−
0.15
−0.
10−
0.05
0.00
0.05
0.10
Comp.1
Com
p.2 1
2
3
45
67
8
9
101112
1314
15
1617 18
19
20
21
2223
2425
26
2728
2930
31
32
33
3435
3637
383940
4142
4344 45
464748
49
5051
5253
54
55
56
57
58
59 6061
62
6364
65
66
67
68
69
70
71
727374
7576
77
7879
80
81 82
8384
85
86
87
88
8990
9192
9394
95
96
97
98
99
100
101102
103104105
106107
108
109
110111
112
113114115
116117118
119120
121122123
124
125126
127128
129
130
131132
133
134135
136
137
138
139
140
141
142
143
144
145
146147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169170
171172
173
174
175
176
177
178
179180
181
182
183
184
185
186
187
188
189
190
191
192
193
194195
196
197
198
199
200201202
203
204205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233234
235
236
237
238
239
240241
242243244
245246
247
248249250
251252
253
254
255
256
257
258
259
260261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288289290
291
292
293
294295
296297
298
299
300301302303
304
305
306
307
308
309
310
311
312 313314
315
316317318
319
320321322
323324
325
326327328329
330
331
332
333
334335336337338
339340341
342
343344345
346347
348
349350
351352
353
354
355
356
357
358359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377378
379380 381
382
383384
385
386387388
389
390
391
392
393
394
395
396397
398
399
400401
402
403
404
405 406
407
408
409
410
411
412
413
414
415
416
417
418419
420
421
422423
424
425
426427
428429430
431
432433
434435436
437
438
439
440441
442443444
445
446
447448449450
451452453
454
455456
457458
459460
461462463
464
465
466
467468
469470
471472
473
474
475
476
477
478
479
480
481
482
483
484485
486 487488 489
490
491
492
493
494495
496 497
498
499
500
501
502
503
504
505
506
−30 −20 −10 0 10 20
−30
−20
−10
010
20
CRIM
ZN
INDUS
CHAS
NOX
RM
AGE
DIS
RADTAX
PTRATIO
B
LSTAT
MEDV
−6 −4 −2 0 2 4 6
−6
−4
−2
02
46
Comp.1
Com
p.2
1
2
3
45
6 7
8
9
10111213
1415
1617 18
19
20
21
2223
2425
26
27 28
2930
31
32
3334
35
3637
383940
4142
4344 454647
48
49
5051
5253
54
55
56
57
58
59 6061
62
6364
65
66
6768
69
70
71
727374
7576
777879
80
81 82
83 84
85
86
87
88
8990
919293
9495
96
97
9899
100
101102
103104105
106107
108109
110111
112
113114115
116117118
119120
121122123
124125
126
127128
129
130
131132133
134135
136137
138
139
140
141
142
143
144
145
146147
148
149
150
151
152
153
154
155156
157
158
159
160
161
162
163164
165166
167
168
169170
171172
173
174
175
176
177
178
179180
181
182
183
184
185186
187
188
189
190
191
192
193
194195
196
197
198
199
200201202
203
204205
206
207
208
209
210
211
212213
214
215
216
217
218
219
220221
222
223
224
225
226
227
228
229
230
231
232
233234
235
236
237
238
239240241
242243244
245246
247248249250
251252253
254
255
256
257
258
259
260261
262
263
264265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288289290
291
292
293
294 295
296297
298
299
300 301 302303
304
305
306
307
308309
310
311
312 313314
315
316317318
319
320321322
323324
325
326327328329
330331
332
333
334335336 337338
339340341
342
343344345
346347348
349 350
351352
353
354
355
356
357
358359
360
361
362363
364
365
366
367
368
369
370371
372
373
374
375
376
377378
379380 381382
383384
385
386387388
389
390
391
392
393
394395
396397
398
399
400401
402403
404
405 406407
408
409
410
411
412
413
414
415
416417
418419
420
421
422423
424
425426
427
428429 430431432433434
435436
437
438
439
440441
442443444
445
446
447448449450451
452453
454
455456
457458
459460
461462463
464
465
466467468
469470
471472473
474
475
476
477
478
479
480
481
482483
484485
486 487488 489
490
491
492493
494495
496 497
498
499
500
501
502503
504505
506
−0.4 −0.2 0.0 0.2 0.4
−0.
4−
0.2
0.0
0.2
0.4
CRIM
ZN
INDUS
CHAS
NOX
RM
AGE
DIS
RADTAX
PTRATIO
B
LSTAT
MEDV
biplot(PCA,scale=1,cex=0.5) biplot(PCA,scale=0,cex=0.5)
princompオブジェクトに対しては scale=1がデフォルト.32 / 33
画像認識:固有顔
顔画像データから上位20個の主成分を生成.
http://www.kixor.net/school/2008spring/comp776/assn3/
33 / 33