Sparse Learning

article/2025/10/26 1:03:37

                                          Sparse Learning

 本文的内容主要来自余凯老师在CVPR2012上给的Tutorial。前面在总结ScSPM和LLC的时候,引用了很多Tutorial上的图片。其实这个Tutorial感觉写的挺好的,所以这次把它大致用自己的语言描述一下。不过稀疏编码是前两年比较火的东西,现在火的是deep learning了。

1、What is sparse coding?

       1988年,神经稀疏编码的概念由Mitchison提出,由牛津大学的Rolls等正式引用。灵长目动物颚叶视觉皮层和猫视觉皮层的电生理实验报告和一些相关模型的研究结果都说明了视觉皮层复杂刺激的表达是采用稀疏编码原则的。研究表明:初级视觉皮层V1区第四层有5000万个(相当于基函数),而负责视觉感知的视网膜和外侧膝状体的神经细胞只有100万个左右(理解为输出神经元)。说明稀疏编码是神经信息群体分布式表达的一种有效策略。1996年,加州大学伯克利分校的Olshausen等在Nature杂志发表论文指出:自然图像经过稀疏编码后得到的基函数类似V1区简单细胞感受野的反应特性(空间局部性、空间方向性、信息选择性)。

       典型的sparse coding的过程分为训练和测试。

       Training:给定一些训练样本(training samples)[ x1, x2, …, xm(in Rd)],学习一本字典的基(bases)[Φ1,Φ2……(also in Rd)]。可是用k-means等无监督的方法,也可以用优化的方法(这时training完了同时也得到了这些training samples的codes,这是一个LASSO和QP问题的循环迭代);

       Coding:用优化的方法求解测试样本的codes(此时字典已经学得)。经典的方法是求解LASSO:

                  (1)

        自我学习就是在Training的时候采用大量无标注的自然图像训练字典,然后对带标注的图像进行编码得到特征codes。

近十几年来,稀疏(sparsity)已经成为信号处理及其应用领域中处于第一位的概念之一。近来,研究人员又致力于过完备(overcomplete)信号表示的研究。这种表示不同于许多传统的表示。因为它能提供一个广阔范围的生成元素(atoms)。而冗余(redundant)信号表示的魅力正在于其能经济地(紧致)的表示一大类信号。对稀疏性的兴趣源自于新的抽样理论-压缩传感(compressed sensing)的发展,压缩传感是香农采样理论的一种替代,其利用信号本身是稀疏的这一先验,而香农理论是设计用于频率带宽有限的信号的。通过建立采样和稀疏的直接联系,压缩传感在大量的科学领域,如编码和信息论,信号和图像采集处理,医学成像,及地理和航天数据分析等都得到应用。压缩传感的另一贡献是许多传统的逆问题,如断层图像重建,可以看作压缩传感问题。这类病态(ill-posed)问题需要正则化。压缩传感对寻求系数性解的方法给出了强大的理论支持。

1、什么是稀疏性

设信号x是RN的有限维子空间向量,x=[x[1],x[2],…,x[N]], 如果x的绝大多数元素都为0,则x是严格稀疏的。

如果信号不稀疏,它却可能在某种变换域中稀疏。我们可以用T个基本波形(signal atoms)的线性组合来建模x,有

x= φa=sum(a[i]φ[i])

其中a[i]称为在字典φ中信号x的表示系数。

2、稀疏性的几个名词

1)原子(atom) 如前所述,原子是信号表示模板的元素。

2)字典(dictionary) 是许多原子的排序集合,可看作是一个NxT的矩阵,如果T>N, 则为过完备或冗余字典。

原子:字典的列向量。

完备字典与过完背字典:如果字典D中的原子恰能够张成n维的欧式空间,则字典D是完备的。如果m》n,字典D是冗余的,同时保证还能张成n维的欧式空间,则大字典D是过完备的。

coding的过程就变成了已知Yi和D,求Xi的过程了。显然这是一个非齐次方程组求解的 问题,方程组有解的条件是rank(D)≤M,其中取等号时方程组有唯一解。过完备的定义是M>>N,所以此时 rank(D)≤N<<M,此时方程组有无穷多解。(你可能会问,这和最小化平方误差为目标函数不一样啊!其实求个导,就变成这个方程组 了。)这就是过完备造成的问题了。怎么办呢?办法就是对Xi做约束------稀疏的约束,这样Xi就有唯一解了。这就是需要加约束的原因。更多见:https://blog.csdn.net/zhangzhengyuan123123/article/details/38446185

2、Connections to RBMs, autoencoders

      (1)式(经典的稀疏编码)有几个特点:

            ——系数a是稀疏的;

            ——a的维数一般比x的维数大;

            ——编码过程a=f(x)是一个非线性的关于x的隐函数(即我们没有f(x)的显示表达,因为求解LASSO没有解析解);

            ——重建过程x'=g(a)是一个线性的显示的关于a的函数(X’=ΣaiΦi)。

         而RBM和自编码的特点则是:

           ——有显示的f(x);

           ——不会必然得到稀疏的a,但是如果我们增加稀疏的约束(如稀疏自编码,稀疏RBM),通常能得到更好的效果(进一步说明sparse helps learning)。

         从广义上说,满足这么几个条件的编码方式a=f(x)都可以叫稀疏编码:

           1) a是稀疏的,且通常具有比x更高的维数;

           2) f(x)是一个非线性的映射;(jiang1st2010注:该条要求存疑,见下面解释。)

           3) 重建的过程x'=g(a),使得重建后的x'与x相似。

          因此,sparse RBM,sparse auto-encoder,甚至VQ都可以算是一种sparse coding。(jiang1st2010注:第二条要求称f(x)是一个非线性映射,然而SPM中用到的VQ是一个线性映射,原因可以参见这里和这里。余凯老师也是LLC论文的作者,似乎存在矛盾?不过这是个小问题了,没必要深究。)

 

3、Sparse activations vs. sparse models

         现在可以用a=f(x)表示稀疏编码的问题了。它可以分解成两种情况:

         1)sparse model:f(x)的参数是稀疏的

                  --例如:LASSO f(x)=<w,x>,其中w要求是稀疏的。(jiang1st2010注:这个例子中f(x)也是线性的!)

                  --这是一个特征选择的问题:所有的x都挑选相同的特征子集。

                  --hot topic.

         2)sparse activation:f(x)的输出是稀疏的

                  --就是说a是稀疏的。

                  --这是特征学习的问题:不同的x会激活不懂的特征子集。

                                           

 

4、Sparsity vs. locality

       其实这个问题在这里已经谈过了。简单的说就是sparsity不一定导致locality,而locality肯定是sparse的。sparse不比locality好,因为locality具有smooth的特性(即相邻的x编码后的f(x)也是相邻的),而仅仅sparse不能保证smooth。smooth的特性对classification会具有更好的效果,并且设计f(x)时,应尽量保证相似的x在它们的codes中有相似的非0的维度。

 

         Tutorial上展示了(1)中取不同的λ,字典中各项呈现的效果:

      

   

        作者想说明的问题是分类效果越好的情况下,basis会更清晰地表现出属于某几个特定的类。但是我没太看明白。

 

5、Hierarchical sparse coding

        这里图3曾说明了SIFT本身就是一个Coding+Pooling的过程,所以SPM是一个两层的Coding+Pooling。而Hierarchical sparse coding就是两层的coding都是sparse coding,如下图:

         整个HSC的第一层就从pixel层级开始(不需要手动设计SIFT特征了),经过两层SC后,形成codes。这个过程可以从无标注的数据中学习,就是self-taught learning。从pixel层级开始,这点和DNN啥的很像了。

          从结果来看,HSC的性能会比SIFT+SC稍微好些。

        

           Tutorial的最后列举了关于SC的其他主题,我也不懂,这里就不废话了。

 

【转载】:http://blog.csdn.net/jwh_bupt/article/details/9902949


http://chatgpt.dhexx.cn/article/wGMeXrfy.shtml

相关文章

理解sparse coding

稀疏编码系列&#xff1a; &#xff08;一&#xff09;----Spatial Pyramid 小结&#xff08;二&#xff09;----图像的稀疏表示——ScSPM和LLC的总结&#xff08;三&#xff09;----理解sparse coding&#xff08;四&#xff09;----稀疏模型与结构性稀疏模型 -------------…

干货!SparCL,将Sparsity用在连续学习任务,相同表现下训练效率提升23倍!

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 作者简介 王梓枫 美国东北大学博士生&#xff0c;主要研究方向持续学习&#xff08;Continual Learning&#xff09;。 个人主页&#xff1a;https://kingspencer.github.io/ 报告题目 SparCL: 边缘设备上的稀疏…

MORE CONVNETS IN THE 2020S: SCALING UP KER- NELS BEYOND 51 × 51 USING SPARSITY

论文链接: https://arxiv.org/pdf/2207.03620.pdf code: https://github.com/VITA-Group/SLaKlink MORE CONVNETS IN THE 2020S: SCALING UP KER- NELS BEYOND 51 51 USING SPARSITY 一、引言&#xff08;二&#xff09;、大内核注意力&#xff08;二&#xff09;、卷积中的大…

Self-supervised Learning for Label Sparsity in Computational Drug Repositioning

论文地址&#xff1a;Self-supervised Learning for Label Sparsity in Computational Drug Repositioning 1. Introduction 药物重定位旨在根据已知的药物-疾病关联性揭示上市药物的新用途。其背后的逻辑是&#xff1a;目前市场上的小分子药物具有多靶点特性&#xff0c;这意…

xgboost:分割Sparsity-aware Split Finding

Sparsity-aware Split Finding1 在许多现实问题中&#xff0c;输入 x x x是稀疏的是很常见的。造成稀疏性的可能原因有很多: 1)数据中存在缺失值&#xff1b; 2)统计中频繁出现零项&#xff1b; 3)特征工程的处理结果&#xff0c;如独热编码。 重要的是使算法意识到数据中…

Sparsity constraint稀疏约束详解

Sparsity constraint稀疏约束详解 引子&#xff1a; 线性模型是我们经常使用的一种模型&#xff0c;比如&#xff1a; 文本分类中&#xff0c;bag-of-words 有p 20 K 个特征&#xff0c; 共有 N 5K 个文本样例&#xff1b; 在图像去模糊化&#xff0c;图像分类中&#xff0c;…

[机器学习速成课程] 稀疏性正则化 (Regularization for Sparsity)-学习笔记

稀疏性和 L1 正则化 学习目标&#xff1a; 计算模型大小通过应用 L1 正则化来增加稀疏性&#xff0c;以减小模型大小 降低复杂性的一种方法是使用正则化函数&#xff0c;它会使权重正好为零。对于线性模型&#xff08;例如线性回归&#xff09;&#xff0c;权重为零就相当于完…

机器学习14:稀疏性-Sparsity

现实世界中&#xff0c;问题的特征的数量往往是很大的&#xff0c;而其中起决定性作用的往往是很小的一部分&#xff0c;稀疏规则化算子的引入会学习去掉这些没有信息的特征&#xff0c;也就是把这些特征对应的权重置为 0。 1.稀疏性正则化&#xff1a;L₁ 正则化 稀疏向量通常…

稀疏(sparsity)矩阵的行压缩存储

压缩矩阵行或列来存储矩阵的格式是很普遍的&#xff0c;它们不会存储不必要的元素&#xff08;即空值&#xff09;。但是它们也不是非常有效的&#xff0c;当在一个矩阵-向量积或预解决的每个简单标量中需要间接寻址。行压缩存储方式会把一个稀疏矩阵行的非零数值放在连续的存储…

redis删除锁

redis删除锁 参考&#xff1a;百度安全验证 前言 在分布式系统中&#xff0c;由于redis分布式锁相对于更简单和高效&#xff0c;成为了分布式锁的首先&#xff0c;被我们用到了很多实际业务场景当中。 但不是说用了redis分布式锁&#xff0c;就可以高枕无忧了&#xff0c;如…

Redis进阶: 锁的使用

Redis进阶: 锁的使用 1. 概念1. 原子性2. 事务 2. 使用Redis构建全局并发锁3. Redlock&#xff08;redis分布式锁&#xff09;总结 相关Blog 1. 概念 1. 原子性 原子性 原子性是数据库的事务中的特性。在数据库事务的情景下&#xff0c;原子性指的是&#xff1a;一个事务&…

redis锁的几种实现

1. redis加锁分类 redis能用的的加锁命令分表是INCR、SETNX、SET 2. 第一种锁命令INCR 这种加锁的思路是&#xff0c; key 不存在&#xff0c;那么 key 的值会先被初始化为 0 &#xff0c;然后再执行 INCR 操作进行加一。 然后其它用户在执行 INCR 操作进行加一时&#xff0…

java redis锁_Java中Redis锁的实现

由于具体业务场景的需求,需要保证数据在分布式环境下的正确更新,所以研究了一下Java中分布式锁的实现。 Java分布式锁的实现方式主要有以下三种: 数据库实现的乐观锁 Redis实现的分布式锁 Zookeeper实现的分布式锁 其中,较常用的是前两种方式,但是数据库实现方式需要较多的…

Redis的分布式锁详解

一、什么是分布式锁&#xff1a; 1、什么是分布式锁&#xff1a; 分布式锁&#xff0c;即分布式系统中的锁。在单体应用中我们通过锁解决的是控制共享资源访问的问题&#xff0c;而分布式锁&#xff0c;就是解决了分布式系统中控制共享资源访问的问题。与单体应用不同的是&…

redis锁

一、redis锁的实现 加锁命令&#xff1a; SETNX key value&#xff1a; 当键不存在时&#xff0c;对键进行设置操作并返回成功1&#xff0c;否则返回失败0。 Key是锁的唯一标识&#xff0c;一般按业务来决定命名&#xff1b; Value 往往用来比较加锁的是哪一个线程或者哪一个…

超图 hypergraph 二分图 Bipartite graph

超图是什么 超图超图的意义应用 二分图 超图 超图是什么&#xff1f; 超图的本质特征在于它的超边&#xff0c;它可以连接两个以上的结点(包括两个)。按这样的意义来说&#xff0c;我们所熟悉的普通图只是超图的一个特例而已&#xff0c;而超图则定义了一个更加宽泛的图。 超图…

BiNE: Bipartite Network Embedding 阅读笔记

论文传送门 作者 华东师范大学&#xff1a; 高明周傲英Leihui Chen 中国科学技术大学&#xff1a;何向南 摘要 传统的学习图数据的节点表示的方法大都聚焦于一般的同构网络&#xff0c;忽略了二部图的特殊性质。因此这些方法对于二部图嵌入来说可能是次优的。 本文提出了B…

C#,图论与图算法,二分图(Bipartite Graph)最佳二分匹配(Maximum Bipartite Matching)算法与源程序

二部图中的匹配是一组边的选择方式&#xff0c;使两条边不共享一个端点。最大匹配是最大大小&#xff08;最大边数&#xff09;的匹配。在最大匹配中&#xff0c;如果向其添加任何边&#xff0c;则该边不再是匹配。对于给定的二部图&#xff0c;可以有多个最大匹配。 我们为什…

【论文精读】Bipartite network projection and personal recommendation

一、Introduction 在过去的几年里&#xff0c;人们对复杂网络进行了大量的研究&#xff0c;一类特殊的网络是二部网络&#xff08;bipartite network&#xff09;。特点是其节点可分割为两个互不相交的子集X和Y&#xff0c;连接只允许存在于不同集合中两个节点之间。例如人类的…

【一致性仿真】Group-Bipartite Consensus in the Networks With Cooperative-Competitive Interactions

文章链接&#xff1a;Group-Bipartite Consensus in the Networks With Cooperative-Competitive Interactions 仿真图Fig3&#xff1a; MATLAB代码 % Group-Bipartite Consensus in the Networks With Cooperative-Competitive Interactions % Protocol Simulation Results …