1.稀疏向量与稀疏表示:
一个含有大多数零元素的向量/矩阵叫做稀疏向量/稀疏矩阵。
在传统的思路下,信号向量最多可以分解为m个正交基向量,这些正交基的集合称为完备正交基,分解的表示如下:,G是列向量的集合,c是在此基下的坐标。一定是非稀疏的。
若将信号向量分解为n个m维的向量的线性组合,则n(>m)个向量不可能是正交基的集合。为了和基区别,这些列向量所形成的集合被称为:字典(codebook,dictionary),基底 或原子(basis or atom)。
对于字典(矩阵),通常作以下假设:
(1)A的行数m小于列数n并且A行满秩(Rank(A)=m)
(1)A的列向量具有单位Euclidea范数
因为n>m,即未知数的个数是大于方程组的个数,这种分解式对应的是欠定方程,是有无穷多组解的。
那么如何解这种方程求得稀疏表示的解的?答案就是需要加限制,即加先验条件。此时,这个问题就成了优化问题。
2.稀疏表示求解:
(1)传统方法(求最小L2范数解):(A是已知的字典,y是观测的信号)。这种方法优点是:解唯一,物理解释是最小的能量,但是解通常取的是非零值,不符合问题本身的稀疏表示要求。
(2)现代方法(求最小L0范数解):(A是已知的字典,y是观测的信号,L0范数表示向量x中非零元素的个数)。直接求解这个优化问题,必须筛选出向量x中所有可能的非零元素,因此是NP难的,搜索空间太过庞大。
由优化的理论可以得到:L1范数是L0拟范数的凸松弛。(理论的推导没有搞懂,待学习完凸优化再回顾),因此将原优化问题进行凸松弛得到L1范数最小化问题:。
(3)字典学习(在中,A与x都是未知的),在给定了观测样本的数据集后,要同时求解出字典矩阵A和每一个数据在新基底下的表示x)
3.稀疏表示的应用:
(1)人脸识别的稀疏表示:假设共有c类目标,将每一类目标的脸部训练图像都拉成列向量,进行归一化,储存在自己所属分类的矩阵中。第类目标的脸部在不同照度下拍摄的张训练图像表示成维的矩阵,其中m表示是原训练图像拉成向量后的维数。在给定足够丰富的训练集合后,第i个实验对象在另一照度下的新图像即可近似表示成已知训练图像的一线性组合,。如果我们要推断新的样本属于c个类中哪一个类,就可以将c类目标的训练样本构造的字典合成一个训练矩阵,表示所有c类目标的训练图像的总个数。于是,待识别图像可以表示为:,其中,是维零向量。解优化问题:即可。
(2)SRC(Sparse Representation classification),KSRC(Kernel Sparse Representation classification)
正如应用(1)所叙述的那样,当我们有了c类目标的数据后,拉成列向量,然后组成字典矩阵。对于新的样本进行识别就相当于求解的一个优化问题。将这个问题扩大化,基于稀疏表示的思想的分类就是SRC。
将(1)中公式稍微进行改变:
有N个m维训练样本:,c是类别数,yi是对应的类标记。X是根据类标记重组以后的矩阵,满足:,当新的样本可以被已知的同类样本线性表示时,有,我们通过解优化问题,就可以求得所属的类别。但是这个方法有一个重要的限制就是:目标样本可以被已知样本“线性表示”,
仔细想了想这句话,我的理解(可能有些问题,待查阅相关文献后纠正)就是:
这里头“线性表示”并不正确,在人脸识别中,将图片列向量化后,待分类样本能被已有的样本进行线性表示只是偶然而已,基于稀疏表示的分类能解决的问题应该是:将样本不同的特征上投影在不同的维数上,没有重叠。例子如图:
第一类在左上角以o表示,黄色是第一类在x,y轴上的投影。第二类在左下角以x表示,紫色是它们在x,y轴上的投影,样本矩阵是:
如果新的样本,有,对于已经有的样本X:
在分量上(图中是y轴):第1类和第2类很好区分,因为是的第一行的线性组合,所以对于新的样本,在稀疏的条件下,优化算法会尽可能选择与“靠近”的样本去表示。
在分量上:因为第1类和第2类在这个分类上并不明显,所以这个分量在分类上并没有什么贡献。
所以,基于稀疏思想的分类,在具有相同方向的不同类数据上,适用度要差一些,所以就有了下面的改进:KSRC。
//KSRC未看完,看完再补充
(3)稀疏用于聚类:
现在,将(2)中过程反过来:我们有很多的数据,其中,有些样本可以通过其他样本进行表示,即它们之间是“相似”的,接着,我们的目的就是找到有哪一些数据之间是“相似”的,而这个问题就是聚类问题。此时这个聚类问题非常相似于之前提过的字典学习:在只有样本数据的条件下,我们要学出数据之间的“字典”,即是否其中一个样本数据可以由其余的某些样本数据稀疏表示出来,如果可以的话,它们就是一类的.更形式化的表示如下:基于稀疏表示的聚类:
其中,,每一个样本是有m个特征的列向量。
就是的n个样本之间的相似度矩阵。
以上仅仅是低维的情况,当低维无法表出时,和(2)中后半部分同理,要使用核方法映射到高维:
记,
,推导时用了的结论。
(4)图像复原/signal recovery:
//待图像处理知识复习到时补全
本文参考:
(1)http://www.cnblogs.com/Rosanna/p/3372153.html
(2) 《矩阵分析与应用》 张贤达
(3) 《机器学习》周志华
(3) 数字图像处理ppt - 赵熙乐