《西瓜书》笔记11:特征选择与稀疏表示(三)

来源:互联网 发布:工商银行软件官方下载 编辑:程序博客网 时间:2024/05/22 11:41

5. 稀疏表示与字典学习

将数据集D表示为矩阵,每一行对应一个样本,每列对应于一种特征。

特征选择所考虑的问题是特征具有稀疏性:即矩阵中的许多列与当前学习无关,通过特征选择去掉这些列,难度有所降低,计算开销减小,模型的可解释性提高。

模型的输入因素减少了,模型建立的输入输出关系会更清晰。

现在看另一种“稀疏性”:D对应的矩阵存在很多零元素,杂乱分布,而非整行整列的形式。比如文档分类中,每行是一个文档样本,每列代表一个字,字在文档中出现的频率作为特征取值。《康熙字典》有47035个汉字,则矩阵有4万多列。而文档中很多字不会出现,导致每一行有大量的零元素。

当样本具有这样的稀疏表达形式时,对任务有若干好处

  • 线性SVM之所以能在文本数据上很好性能,恰是由于文本数据具有高度稀疏性,大多数问题变得线性可分。
  • 稀疏样本并不会造成存储巨大负担,又很高效的存储方法。

那么若给定D是稠密的,能否将其转化为稀疏表示的形式?享有稀疏性带来的好处呢?此处稀疏指的是恰当稀疏,而非过度稀疏。

一般任务中没有字典(码书),需要学习这样一个字典。为普通稠密表达的样本找到合适的字典,将样本转化为合适的稀疏表达形式,从而使得学习任务简化,模型复杂度得以降低,称为字典学习,亦称稀疏编码

字典学习更侧重于学得字典的过程;稀疏编码更侧重于对样本进行稀疏表达的过程。两者通常同一个优化求解中完成,可不做区分。

稀疏表达的意义在于降维。引自知乎回答。

给定数据集有m个元素。字典学习最简单的形式为:

这里写图片描述

上式中:
这里写图片描述

稀疏表达:将原始信号表达为字典元素的一个线性组合,如 x = D*a中,我们用x表示原始信号(列向量),D为我们得到的字典(dictionary),a即为在字典D上原始信号x的表达。通常我们希望a是稀疏的,即其中只有较少的非零项,这样的一个突出优点是计算速度更快,因为matlab只对非零元素进行操作。引自CSDN博客讲解。

求解上述优化问题,最终求得字典B和样本的稀疏表示。用户可设置k的大小来控制字典规模,从而影响稀疏程度。

其余具体待续。


20170817续:
稀疏表示即便对于线性回归这样简单的模型,获得具有最优稀疏性的解也不容易。稀疏性问题本质上对应了L0范数的优化。NP难问题。LASSO通过L1范数近似L0范数,求求解稀疏解的重要技术。《西瓜书》P67。

6. 压缩感知

实际任务中,常希望根据部分信息恢复全部信息。数据通信中将模拟信号转化为数字信号,根据奈奎斯特采样定理,令采样频率达到模拟信号最高频率的2倍,则采样后的数字信号就保留了模拟信号的全部信息。换言之,由此获得的数字信号可准确重构原来的模拟信号。

传输时会对数字信号进行压缩,损失部分信息。接收方是否可以根据信号精确的重构出原来的信号呢?

压缩感知,(Compressed sensing)提供了解决思路。

与特征选择,稀疏表示不同,压缩感知关注:如何利用信号本身具有的稀疏性,从部分观测样本恢复原信号。通常分为两部分:

  • 感知测量:关注如何对原始信号进行处理,以获得稀疏样本表示
  • 重构恢复:如何基于稀疏性,从少量观测中恢复原信号(精髓

所以压缩感知,涉及的就是上面的问题。

其余具体待续。

阅读全文
0 0
原创粉丝点击