http://blog.sina.com.cn/s/blog_49a1f42e0100fvdu.html
我们先考察一种线性变化,例如$x,y$坐标系的椭圆方程可以写为:
如果有,那么$b$就是$A$的一个特征向量,$m$就是对应的一个特征值。
一个矩阵的特征向量可以有很多个。特征值可以用特征方程求出,特征向量可以有特征值对应的方程组通解求出,反过来也一样。
例如,设$A$为$3$阶实对称矩阵,
因为$a_1=(a,-a,1)^T$是$Ax=0$的解,说明$a_1=(a,-a,1)^T$是$A$的属于$0$的特征向量,
还是太抽象了,具体的说,求特征向量的关系,就是把矩阵$A$所代表的空间,进行正交分解,
使得$A$的向量集合可以表示为每个向量$a$在各个特征向量上面的投影长度。
例如$A$是$mn$的矩阵,$n>m$,那么特征向量就是$m$个(因为秩最大是$m$),
$n$个行向量在每个特征向量$E$上面有投影,其特征值$v$就是权重。
那么每个行向量现在就可以写为$V_n=(E_1v_1n,E_2v_2n...E_mv_mn)$,
矩阵变成了方阵。如果矩阵的秩更小,矩阵的存储还可以压缩。
再: 由于这些投影的大小代表了$A$在特征空间各个分量的投影,那么我们可以使用最小二乘法,
求出投影能量最大的那些分量,而把剩下的分量去掉,这样最大限度地保存了矩阵代表的信息,
同时可以大大降低矩阵需要存储的维度,简称PCA方法。
举个例子,对于$x,y$平面上的一个点
对于实际应用的矩阵算法中,经常需要求矩阵的逆:当矩阵不是方阵的时候,无解,
这是需要用到奇异值分解的办法,也就是$A=PSQ$,$P$和$Q$是互逆的矩阵,而$S$是一个方阵,
然后就可以求出伪逆的值。同时,$A=PSQ$可以用来降低$A$的存储维度,只要$P$是一个是瘦长形矩阵,
特征向量有什么具体的物理意义?
例如一个驻波通过一条绳子,
绳子上面的每个点组成一个无穷维的向量,这个向量的特征向量就是特征函数
再如,从太空中某个角度看地球自转,虽然每个景物的坐标在不断的变换, 但是这种变换关于地球的自传轴有对称性,也就是关于此轴的平移和拉伸的坐标变换不敏感。 所以地球自转轴,是地球自转这种空间变换的一个特征向量。
Google的PageRank,就是对www链接关系的修正邻接矩阵的,主要特征向量的投影分量,
给出了页面平分。有什么特性呢?
什么是特征矩阵和特征值?
我们用整体论来考虑,假设
线性代数的研究,是把向量和矩阵作为一个整体,从部分的性质出发,
推到出整体的性质,再由整体的性质得到各种应用和物理上的概念。
当矩阵$A$是一个符号的时候,它的性质会和实数$a$有很多相似的地方。
科学的定理看起来总是递归着的。再举一个例子,高数的基本概念有微分,积分,倒数,
那么我立刻可以想到中值定理就应该有3个,形式上分别是微分,积分和倒数。
线性变换的缺点:线性变换PCA可以用来处理图像。如2维的人像识别:
-
我们把图像A看成矩阵,进一步看成线性变换矩阵, 把这个训练图像的特征矩阵求出来(假设取了n个能量最大的特征向量)。 用A乘以这个n个特征向量,得到一个n维矢量a,也就是A在特征空间的投影。
-
今后在识别的时候同一类的图像(例如,来自同一个人的面部照片), 认为是A的线性相关图像,它乘以这个特征向量,得到n个数字组成的一个矢量b, 也就是B在特征空间的投影。那么a和b之间的距离就是我们判断B是不是A的准则。 不过,PCA有天生的缺点,就是线性矢量的相关性考察有"平移无关性"优点的同时, 也完全忽略了,2维图形中,矢量分量之间的顺序是有意义的,顺序不同可以代表完全不同的信息。 还有,就是图像B必须是A的某种伸缩(由特征向量空间决定的), 才能被很好的投影到A的特征向量空间里面,如果B包含了A中的某种旋转因素, 那么PCA可以彻底失效。所以实际应用中PCA的方法做图像识别,识别率并不高, 它要求图像有某种严格的方向对齐和归一化。 所以PCA一般不用来做直接的特征提取而是用来做特征矩阵的降维。当然, 降维的结果用于分类并不理想,我们可以进一步做最小二承法拉开类间距离的Fisher变换。 但是Fisher变换会引入新的弱点,那就是对于训练类别的数据变得更敏感了, 分类效果上升的代价是通用性下降,当类型数量急剧膨胀的时候, 分类效果的函数仍然是直线下降的----但是还是比直接PCA的分类效果好得多。 PCA"主观"的认为,一个类型的第
$N+1$ 个矩阵可以由之前已知的$[1,N]$ 个矩阵通过拉成向量来线性表出。 显然这只是一个美好的主观愿望,因为即使新的输入矩阵是原有矩阵作了一些行列的初等变换如交换等, 这种拉直以后的线性表出也可能根本就不存在(2维的PCA同样无法克服这个客观不存在的设定), 于是,当应用到实际的时候,只能试图做优化没,用最小二乘距离来判定, "认为"那个矩阵就是属于某个分类。由于PCA训练的特征矩阵是一个类别一个矩阵, 这些矩阵构成的子空间之间又无法保证正交,于是投影的结果也不具有根本意义上的分类特性。 这个算法是个实用的算法,但是理论上根本就是无解。
K-L变换是PCA的一个应用形式。假设图像类型C有N个图像,那么把每个图像拉直成一个向量,
N个图像的向量组成一个矩阵,求矩阵的特征向量(列向量)。
那么用原来的N个图像乘以这些列向量求出平均值,就是我们的特征图像。
可以看到特征图像和原图像有相似的地方,但是去掉了和拉伸,平移相关的一些形变信息。
在得到了鲁棒性的同时,牺牲了很多精确性。所以它比较适合特定范围图像的Verification工作,
也就是判断图像P是不是属于类型C。对比一下神经网络:说白了把函数
什么是"谱"(Spectrum)? 我们知道音乐是一个动态的过程,但是乐谱却是在纸上的,
静态的存在。对于数学分析工具,研究时变函数的工具,可以研究傅立叶变换对应的频率谱;
对于概率问题,虽然每次投色子的结果不一样,但是可以求出概率分布的功率谱密度。
数学作为一种形而上学工具,研究的重点,就是这个变化世界当中那些不变的规律。
所谓的特征矩阵,就是原矩阵如何与一个x维的数量矩阵相似。
在图像处理的问题域中,把图像看成矩阵本身, 那么图像的分类问题就是同类矩阵被认为有相同或者代数近似的"不变量"。显然, "同类"是一个主观假设划定的类,而不是通过计算来"确定"的类。这导致了一个问题, 所谓的不同类型,其意义是对于人的主观理解能力而言,是先验的,不是通过计算得到的后验, 它本身不代表任何数理逻辑上的可判定信息。如果以矩阵的特征向量或者特征值矩阵作为分类的信息, 没有任何证据能够避免不同的"类"的矩阵能够有更加近似的特征值。所谓的矩阵分解方法, 类内最小距离方法(Fisher),都有一个令人不愉快地前提,那就是本身就要保证类内的矩阵, 其欧式距离足够小----这个欧式距离的大小往往又和人的几何拓扑直观不符)。
由于矩阵本身不具有预定义的拓扑学信息,那么同类图像间欧式距离增加的时候, 无法做到良好的分类。同时,图像的类要分的越多,那么这种子空间之间的交叠现象就越严重, 即使再去从每个类别的子空间中去寻找线性不变的子空间或者因子, 也无法消除这种交叠性----Fisher算法试图绕过去, 但是却付出了严重依赖初始数据的代价和失去通用性的代价。 PCA算法试图在统计的意义上得到最好的分类,但是当类型数目增加的时候, 以前的参数就作废了,根本无法得到有用的计算流程。
由于子空间之间的重叠无法解决,于是分类性便持续下降。原因是什么? 就是因为分类本身不是根据线性变换本身的代数特性去得到的, 而是先验的非线性"智慧"的人的判断。于是,由于二元运算为离散集合作分类, 必须在线性空间的正交划分中进行,导致了逻辑上的不可调和的悖论。 非线性的判定是连续的,几何拓扑的,无穷维德,不可分离变量的,根本就不可建模, 于是也就是一个不可判定的问题。
那么不用高等代数的思想,实用信号处理的办法提取局部的特征做比较可以达到分类么?
这个仍然没有回答"先验"分类的问题,仍然是在一个糟糕的前提下试图寻找勉强能用的途径。
如何知道一个矩阵的局部其实对应于另一个矩阵上不同位置的局部呢?
这仍然只是一个主观的,直觉主义的判定! 计算机不过是纸和笔的变形,
它不能理解意义---即使1+1=2这样的运算结果,它本身也不能判定对错。
如果它咨询别的计算机来判断对错呢----别的计算机又如何能自我证明对错?
根本不能,必须等到一个主体的"人"来观察这个结果,这个结果才会变得有意义。
于是就像薛定谔的那只猫一样,她正懒洋洋的晒着太阳冲我微笑呢。
形而上学的理论再精妙,也没有超出经验主义的牢笼。
于是,我便不再需要算法,不再需要哲学。