sparse coding稀疏表达入门

最近在看sparse and redundant representations这本书,进度比较慢,不过力争看过的都懂,不把时间浪费掉。才看完了不到3页吧,书上基本给出了稀疏表达的概念以及传统的求法。我也用书中的例子来引入吧。

1:矩阵A(n*m),其中n远远小于m,一副图片经过缩小或者模糊处理导致该图片所占用的空间变小了,此时用向量b来表示,A表示图片所经过的处理,X代表原图片,那么这个就可以表示成为:

Ax=b

2:因为A是欠定的,一般情况下x的解有很多种,而我们要的是那种最稀疏的x。个人理解这个就是稀疏表达吧。

3:接下来文章引入了如何求x的方法,假定j(x)是求x最稀疏的函数,并且前提条件是Ax=b。用数学表达也就是

Min j(x) s.t. Ax=b

4:为了求出这个j(x),一般情况下这个j(x)对应的是x的范数||x||右下角2的平方最小值,为了求出||x||右下角2的平方最小值,我们引入了拉格朗日乘数。关于拉格朗日乘数,我在下面补充,省的再去找资料看了。

拉格朗日乘数:它是专门为某变量在其他约束条件下求极值的问题解决方案,当m个变量在K个约束条件下求极值的话,它把变成k+m个数来求变量的极值,给约束条件加一个乘子即可。也就是我们上面的列出来的。

为了求出x的最小值,对x求偏导(当导数为0的地方时极值点)最终得到结果如下:

那么X的最优化的解就是(是让上式为0得到的):

 

 

把该值代入最初的Ax=b中可以求得拉姆达的值,然后就得到X最优化的解为:

补充:个人对稀疏表达的理解是,如果输入为一个很复杂的A,为了得到稀疏的表达b,那么经过一系列的操作x得到b,我觉得目的是为了得到稀疏表达的b,但是书中给出的例子是这样,也可能我对信号处理这些地方从没有过接触,导致的不太理解。。目前看了3页书,实在觉得太难看下去了,看到一个点都要去复习几天的书,才能够连贯起来。。

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值