啊作为一个没学过线代的人……当初写eigenface的时候看PCA看了非常之久…… 这里尽量简单的描述这个概念 啊全是随手画的图
需要知道的: 矩阵乘法的本质是坐标变换。 主要通过二维到一维的方式来通俗的描述一下PCA。定义什么可以参考维基之类的。 https://zh.wikipedia.org/wiki/主成分分析
看到下面这幅图上有一堆的二维点。 那我们要找一个方式把他转换到一维的。 当然如果考虑非线性就很复杂了……这里就考虑线性的。
提供AB两种降维方式。实心的点是他们降到一维之后的坐标。
或许这个图看起来可以说是A这种降维【我无数次打出来姜维小哥哥】比较合理,直观上来讲
每个点的失真比较小(就空心点到实心点的距离比较小)最后结果比较分散,也就是说在A这条直线上点的差异性得以保留,而在B这条直线上提取出来的更多是它们的共性。主成分分析中,这种直观的判断方式,被确定为投影之后方差最大 (后来看资料发现两种定义都有) 而经过求解,这个向量正好对应协方差矩阵最大特征值对应的特征向量。(证明放在最后)
那么来一个直观一点的方式……【这里的一些符号定义和下面证明里一样】 如果求出的两个特征向量分别为【markdown公式啥时候那么丑了……预览不是这样的不是!】
a1=⎡⎣2√22√2⎤⎦ a 1 = [ 2 2 2 2 ]
a2=⎡⎣2√2−2√2⎤⎦ a 2 = [ 2 2 − 2 2 ]
那么降到特征空间之后得到的值为
⎡⎣2√22√22√2−2√2⎤⎦[12]=⎡⎣32√2−2√2⎤⎦ [ 2 2 2 2 2 2 − 2 2 ] [ 1 2 ] = [ 3 2 2 − 2 2 ]如果不做什么的话是可以正常还原的……
⎡⎣2√22√22√2−2√2⎤⎦⎡⎣32√2−2√2⎤⎦=[12] [ 2 2 2 2 2 2 − 2 2 ] [ 3 2 2 − 2 2 ] = [ 1 2 ] 但是需要降维也就是认为 ⎡⎣32√2−2√2⎤⎦ [ 3 2 2 − 2 2 ] 可以省去特征根比较小的点。这些点我们认为体现了更多的“共性”而不是“特性”。
这样还原结果如下【0表示这个维度被省去】
⎡⎣2√22√22√2−2√2⎤⎦[32√20]=[3232] [ 2 2 2 2 2 2 − 2 2 ] [ 3 2 2 0 ] = [ 3 2 3 2 ]可以看到有一定的失真……但是也可以认为还保留着基本的一些特征【废话】
A 不会怎么样……就,你重构出来可能还是一个脸……失真比较大 就相当于,你提取的特征都是于脸有关的,虽然输入的不是脸但是他依然会提取其中代表人脸的特征……这样 失真差不多和上图那个Q点一样大(比划)因为A不是由他提取出的特征
https://zh.wikipedia.org/wiki/特征脸 可以参考一下这个……
直观点理解就是,比如在这个二维空间中只有一个点,那么肯定只需要一个特征向量就可以表示它。 如上图,不管P在什么位置上,肯定可以只用A一个特征向量来表示,它在B上的值肯定是0.因此,我们可以不关心B的这个向量,而只求出A这个向量。 然后这就涉及某些线代的运算了……
我觉得PCA只能保证提取的是一维向量特征的时候,结果是最好的……而不一定能保证提取k维特征的时候最好……主成分分析法的证明过程可以看出,他能保证对于取得的特征根最大的值,一定是方差最大的,而缺少对于提取k维特征是最好的定义。毕竟这样提取的结果也包括方差最小的(特征根最小)。
来自ZJU潘纲老师课件// 后来看到请勿上传外网还是算惹 这个markdown公式长这样毫无重新输一遍的热情……
然后这个链接会全一点 把两种定义都证了 http://www.cnblogs.com/pinard/p/6239403.html
