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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
K_DM
January 15, 2022
Education
220
0
Share
主成分分析(PCA)の仕組み
K_DM
January 15, 2022
More Decks by K_DM
See All by K_DM
X-meansの仕組み
k_study
0
2.1k
勾配ブースティングの仕組み
k_study
0
130
k-meansクラスタリングの仕組み
k_study
0
280
決定木を使った回帰の仕組み
k_study
0
240
アンサンブル学習① ランダムフォレストの仕組み
k_study
0
120
決定木に含まれるパラメタによる事前剪定と事後剪定
k_study
0
730
線形回帰② 正則化と過学習
k_study
0
590
外れ値とHuber(フーバー)損失
k_study
0
1.2k
木構造1~決定木の仕組み(分類)
k_study
0
190
Other Decks in Education
See All in Education
2026年度春学期 統計学 第2回 統計資料の収集と読み方 (2026. 4. 16)
akiraasano
PRO
0
150
Gitがない時代 インターネットがない時代の 開発話
sapi_kawahara
0
140
応募課題(’25広島)
forget1900
0
1.3k
Tangible, Embedded and Embodied Interaction - Lecture 7 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
2.2k
勝手にCULTIBASE で広げよう、探究の輪! - CULTIVAL 2026
hiroc_sk
1
200
「機械学習と因果推論」入門 ③ 漸近効率な推定量と二重機械学習
masakat0
0
630
事業紹介資料(トレーナー養成講座)
kentaro1981
0
370
吉祥寺.pmは1つじゃない — 複数イベント並走運営の12年 —
magnolia
0
830
Case Studies and Future Research - Lecture 12 - Next Generation User Interfaces (4018166FNR)
signer
PRO
0
120
教育現場から見た Ruby on Rails
yasslab
PRO
0
150
LinkedIn
matleenalaakso
0
4.2k
【セーフィー】テクニカルライティング&コミュニケーション実践講座(26新卒エンジニア向け研修資料)
ymzaki_m4
0
150
Featured
See All Featured
Done Done
chrislema
186
16k
Darren the Foodie - Storyboard
khoart
PRO
3
3.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
JAMstack: Web Apps at Ludicrous Speed - All Things Open 2022
reverentgeek
1
450
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
180
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
170
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
How Software Deployment tools have changed in the past 20 years
geshan
0
34k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
How to train your dragon (web standard)
notwaldorf
97
6.6k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.4k
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