- 含义:找一个系数矩阵A以及一个字典矩阵B,使得B*A尽可能还原X,且A尽可能稀疏, 则A就是X的稀疏表示(将一个大矩阵变成两个小矩阵,达到压缩)(稀疏矩阵可以看做是特征表示)
- 应用:广泛应用于图像处理,模式识别和机器视觉
- 目的:从已有的字典中选择具有代表性的原子来表示输入图像,字典通常会是一个过完备的,所以编码后得到的向量通常只有少数几个元素是为零的,其他的都为0,所以向量称为稀疏编码。
- 稀疏编码学习:
- 目标:从给定的一组输入数据向量中学习一组基字典(每个数据向量都有稀疏线性权值与基的组合形式来表达)
- 学习字典的目标函数:通常不含有约束的优化问题更容易求解,所以将式子引入拉格朗日乘子:
(x_i为第i个样本,B为字典矩阵,α为xi的稀疏表示,λ为大于0参数)
-
第一项的目标是字典矩阵与稀疏表示的线性组合尽可能还原样本;
-
第二项的目标是让表示尽可能稀疏;
-
使用L1范式的原因是L1范式正则化更容易获得稀疏解
(图的引用在图中有水印)
-
左图L1正则化:L1有角点,所以很可能交汇点是其中一个角点(与一个坐标轴相交,对应坐标值为0,所以可以使变得稀疏)。
-
右图L2正则化:L2没有角点,交汇点不太可能在任何一个轴上
-
总结:L1正则化交点在轴上,所得的解一般只是在某个轴上有实数,另外的轴为0,从而得到稀疏解
-
- 字典学习求解策略:对字典B和样本稀疏表示A交替迭代优化
- 先初始化字典B
- 固定字典B对A进行优化
- 固定A对字典B进行优化
- 重复2,3,求得最终的A和B
-
- 无监督学习:
- 非概率模型:稀疏编码,自编码器,其他(如k-means)
- 概率(生成)模型:
- 可解释模型:
- nade:用于重建序列中的缺失值,通过读取前后部分来重建
- pixelrnn:使用LSTM来学习图像的分布(一次读取图像的一行,并使用一维卷积层对其进行处理,将激活值馈送到后续层中预测该行的像素,运行很慢)
- 不可解释模型(non-tractable models)
- boltzmann machines(玻尔兹曼机)(理解可参考逐步理解深度信念网络_Wsyoneself的博客-CSDN博客)
- 变分自动编码器(VAE)
- 生成对抗网络
- 可解释模型:
- 参考:稀疏表示学习_老司机的诗和远方的博客-CSDN博客
稀疏表示--学习笔记
于 2022-08-01 10:12:38 首次发布