通过稀疏表示,输入对象就表示成了基原子与系数的线性组合,并且这些组合系数整体上是稀疏的,即只有若干个是非零值。例如,可以通过某种方式找到一组超完备字典中的基向量,对输入对象
进行线性表示,如下式所示:
…(1)
式中由线性组合系数构成的向量就是编码值。由式(1)可知,用基向量来稀疏地表示输入对象,不可避免会产生重构误差,所以只能近似逼近。为了减小重构误差,研究人员提出了许多新的稀疏编码模型。
稀疏表示是将原始信号表示为字典元素的一个线性组合,是一种多向量拟合的方法,也就是对于一个特征向量会使用多个基向量拟合,既要求拟合精度也要求系数的稀疏性。假设图像特征集合为,特征维度是
维,
;
是一个字典,字典规模为
,也就是
个基向量,
。在稀疏表示中,为确保基向量的超完备性,一般
。其公式定义为:
…(2)
式中是对
的编码集;
为稀疏惩罚项,对
进行取
范数操作,表示
中非零元素的个数。由于式(2)是一个非凸优化问题,并且求解是非确定性多项式困难问题,所以,人们提出对编码系数施以
范数的正则约束,利用最小绝对收缩和选择算子(LASSO),促使求解出来的编码系数尽可能稀疏,使得式(2)优化问题转化为下面的优化问题:
…(3)
科学家证明了在限制等距特性的条件下,范数优化问题与
范数优化问题具有相同的解。
数据的稀疏编码就是把数据表示为一组基向量的线性组合,而且需要的基向量的个数很少。稀疏编码的目标就是为了通过基函数来构建图像的生成空间,并且其相关系数要求尽量独立,这样才能得到信号的内部构成结构。针对范数问题,人们提出了一种贪婪算法,即匹配追踪算法;针对
范数优化问题,人们提出了一种凸松弛算法,即基追踪算法。随着对这两个问题形式的不断研究,形成了一系列有意义的贪婪算法和凸松弛算法。代表性的贪婪算法有正交匹配追踪、弱匹配追踪和阈值算法等;代表性的松弛算法有基追踪和迭代收缩算法等。