稀疏编码(sparse coding)和低秩矩阵(low rank)的区别

       上两个小结介绍了稀疏编码的生命科学解释,也给出一些稀疏编码模型的原型(比如LASSO),稀疏编码之前的探讨文章就不说了,今天开始进入机器学习领域的稀疏表达。稀疏编码进入机器学习领域后,出现了很多应用,比如计算视觉领域的图像去噪,去模糊,物体检测,目标识别和互联网领域的推荐系统(Collaborative filtering)用到的low rank,其实sparsecoding和low rank有点区别,前者是稀疏系数,后者是稀疏基。就统称他们为稀疏表达吧。接下来简单的阐述下sparse coding和low rank的区别:

      Sparsecoding就是围绕着开展工作,比如找到稀疏字典D和稀疏系数 alpha,如果X是人脸图像,训练的目标就是为了找到合适的字典基和一些系数的线性组合可以重建人脸X,假设训练样本有K类(即为K个人),每类有N个样本,那么D可表达为:

,其中下标i表示第i类。

不过还是要强调一下d表示一张图像向量,假设维度为m。这样某个样本可以表示为:

,其中

,这下终于和sparse coding扯上关系咯,alpha是稀疏的,好多0啊。如果假设图像还有一些噪声,那么再扩展一下,可以继续表示为:

到此位置机器学习的sparse coding模型基本就搭建好了,接着要做的就是对它求解,不得不说的是公式中都是未知数,看上去解很多,不过还有一个约束没用上,就是让alpha和e的非零个数尽可能的少,稀疏嘛,因此最终建立模型(公式一)所示:

(公式一)

对其优化求解就行了,常用的方法有coordinate descent和Orthogonal Matching Pursuit(OMP)方法,求解的alpha和e是稀疏的,但是求解方法主要看优化,各种优化算法层出不穷,这个话题就打住吧。

现在来看下low rank,先来看一个经典问题,如(图一)所示:

(图一)

(图一)是stanford人工智能教授andrew ng的课件截图,说的是四个人对不同电影打分,其中Alice和Bob偏向于喜欢看言情的浪漫电影,而Carol和Dave偏向于动作片和武侠片,可以推测出Alice和Bob是女的吧,而Carol和Dave则可能是男的。矩阵Y中也可以大概的看出这种规律,矩阵前两行数据(男同学打的分)很相似,可以把他们看成同一个轴,而下面两行看成另外一个轴,这两个轴构成了打分空间,因此轴就是基,类似于稀疏编码的字典。但是基是稀疏的,而系数不是稀疏的。其实现实中有很多类似的数据,比如你把对齐的同一个人脸数据按照这样的矩阵排放,同样是类似规律。同学们可能在找系数在哪,系数如(图二)所示:

(图二)

优化求解模型如(公式二)所示:

(公式二)

没错,和上面一样,又要求X又要求theta,求解方法仍然可以采用 coordinate descent,但也有其他求解方法,其他方法主要从凸优化的角度来考虑,数学界的新星陶哲轩证明了在RIP条件下L0范数(就是计算元素数的)优化和 L1范数优化具有相同的解,然后L1范数是个凸优化问题,顺便松弛到trace norm来求解,背后有很多数学证明,今天就说到这了,优化求解方法以后慢慢来触及吧。

对于稀疏表示的应用可以看看一篇名为“稀疏表达”的上中下博文

转载请注明链接:http://blog.csdn.net/cuoqu/article/details/9040731

Sparsity稀疏编码(三)的更多相关文章

  1. Sparsity稀疏编码(二)

           为了更进一步的清晰理解大脑皮层对信号编码的工作机制(策略),需要把他们转成数学语言,因为数学语言作为一种严谨的语言,可以利用它推导出期望和要寻找的程式.本节就使用概率推理(bayes v ...

  2. Sparsity稀疏编码(一)

    稀疏编码来源于神经科学,计算机科学和机器学习领域一般一开始就从稀疏编码算法讲起,上来就是找基向量(超完备基),但是我觉得其源头也比较有意思,知道根基的情况下,拓展其应用也比较有底气.哲学.神经科学.计 ...

  3. 稀疏编码概率解释(基于1996年Olshausen与Field的理论 )

    一.Sparse Coding稀疏编码 稀疏编码算法是一种无监督学习方法,它用来寻找一组“超完备”基向量来更高效地表示样本数据.稀疏编码算法的目的就是找到一组基向量 ,使得我们能将输入向量 表示为这些 ...

  4. UFLDL深度学习笔记 (七)拓扑稀疏编码与矩阵化

    UFLDL深度学习笔记 (七)拓扑稀疏编码与矩阵化 主要思路 前面几篇所讲的都是围绕神经网络展开的,一个标志就是激活函数非线性:在前人的研究中,也存在线性激活函数的稀疏编码,该方法试图直接学习数据的特 ...

  5. 稀疏编码(Sparse Coding)的前世今生(一) 转自http://blog.csdn.net/marvin521/article/details/8980853

    稀疏编码来源于神经科学,计算机科学和机器学习领域一般一开始就从稀疏编码算法讲起,上来就是找基向量(超完备基),但是我觉得其源头也比较有意思,知道根基的情况下,拓展其应用也比较有底气.哲学.神经科学.计 ...

  6. 稀疏编码(Sparse Coding)的前世今生(二)

    为了更进一步的清晰理解大脑皮层对信号编码的工作机制(策略),须要把他们转成数学语言,由于数学语言作为一种严谨的语言,能够利用它推导出期望和要寻找的程式.本节就使用概率推理(bayes views)的方 ...

  7. 转载 deep learning:八(SparseCoding稀疏编码)

    转载 http://blog.sina.com.cn/s/blog_4a1853330102v0mr.html Sparse coding: 本节将简单介绍下sparse coding(稀疏编码),因 ...

  8. 稀疏编码直方图----一种超越HOG的轮廓特征

    该论文是一篇来自CMU 的CVPR2013文章,提出了一种基于稀疏编码的轮廓特征,简称HSC(Histogram of Sparse Code),并在目标检测中全面超越了HOG(Histogram o ...

  9. 基于字典SR各种方法【稀疏编码多种方法】

    基于字典的图像超分辨率实现 - CSDN博客 http://blog.csdn.net/u011630458/article/details/65635155 简介 这段时间在看基于字典的单帧图像超分 ...

随机推荐

  1. consul读取key value

    1.nuget 搜索consul安装 2. using (var client = new ConsulClient()) { var kvPair = client.KV.Get(key).Resu ...

  2. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'UserDao' def

    org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'UserDao' def ...

  3. 关于直播学习笔记-004-nginx-rtmp、srs、vlc、obs

    1.采集端:OBS RTMP推流地址:rtmp://192.168.198.21:1935/live 流密钥:livestream(任意-但播放地址与此一致) 2.播放端:nginx-rtmp-win ...

  4. osgEarth的agglite插件使用例子feature_rasterize.earth

    <!-- osgEarth Sample Demonstrates use of the "agglite" feature rasterization driver. -- ...

  5. 打造不死的asp木马

    作者:黑色记忆本文已发表于<黑客X档案>杂志第十期 版权归<黑客X档案>所有 转载请注明版权 想不到,前几天我才发现,我千辛万苦收集的asp木马,居然没有几个不被Kill的.常 ...

  6. 如何提高AJAX客户端响应速度

    AJAX的出现极大的改变了Web应用客户端的操作模式,它使的用户可以在全心工作时不必频繁的忍受那令人厌恶的页面刷新.理论上AJAX技术在很大的程度上可以减少用户操作的等待时间,同时节约网络上的数据流量 ...

  7. poj_3185 反转问题

    题目大意 有20个碗排成一排,有些碗口朝上,有些碗口朝下.每次可以反转其中的一个碗,但是在反转该碗时,该碗左右两边的碗也跟着被反转(如果该碗为边界上的碗,则只有一侧的碗被反转).求最少需要反转几次,可 ...

  8. ubuntu14.04 LTS Visual Studio Code 编辑器推荐

    除了ubuntu geany (茶壶图标) 这个一直爱好的编辑器,发现一个新的编辑器“Visual Studio Code”,也是很好用,记录下 https://code.visualstudio.c ...

  9. 【BZOJ3262】陌上花开 cdq分治

    [BZOJ3262]陌上花开 Description 有n朵花,每朵花有三个属性:花形(s).颜色(c).气味(m),又三个整数表示.现要对每朵花评级,一朵花的级别是它拥有的美丽能超过的花的数量.定义 ...

  10. 解决:Bitmap too large to be uploaded into a texture exception

    前几天拿锤子手机做测试,启动页面的闪屏直接黑屏.. 所以看下日志,百度一下 找到解决方案,特此记录. 简单说就是硬件加速的时候,对图片的大小有限制.不同设备可能有不同的最大值.这个问题悲催的地方是,程 ...