SlideShare a Scribd company logo
主成分分析
(Principal Component Analysis, PCA)
明治大学理工学部応用化学科
データ化学工学研究室 B4 菅野 泰弘
主成分分析 2
一般的に4次元以上の空間の様子を人が直接視覚することは不可能です。
この多次元のデータ構造を知るために一般に利用される方法が主成分分析(PCA)と呼ばれるものです。
要約してしまうと
「新しい軸を作り次元圧縮することで視覚化できるようにする⽅法」
主成分分析 3
予備知識
全情報量
(𝑥1, 𝑥2)
𝑥1
𝑥2
情報量
(𝑥1)
𝑥1
𝑥2
𝑥1軸と𝑥2軸にそれぞれ射影
情報量
(𝑥2)
情報量𝑥1
損失している
情報量𝑥2
損失している
主成分分析 4
予備知識
射影したデータのばらつきが大きいほど
もとのデータの情報を多く含んでいる
個体差がでやすい
個
体
差
が
で
に
く
い
主成分分析 5
2次元データが存在すると仮定して説明していきます。
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
-3 -2 -1 0 1 2 3
y
x
主成分分析 6
𝑿 =
𝑥11 𝑥12
𝑥21
𝑥31
𝑥41
𝑥22
𝑥32
𝑥42
=
2 2
1
−1
−2
−1
1
−2
のプロットがある場合
2つの記述子 x1, x2 の線形結合を t とすると
𝑡 = 𝑥1 𝑝1 + 𝑥2 𝑝2
となる。
規格化条件 (𝑝1
2
+ 𝑝2
2
= 1)
主成分分析 7
𝑿 =
𝑥11 𝑥12
𝑥21
𝑥31
𝑥41
𝑥22
𝑥32
𝑥42
=
2 2
1
−1
−2
−1
1
−2
のプロットがある場合
2つの記述子 x1, x2 の線形結合を t とすると
𝑡 = 𝑥1 𝑝1 + 𝑥2 𝑝2
となる。
規格化条件 (𝑝1
2
+ 𝑝2
2
= 1)
つまりt1軸はこのように引ける
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
-3 -2 -1 0 1 2 3
y
x
主成分分析 8
𝑿 =
𝑥11 𝑥12
𝑥21
𝑥31
𝑥41
𝑥22
𝑥32
𝑥42
=
2 2
1
−1
−2
−1
1
−2
のプロットがある場合
2つの記述子 x1, x2 の線形結合を t とすると
𝑡 = 𝑥1 𝑝1 + 𝑥2 𝑝2
となる。
規格化条件 (𝑝1
2
+ 𝑝2
2
= 1)
またt2軸はt1軸に直交していなければならない
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
-3 -2 -1 0 1 2 3
y
x
主成分分析 9
t 軸に各プロットを射影させたときの t 軸上の座標をスコアという
𝑿 =
𝑥11 𝑥12
𝑥21
𝑥31
𝑥41
𝑥22
𝑥32
𝑥42
t軸
𝑡11 𝑡12
𝑡21
𝑡31
𝑡41
𝑡22
𝑡32
𝑡42
第1主成分軸 第2主成分軸
問題は
どこにt軸を引くのか…
-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
-3 -2 -1 0 1 2 3
y
x
スコア
主成分分析 10
予備知識で述べたように、射影した際に分散が大きいほど情報が多いことがわかっている
線形結合 t の分散が最も大きくなればいよい
𝑡 = 𝑥1 𝑝1 + 𝑥2 𝑝2
元のデータは以下の式で表せることもわかっている
つまり!
主成分分析 11
平均
𝑥1 =
1
𝑛
𝑖=1
𝑛
𝑥1𝑖 、𝑥2 =
1
𝑛
𝑖=1
𝑛
𝑥2𝑖
分散
𝑠11 =
1
𝑛
𝑖=1
𝑛
(𝑥1𝑖 − 𝑥1)2
、𝑠22 =
1
𝑛
𝑖=1
𝑛
(𝑥2𝑖 − 𝑥2)2
共分散
𝑠12 = 𝑠21 =
1
𝑛
𝑖=1
𝑛
(𝑥1𝑖 − 𝑥1)(𝑥2𝑖 − 𝑥2)
使用する数式は以下の通りです(n個のデータ数)
主成分分析 12
第1主成分𝑡1 における分散V は
𝑉 =
1
𝑛
𝑖=1
𝑛
(𝑡1𝑖 − 𝑡1)2
=
1
𝑛
𝑖=1
𝑛
{ 𝑥1𝑖 𝑝1 + 𝑥2𝑖 𝑝2 − 𝑥1 𝑝1 + 𝑥2 𝑝2 }2
=
1
𝑛
𝑖=1
𝑛
{𝑎1
2(𝑥1𝑖 − 𝑥1)2 + 2𝑎1 𝑎2 𝑥1𝑖 − 𝑥1 𝑥2𝑖 − 𝑥2 + 𝑎2
2(𝑥2𝑖 − 𝑥2)2}
= 𝑎1
2 𝑠11 + 2𝑎1 𝑎2 𝑠12 + 𝑎2
2 𝑠22
よって、この V を最大にする𝑝1, 𝑝2を求める
主成分分析 13
ここで、
𝑝1
2
+ 𝑝2
2
= 1
とし、Lagrangeの未定常数法によって解くと
𝐹 𝑝1, 𝑝2, 𝜆 = 𝑝1
2 𝑠11 + 2𝑝1 𝑝2 𝑠12 + 𝑝2
2 𝑠22 − 𝜆(𝑝1
2 + 𝑝2
2 − 1)
を最大化する制約条件なしの最大化問題に帰着する
𝐹 を 𝑝1, 𝑝2, 𝜆 でそれぞれ偏微分し
𝜕𝐹
𝜕𝑝1
= 2𝑝1 𝑠11 + 2𝑝2 𝑠12 − 2𝑝1 𝜆 = 0
𝜕𝐹
𝜕𝑝2
= 2𝑝2 𝑠22 + 2𝑝1 𝑠12 − 2𝑝2 𝜆 = 0
𝜕𝐹
𝜕𝜆
= −𝜆 𝑝1
2
+ 𝑝2
2
− 1 = 0
𝑠11 𝑠12
𝑠12 𝑠22
𝑝1
𝑝2
= 𝜆(
𝑝1
𝑝2
)
固有値問題
が導かれる
主成分分析 14
固有値問題とは、固有値と固有ベクトルを得る問題のこと
行列A の固有方程式
det 𝐴 − 𝜆𝐸 = 0
を未知数λ の方程式として解いて、
固有値λ を得る
各々の固有値を連立方程式
𝐴 − 𝜆𝐸 𝑥 = 0
に代入して、対応する固有値ベクトル 𝑥 を求める
ちなみに
主成分分析 15
固有値を得るには
𝑠11 − 𝜆1 𝑠12 𝑠13 𝑠14
𝑠21
𝑠31
𝑠41
𝑠22 − 𝜆2
𝑠32
𝑠42
𝑠23
𝑠33 − 𝜆3
𝑠43
𝑠24
𝑠34
𝑠44 − 𝜆4
= 0
固有ベクトルは
𝑠11 − 𝜆1 𝑠12 𝑠13 𝑠14
𝑠21
𝑠31
𝑠41
𝑠22 − 𝜆2
𝑠32
𝑠42
𝑠23
𝑠33 − 𝜆3
𝑠43
𝑠24
𝑠34
𝑠44 − 𝜆4
(
𝑥1
𝑥2
𝑥3
𝑥4
) = 0
主成分分析 16
toy dataで実験
右図のようなプロットがあった場合
主成分分析 17
toy dataで実験
右図のようなプロットがあった場合
赤線みたいな軸が引けて
主成分分析 18
toy dataで実験
右図のようなプロットがあった場合
赤線みたいな軸が引けて
最終的には赤軸がx, y軸みたいになればいい
主成分分析 19
toy dataで実験
主成分分析を行ったところ
予想通りの軸が出来ましたね

More Related Content

Similar to 主成分分析

東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
hirokazutanaka
 
Prml1.2.4
Prml1.2.4Prml1.2.4
Prml1.2.4
Tomoyuki Hioki
 
Time series analysis with python chapter2-1
Time series analysis with python  chapter2-1Time series analysis with python  chapter2-1
Time series analysis with python chapter2-1
ShoKumada
 
An introduction to statistical learning 4 logistic regression manu
An introduction to statistical learning 4 logistic regression manuAn introduction to statistical learning 4 logistic regression manu
An introduction to statistical learning 4 logistic regression manu
Hideyuki Takahashi
 
人生を豊かにする線形代数学
人生を豊かにする線形代数学人生を豊かにする線形代数学
人生を豊かにする線形代数学
Fumiya Watanabe
 
prml_titech_9.0-9.2
prml_titech_9.0-9.2prml_titech_9.0-9.2
prml_titech_9.0-9.2
Taikai Takeda
 
データ解析6 重回帰分析
データ解析6 重回帰分析データ解析6 重回帰分析
データ解析6 重回帰分析
Hirotaka Hachiya
 
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
Zansa
 
Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2
KazuhiroSato8
 
第8回スキル養成講座講義資料.pdf
第8回スキル養成講座講義資料.pdf第8回スキル養成講座講義資料.pdf
第8回スキル養成講座講義資料.pdf
keiodig
 
これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法
kenyanonaka
 
PRML 上 1.2.4 ~ 1.2.6
PRML 上 1.2.4 ~ 1.2.6PRML 上 1.2.4 ~ 1.2.6
PRML 上 1.2.4 ~ 1.2.6
禎晃 山崎
 
PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7
sleepy_yoshi
 
双対性
双対性双対性
双対性
Yoichi Iwata
 
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
hirokazutanaka
 
データサイエンス概論第一=4-2 確率と確率分布
データサイエンス概論第一=4-2 確率と確率分布データサイエンス概論第一=4-2 確率と確率分布
データサイエンス概論第一=4-2 確率と確率分布
Seiichi Uchida
 
Time series analysis with python 1 3
Time series analysis with python  1 3Time series analysis with python  1 3
Time series analysis with python 1 3
ShoKumada
 
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
ryosuke-kojima
 
ユニバーサルなベイズ測度について
ユニバーサルなベイズ測度についてユニバーサルなベイズ測度について
ユニバーサルなベイズ測度について
Joe Suzuki
 
ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習
ssuserf4860b
 

Similar to 主成分分析 (20)

東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
東京都市大学 データ解析入門 10 ニューラルネットワークと深層学習 1
 
Prml1.2.4
Prml1.2.4Prml1.2.4
Prml1.2.4
 
Time series analysis with python chapter2-1
Time series analysis with python  chapter2-1Time series analysis with python  chapter2-1
Time series analysis with python chapter2-1
 
An introduction to statistical learning 4 logistic regression manu
An introduction to statistical learning 4 logistic regression manuAn introduction to statistical learning 4 logistic regression manu
An introduction to statistical learning 4 logistic regression manu
 
人生を豊かにする線形代数学
人生を豊かにする線形代数学人生を豊かにする線形代数学
人生を豊かにする線形代数学
 
prml_titech_9.0-9.2
prml_titech_9.0-9.2prml_titech_9.0-9.2
prml_titech_9.0-9.2
 
データ解析6 重回帰分析
データ解析6 重回帰分析データ解析6 重回帰分析
データ解析6 重回帰分析
 
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ【Zansa】第12回勉強会 -PRMLからベイズの世界へ
【Zansa】第12回勉強会 -PRMLからベイズの世界へ
 
Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2Casual learning machine learning with_excel_no2
Casual learning machine learning with_excel_no2
 
第8回スキル養成講座講義資料.pdf
第8回スキル養成講座講義資料.pdf第8回スキル養成講座講義資料.pdf
第8回スキル養成講座講義資料.pdf
 
これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法これならわかる最適化数学8章_動的計画法
これならわかる最適化数学8章_動的計画法
 
PRML 上 1.2.4 ~ 1.2.6
PRML 上 1.2.4 ~ 1.2.6PRML 上 1.2.4 ~ 1.2.6
PRML 上 1.2.4 ~ 1.2.6
 
PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7PRML復々習レーン#2 2.3.6 - 2.3.7
PRML復々習レーン#2 2.3.6 - 2.3.7
 
双対性
双対性双対性
双対性
 
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
東京都市大学 データ解析入門 6 回帰分析とモデル選択 1
 
データサイエンス概論第一=4-2 確率と確率分布
データサイエンス概論第一=4-2 確率と確率分布データサイエンス概論第一=4-2 確率と確率分布
データサイエンス概論第一=4-2 確率と確率分布
 
Time series analysis with python 1 3
Time series analysis with python  1 3Time series analysis with python  1 3
Time series analysis with python 1 3
 
グラフニューラルネットワーク入門
グラフニューラルネットワーク入門グラフニューラルネットワーク入門
グラフニューラルネットワーク入門
 
ユニバーサルなベイズ測度について
ユニバーサルなベイズ測度についてユニバーサルなベイズ測度について
ユニバーサルなベイズ測度について
 
ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習ラビットチャレンジレポート 機械学習
ラビットチャレンジレポート 機械学習
 

主成分分析