机器学习-主成分分析PCA降维
Posted 吾仄lo咚锵
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了机器学习-主成分分析PCA降维相关的知识,希望对你有一定的参考价值。
文章目录
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站。
简介
主成分分析(Principle Component Analysis,PCA)是常用的降维方法,用较少的互不相关的新变量来反映原变量所表示的大部分信息,有效解决维度灾难问题。
一种直观的解释是,主成分是对所有样本点的一种投影,且我们希望投影后可以尽可能的分开,即使得投影后样本点的方差最大化。不难理解,方差越大,越能反映数据特征。
上图摘自https://blog.csdn.net/qq_35164554/article/details/101058673
主成分分析包括如下几个步骤:
- 计算均值
- 计算协方差
- 计算协方差矩阵对应的特征值和特征向量
- 计算第n主成分及其贡献率
步骤
为方便说明,以如下数据集为例:
x1 | x2 |
---|---|
1 | 2 |
5 | 3 |
均值
求每个特征的均值:
x
1
‾
=
1
+
5
2
=
3
\\overlinex_1=\\frac1+52=3
x1=21+5=3
x 2 ‾ = 2 + 3 2 = 2.5 \\overlinex_2=\\frac2+32=2.5 x2=22+3=2.5
协方差矩阵
协方差是用来表示两个变量的相关性的,比如正相关(x增大则y增大)、负相关(x增大y减小)和不相关。更多细节安利这个b站讲解如何通俗地解释协方差。
减去均值:
x
−
x
‾
=
(
−
2
−
0.5
2
0.5
)
x-\\overlinex=\\beginpmatrix -2 & -0.5 \\\\ 2 & 0.5 \\endpmatrix
x−x=(−22−0.50.5)
计算协方差s:
s
=
1
n
−
1
(
x
−
x
‾
)
T
(
x
−
x
‾
)
=
1
2
−
1
(
−
2
−
0.5
2
0.5
)
(
−
2
−
0.5
2
0.5
)
=
(
8
2
2
0.5
)
s=\\frac1n-1(x-\\overlinex)^T(x-\\overlinex)\\\\=\\frac12-1\\beginpmatrix-2&-0.5\\\\2&0.5 \\endpmatrix\\beginpmatrix-2&-0.5\\\\2&0.5\\endpmatrix\\\\=\\beginpmatrix8&2\\\\2&0.5\\endpmatrix
s=n−11(x−x)T(x−x)=2−11(−22−0.50.5)(−22−0.50.5)=(8220.5)
特征值和特征向量
需要亿点点线性代数知识,计算特征值和特征向量。
求特征值
λ
\\lambda
λ:
令
∣
s
−
λ
E
∣
=
∣
8
−
λ
2
2
0.5
−
λ
∣
=
0
|s-\\lambda E|=\\beginvmatrix8-\\lambda&2\\\\2&0.5-\\lambda \\endvmatrix=0
∣s−λE∣=∣∣∣∣8−λ220.5−λ∣∣∣∣=0
(
8
−
λ
)
(
0.5
−
λ
)
−
4
=
0
(8-\\lambda)(0.5-\\lambda)-4=0
(8−λ)(0.5−λ)−4=0
得 λ 1 = 0 , λ 2 = 8.5 \\lambda_1=0,\\lambda_2=8.5 λ1=0,λ2=8.5。
将 λ 1 = 0 \\lambda_1=0 λ1=0带回 ∣ s − λ E ∣ = |s-\\lambda E|= ∣s−λE∣= ( 8 2 2 0.5 ) \\beginpmatrix8&2\\\\2&0.5\\endpmatrix (8220.5),正交单位化得特征向量 e 1 = ( 1 17 , − 4 17 ) T e_1=(\\frac1\\sqrt17,\\frac-4\\sqrt17)^T e1=(171,17−4)T。
将 λ 2 = 8.5 \\lambda_2=8.5 λ2=8.5带回 ∣ s − λ E ∣ = |s-\\lambda E|= ∣s−λE∣= ( − 0.5 2 2 − 8 ) \\beginpmatrix-0.5&2\\\\2&-8\\endpmatrix (−0.522−8),正交单位化得特征向量 e 2 = ( 4 17 , 1 17 ) T e_2=(\\frac4\\sqrt17,\\frac1\\sqrt17)^T e2=(174,171)T。
(
插播反爬信息)博主CSDN地址:https://wzlodq.blog.csdn.net/
第一主成分
将特征向量从大到小排序 ( λ 2 > λ 1 ) (\\lambda_2>\\lambda_1) (λ2>λ1),依次得到第N主成分。
如第一主成分为
Y
1
=
e
2
T
x
=
4
17
x
1
+
1
17
x
2
Y_1=e_2^Tx=\\frac4\\sqrt17x_1+\\frac1\\sqrt17x_2
Y1= 以上是关于机器学习-主成分分析PCA降维的主要内容,如果未能解决你的问题,请参考以下文章