标签:机器学习 || 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