码迷,mamicode.com
首页 > 其他好文 > 详细

Part I/ Chapter 2 线性代数基础2 实例:PCA

时间:2019-10-02 14:34:38      阅读:115      评论:0      收藏:0      [点我收藏+]

标签:机器学习   ||   chap   输出   简单   编码   基础   component   原来   

主成分分析(principal components analysis,PCA)

用基础的线性代数知识能够推导出主成分分析(principal components analysis,PCA)这一简单的机器学习算法。

1、出发点:在n维实线性空间中我们有m个点的集合{x(1),x(2),...,x(m)},对这些点进行有损压缩,希望在压缩的过程中损失的精度尽可能少。一种编码的方式就是用低维来表示高维,就是说对于这m个点中的每一个点x(i),都对应着一个l维的编码向量c(i),如果c(i)的维度低于x(i),那么我们就实现了用更少的内存来存储原有数据。

2、我们的目的变为:①寻找一个编码函数,使得f(x)=c ②寻找一个解码函数,使得x≈g(f(x))。

3、为了简化解码器,我们用矩阵乘法的方式将编码c映射回原来的n维空间中,即g(c)=Dc,其中D就是定义解码的n×l维矩阵,为了简化编码问题,我们限制D中所有列向量具有单位范数且互相正交。严格意义上讲,除非l=n,D是一个非正交矩阵。

4、编码:输入x→最优编码c*:最小化输入x与重构输出g(c*)之间的距离,即c*=argmin||x-g(c)||2,通过线性代数的运算以及向量微积分,可以得到c=DTx,因此,获得编码函数f(x)=DTx。

5、解码:r(x)=g(f(x))=DDTx,重构时挑选编码矩阵D,由于使用相同的一个矩阵D对所有点进行解码,因此需要最小化所有维数和所有点上的误差矩阵的Frobenius范数。可以从l=1开始求解,经过运算得到,l=1时的最优的d是XTX的最大特征值对应的特征向量,这样仅仅得到了第一个主成分,更一般地,如果想要得到主成分的基时,矩阵D由前l个最大的特征值对应的特征向量组成。

Part I/ Chapter 2 线性代数基础2 实例:PCA

标签:机器学习   ||   chap   输出   简单   编码   基础   component   原来   

原文地址:https://www.cnblogs.com/rainton-z/p/11615600.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!