主成分分析|机器学习推导系列(五)

简介: 主成分分析|机器学习推导系列(五)

一、简介


  1. 为什么需要降维


数据的维度过高容易造成维数灾难(Curse of Dimensionality)。.


维数灾难:通常是指在涉及到向量的计算的问题中,随着维数的增加,计算量呈指数倍增长的一种现象。


这里可以举两个几何的例子来看一下维数过高的影响:


$PVCB%`$GP(J(D)%8N9IE]9.png

                      example1


上图表示一个多维空间(以二维为例),则其中图形的体积有如下关系:


(N0X]}YI_]6{2BJV8$S$D[D.png


上式也就表明当数据的维度过高时,数据主要存在于空间的边边角角的地方,这也就造成了数据的稀疏性。


QRISQJ)BEHR1$CL4OM(X`7E.png

                                                  example2


上图也表示一个多维空间(以二维为例),则其中图形的体积有如下关系:


DFE_{{]E`0{J$)J3P5Z%G}R.png


可以看到当数据的维度过高时,数据主要存在于球壳上,类似于人的大脑皮层。


  1. 降维的方法


降维可以作为一种防止过拟合的方式,其具体的方法包含下列几种:


2214(2YTG4DEPE_}_K1BJEY.png


特征选择是一种直接剔除主观认为不重要的特征的过程。


本文接下来的部分主要介绍主成分分析(PCA)。


二、样本均值与样本方差


  1. 概述


假设有以下数据:


PJ($O)FN)VW{WVH(VIJ16~N.png


  1. 样本均值与样本方差


以下定义了数据的样本均值与样本方差:


{58[X{R9J]SCMWA~@1LEZ63.png


接下来需要对样本均值与样本方差进行一些变换来获得其另一种表示形式:


TP2A9T@LG$8@BV4NV)S6}BB.png


中心矩阵OIW[JG5[J3TQ@``SE_YG2GJ.png具备以下性质:

Z3$LWSZ$JZW(8BIRTEQXQE5.png


因此最终可以得到


X(5K)`540275OFWX6KHDJ1R.png


三、主成分分析的思想


总结起来就是:


一个中心:PCA是对原始特征空间的重构,将原来的线性相关的向量转换成线性无关的向量;

两个基本点:最大投影方差和最小重构距离,这是本质相同的两种方法,在接下来的部分将具体介绍。


PCA首先要将数据中心化(即减去均值)然后投影到一个新的方向上,这个新的方向即为重构的特征空间的坐标轴,同时也要保证投影以后得到的数据的方差最大,即最大投影方差,这样也保证了数据的重构距离最小。


四、最大投影方差

%152)E{(GTKQS}D)Y@O]TQE.png

)G0D(RX4ZHMGFGW2(C)YVSH.png


因此该问题就转换为以下最优化问题:


QDLMQDHC)6195QR2@@75V)T.png


然后使用拉格朗日乘子法进行求解:

WB_2K}[@N5Y(]P[JD)HGNSF.png

8QVP`Z(G7{X8[}[SE0ZEDUF.png

[S{]`GU0[5$5@ZFBQ1@KX]6.png


特征向量表示投影变换的方向,特征值表示投影变换的强度。通过降维,我们希望减少冗余信息,提高识别的精度,或者希望通过降维算法来寻找数据内部的本质结构特征。找最大的特征值是因为 ,在降维之后要最大化保留数据的内在信息,并期望在所投影的维度上的离散最大。


五、最小重构距离


最小重构距离是另一种求解的方法,其本质上和最大投影方差是相同的。

VB5QLZU]EOWMHST@W4}_`GK.png

ML]`C$[AQUI2_{4~N(MTQFS.png


因此重构距离也就是指QJ$[T$5Q{~Q34IPU4GHOUVM.png,本着最小化重构距离的思想我们可以设置新的损失函数如下:


B{QM~QA}GOZ8{0BRTOO6_{L.png


然后就可以转化为以下最优化问题:


UC6[)J1PE3MG9K0{O9M]4(I.png


SA6DN{KI~SX6PDCG{`(T~29.png

六、SVD角度看PCA和PCoA

协方差矩阵GDO4AUS9`F6WPWB$M$NNRFM.png的特征分解:

Y4@8_]HGW5]K}Z3B6JU7{BM.png


QN9$0PJ49WV4200~5(WFLML.png

YD7IDUGD3LY4}DO8CBK5AGC.png


接下里可以做以下变换:


6}BGT8@UC0LPSZ7[3W25@$K.png


接下来我们构造矩阵3%_Y_]]NLLZ)H0%UI]SJ]]6.png

)KN~{SK]`SK73EL6%QT{JW9.png

H843@[1PRN@@6K9G2K3XQKC.png


①将DW5[U6RG3N73X7AZ]IZ9C1C.png进行特征分解然后得到投影的方向,也就是主成分,然后矩阵SDZN}D@J$__%`4Q1X33G~PN.png即为重构坐标系的坐标矩阵;


②将IM3T6_UJT520Y3YX@N5~WH3.png进行特征分解可以直接获得坐标矩阵TGKO0INB2L~6HM35D`LF@7W.png

(注意应保证DW5[U6RG3N73X7AZ]IZ9C1C.pngIM3T6_UJT520Y3YX@N5~WH3.png特征分解得到的特征向量是单位向量。)

关于为什么将IM3T6_UJT520Y3YX@N5~WH3.png进行特征分解可以直接获得坐标矩阵,现做以下解释:

_%R)MC~]S~D`FYLK4ZURE3Y.png

使用5K[~5IPJ]L9LGZJU`7C[J1G.png进行特征分解的方法叫做主坐标分析(Principal Co-ordinates Analysis,PCoA)。


这两种⽅法都可以得到主成分,但是由于⽅差矩阵是F18%ONX1BC06E)$9PT`7OFQ.png,所以对样本量较少的时候可以采⽤ PCoA的⽅法。


七、概率PCA(p-PCA)


  1. 概述


假设有以下数据:


B2Z(IHYMI6MUJ8Q1L@I]V`K.png

5`6``K%6BZ}O345YECJEEZB.png

JLYW%AS_@(4RZS}{1%QT9XC.png


OA7L0BJ8]9{QB5D~9W9_7IN.png

WA9F}SF5J(9ICVF`4)1[SW0.png的生成过程如下:


@@`8RXFB)CH00R97[O`PH3D.png

                                                   生成过程


XF}91%K(IUH~7YR}XV4TYKD.png

  1. 推断(inference)


求解F2688[M~FN)3XLEMG5%`G}9.png的过程如下:

6_UE_H[R`CI7~(U6`]SDM)S.png


  • JO6~QJ6QY94{SD(OK$T7GD7.png

_Z6C(87)F8U[P9C@8U_]Z9G.png


  • @SFHB{G2KB_{BZR`MWGYBOJ.png

YE@PTK8JCSEV%~H%PH)D3O0.png


  • F2688[M~FN)3XLEMG5%`G}9.png


该问题和高斯分布|机器学习推导系列(二)中第六部分的问题是类似的。


AZ6PO]AOSA}TM0O{8{2XWMH.png


利用高斯分布|机器学习推导系列(二)中第五部分的公式可以求解T{ZC%_11Z]B`{9KZ~9%NZ2U.png

51Z9UEQI{17}W{G[B]}_D6A.png


  1. 学习(learning)


使用EM算法求解,这里不做展示。


参考资料


ref:降维时为什么找最大的特征值对应的特征向量


ref:《模式识别与机器学习》

相关文章
|
6天前
|
机器学习/深度学习 资源调度
【机器学习】归一化目的分析
【1月更文挑战第27天】【机器学习】归一化目的分析
|
6天前
|
机器学习/深度学习
【机器学习】误差分析
【1月更文挑战第23天】【机器学习】误差分析
|
6天前
|
机器学习/深度学习 人工智能 自然语言处理
大数据分析的技术和方法:从深度学习到机器学习
大数据时代的到来,让数据分析成为了企业和组织中不可或缺的一环。如何高效地处理庞大的数据集并且从中发现潜在的价值是每个数据分析师都需要掌握的技能。本文将介绍大数据分析的技术和方法,包括深度学习、机器学习、数据挖掘等方面的应用,以及如何通过这些技术和方法来解决实际问题。
65 2
|
6天前
|
机器学习/深度学习 算法 数据可视化
JAMA | 机器学习中的可解释性:SHAP分析图像复刻与解读
JAMA | 机器学习中的可解释性:SHAP分析图像复刻与解读
347 1
|
6天前
|
机器学习/深度学习 数据可视化 数据挖掘
【机器学习实训项目】黑色星期五画像分析
【机器学习实训项目】黑色星期五画像分析
67 0
|
6天前
|
机器学习/深度学习 数据可视化 Python
机器学习之利用线性回归预测波士顿房价和可视化分析影响房价因素实战(python实现 附源码 超详细)
机器学习之利用线性回归预测波士顿房价和可视化分析影响房价因素实战(python实现 附源码 超详细)
130 0
|
6天前
|
机器学习/深度学习 算法 数据可视化
机器学习-生存分析:如何基于随机生存森林训练乳腺癌风险评估模型?
机器学习-生存分析:如何基于随机生存森林训练乳腺癌风险评估模型?
40 1
|
6天前
|
机器学习/深度学习 算法 数据可视化
机器学习——主成分分析(PCA)
机器学习——主成分分析(PCA)
28 0
|
6天前
|
机器学习/深度学习 数据采集 自然语言处理
编写员工聊天监控软件的机器学习模块:Scikit-learn在行为分析中的应用
随着企业对员工行为监控的需求增加,开发一种能够自动分析员工聊天内容并检测异常行为的软件变得愈发重要。本文介绍了如何使用机器学习模块Scikit-learn来构建这样一个模块,并将其嵌入到员工聊天监控软件中。
177 3
|
6天前
|
机器学习/深度学习 自然语言处理 JavaScript
GEE机器学习——最大熵分类器案例分析(JavaScript和python代码)
GEE机器学习——最大熵分类器案例分析(JavaScript和python代码)
56 0

热门文章

最新文章