Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
主成分分析(PCA)の仕組み
Search
K_DM
January 15, 2022
Education
0
160
主成分分析(PCA)の仕組み
K_DM
January 15, 2022
Tweet
Share
More Decks by K_DM
See All by K_DM
X-meansの仕組み
k_study
0
1.4k
勾配ブースティングの仕組み
k_study
0
63
k-meansクラスタリングの仕組み
k_study
0
190
決定木を使った回帰の仕組み
k_study
0
190
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
70
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
520
線形回帰② 正則化と過学習
k_study
0
410
外れ値とHuber(フーバー)損失
k_study
0
890
木構造1~決定木の仕組み(分類)
k_study
0
120
Other Decks in Education
See All in Education
CSS3 and Responsive Web Design - Lecture 5 - Web Technologies (1019888BNR)
signer
PRO
1
2.6k
Web 2.0 Patterns and Technologies - Lecture 8 - Web Technologies (1019888BNR)
signer
PRO
0
2.5k
HyRead2425
cbtlibrary
0
110
Поступай в ТОГУ 2025
pnuslide
0
2.9k
JavaScript - Lecture 6 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
ルクソールとツタンカーメン
masakamayama
1
1.1k
Sanapilvet opetuksessa
matleenalaakso
0
31k
認知情報科学科_キャリアデザイン_大学院の紹介
yuyakurodou
0
150
Image compression
hachama
0
310
新人研修の課題と未来を考える
natsukokanda1225
0
840
【お子さま向け】Amazon ECS サービスディスカバリーって知ってる?【楽しい読み聞かせ】
tubone24
7
790
自己紹介 / who-am-i
yasulab
PRO
2
4.4k
Featured
See All Featured
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
It's Worth the Effort
3n
183
28k
Gamification - CAS2011
davidbonilla
80
5.1k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
Raft: Consensus for Rubyists
vanstee
137
6.7k
Faster Mobile Websites
deanohume
305
30k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
3
360
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Site-Speed That Sticks
csswizardry
3
280
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Practical Orchestrator
shlominoach
186
10k
GraphQLとの向き合い方2022年版
quramy
44
13k
Transcript
次元削減1 次元削減1 主成分分析 主成分分析 作成者:K (リンク)
『次元削減』で説明する項目 PCA・ICA・CCA など
今回の内容 •「教師なし学習」のおさらい •「次元削減」とは •主成分分析 •アルゴリズム •実験 •まとめ PCA(主成分分析)について説明します
教師なし学習 教師データ無しでデータの中の構造を見つける データ は与えられている が、正解データ は無い =教師なし学習 X y ڭࢣͳֶ͠शʢ͖ΐ͏͠ͳ͕͘͠͠Ύ͏,
ӳ: Unsupervised Learningʣͱɺػցֶशͷख๏ͷҰ ͭͰ͋Δɻʮग़ྗ͖͢ͷʯ͕͋Β͔͡Ίܾ·͍ͬͯͳ͍ͱ͍͏Ͱڭࢣ͋Γֶशͱେ͖͘ҟ ͳΔɻσʔλͷഎޙʹଘࡏ͢Δຊ࣭తͳߏΛநग़͢ΔͨΊʹ༻͍ΒΕΔɻ ग़యɿhttps://ja.wikipedia.org/wiki/ڭࢣͳֶ͠श
次元削減とは たくさんある特徴をより少ない数値で表現する 例:ボディマス指数 BMI = 体重[kg] / (身長[m]) × (身長[m])
→体重と身長というデータをBMIと呼ばれる一つの数値で表している
次元削減とは たくさんある特徴をより少ない数値で表現する 例:ボディマス指数 BMI = 体重[kg] / (身長[m]) × (身長[m])
→体重と身長というデータをBMIと呼ばれる一つの数値で表している 手元にあるデータに対して、いい感じに次元削減して データを表現する方法はないだろうか? ㅟ ㅟ ㅟ ㅟ
PCA(主成分分析) データのばらつきを表現できる軸を見つける手法 ओੳʢ͠Ύ͍ͤͿΜͿΜ͖ͤɺӳ: principal component analysis; PCAʣɺ૬ؔͷ͋Δଟ ͷม͔Β૬ؔͷͳ͍গͰશମͷΒ͖ͭΛ࠷Α͘ද͢ओͱݺΕΔมΛ߹͢Δଟม ྔղੳͷҰख๏ɻ ग़యɿhttps://ja.wikipedia.org/wiki/ओੳ
✕✕ ✕ ✕ ✕ ✕ ✕ 第一主成分
PCA(主成分分析) 二次元の座標のデータを一次元で表現してみる
PCA(主成分分析) 二次元の座標のデータを一次元で表現してみる ✕✕ ✕ ✕ ✕ ✕ ✕ ✕ ✕
✕ ✕ ✕ ✕ ✕
PCA(主成分分析) 二次元の座標のデータを一次元で表現してみる ✕✕ ✕ ✕ ✕ ✕ ✕ ✕ ✕
✕ ✕ ✕ ✕ ✕ 分散が少ない = 情報の損失が多い 分散が大きい = 情報が残っている データを射影した時に分散が最大になるような軸を探せばいい
実際に分散が最大になるような軸を見つけてみる 3つのデータをまとめた行列 X = x1,1 x1,2 x2,1 x2,2 x3,1 x3,2
実際に分散が最大になるような軸を見つけてみる ✕ ✕ ✕ ✕ ✕ ✕ e e x1
x2 x3 x3 ·e 分散が最大 → が最大 → が最大 → が最大 → が最大となる を見つければ良い (x1 ·e)2 + (x2 ·e)2 + (x3 ·e)2 (Xe)T(Xe) eT(XTX)e/3 eTΣe e
実際に分散が最大になるような軸を見つけてみる ✕ ✕ ✕ e x3 ·e 分散が最大 → が最大
→ が最大 → が最大 → が最大となる を見つければ良い (x1 ·e)2 + (x2 ·e)2 + (x3 ·e)2 (Xe)T(Xe) eT(XTX)/3 eTΣe e の直線であり という制約をつける ↓ 「制約がある中で分散の式を最大にする」 という問題になる。 ↓ ラグランジュの未定乗数法で解ける! e = αx + βy α2 + β2 = 1
ラグランジュの未定乗数法を適用する L(ex , ey , λ) = eTΣe − λ(α2
+ β2 − 1) ∂L(ex , ey , λ) ∂α = (1 0) Σ ( α β) + (α β) ΣT ( 1 0) − 2λα = 0 ∂L(ex , ey , λ) ∂β = (0 1) Σ ( α β) + (α β) ΣT ( 0 1) − 2λβ = 0 Σ ( α β) = λ ( α β) となるような が求まれば、 分散を最大にする軸 が求まる! α, β e
ラグランジュの未定乗数法を適用する Σ ( α β) = λ ( α β)
となるような が求まれば、 分散を最大にする軸 が求まる! α, β e 分散が最大になるような軸を見つけたいならば、 の最大固有値の固有ベクトルを求めればよい Σ ※ は分散共分散行列と呼ばれる行列 Σ = (XTX)/3 分散が最大 → が最大 → が最大 → が最大 → が最大となる を見つければ良い (x1 ·e)2 + (x2 ·e)2 + (x3 ·e)2 (Xe)T(Xe) eT(XTX)/3 eTΣe e 上の式を に代入すると となることがわかる eTΣe eTΣe = λ
PCA(主成分分析) データのばらつきを表現できる軸を見つける手法 ✕✕ ✕ ✕ ✕ ✕ ✕ 第一主成分 •第一主成分を求めるには、分散共分散行列の最大固有値の固有ベクトルを求める
•データ前処理がこの計算に影響を与えるかどうか意識する必要がある
実験!
3次元のデータを二次元にして 散布図で可視化します https://k-datamining.github.io/dm-book/data-analysis/materials/dimensionality_reduction/PCA.html
まとめ 主成分分析について説明しました •主成分分析(PCA)とは、次元削減をする教師なし学習手法のひとつ •主に高次元のデータを可視化する時に使うことができる •分散が最大になる方向が最も情報の損失が少ない方向 •分散共分散行列の固有ベクトルを求めることで、主成分方向が求まる •PCAで次元削減して可視化をする時は、データ前処理がPCAの計算にどのような影響 を与えるか考える
参考文献 •鈴木大慈, データ解析 第七回「主成分分析」http://ibis.t.u-tokyo.ac.jp/suzuki/ lecture/2015/dataanalysis/L7.pdf •sklearn.decomposition.PCA — scikit-learn 1.0.2 documentation