为了更进一步的清晰理解大脑皮层对信号编码的工作机制(策略),须要把他们转成数学语言,由于数学语言作为一种严谨的语言,能够利用它推导出期望和要寻找的程式。本节就使用概率推理(bayes views)的方式把稀疏编码扩展到随时间变化的图像上,由于人类或者哺乳动物在日常活动中通过眼睛获取的信号是随时间变化而变化的,对于此类信号仍然有一些稀疏系数和基能够描写叙述他们,同类型的处理方式也有慢特征分析(slow features analysis)。废话不多说了,进入正题:

我们把图像流(图像序列)看成时空基函数的线性组合再加上一些噪声,当然时空基函数能够想象成是时空不变的,类似于行为识别里的3D-SIFT,这点貌似又和慢特征分析扯上关系咯。相同一时候空基函数仍然有一些系数,用表示,则图像流则能够看成时空基和系数的卷积加上一些噪声,其模型如(公式一)所看到的:

(公式一)

整个模型能够形象的用(图一)展示,注意系数是一种单峰类似刺突的东东哦,(图一)上:

(图一)

当然对于(图一)中的时空基函数应尽可能的稀疏,便于降低运算量,不然对图像序列的运算量太大了。对于模型的參数求解,先如果系数独立且满足稀疏,bruno基于这些如果,给出了系数的先验公式,如(公式二)所看到的:

(公式二)

由于系数之间独立,所以他们的联合分布分解成单个分布的乘积形式,并且每一个系数满足稀疏如果,S是个非凸函数控制着系数alpha的稀疏。有了这些先验知识,给定图像序列后的系数alpha的后验概率如(公式三)所看到的:

(公式三)

通过最大化此后验概率,然后利用其梯度下降法求解,求的系数alpha,所有求解步骤如(公式四)所看到的:

(公式四)

公式虽然这么多,但扔不足以说明求解系数的具体步骤,由于(公式三)的后两项仍然不清楚,再次对这二项再做个如果,如(公式五)所看到的:

(公式五)

虽然做了如此如果,可是P(I|alpha,theta)仍然不能直接计算,须要对此项採样方能完毕,这个地方是须要改进的地方,虽然如此,我们还是硬着头皮把学习基函数步骤一并贴出来,为兴许改进打下铺垫。学习过程如(图二)所看到的:

(图二)

系数alpha通过梯度下降完毕,基函数更新则通过Hebbian learning学习完毕,Hebbian(海扁,又译赫布)学习就是加强同一时候激活的细胞之间的连接("Cells that firetogether, wire together."),这点能够略微解释了“读书百遍”背后的大脑皮层可塑的工作机制。学习到的基函数如(图三)所看到的:

(图三)

好咯,稀疏编码的生命科学的解释到此就差点儿相同了,能够看到思想不错,可是手工如果的太多,学习方法也不友好,随着代数学以及LASSO的引入,稀疏码逐渐開始成熟,并開始走上应用的道路,到了DeepLearning时代,手工成分也越来越少,威力貌似也越来越大。(好吧,我承认这节写的非常恶心,可是这节最大的亮点就是在空时域上编码,这对行为识别、语言识别啥的都有些帮助哦)

參考文献:

Probabilistic Models of the Brain: Perception and Neural Function. MIT Press

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

稀疏编码(Sparse Coding)的前世今生(二)的更多相关文章

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

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

  2. Sparsity稀疏编码(三)

    稀疏编码(sparse coding)和低秩矩阵(low rank)的区别        上两个小结介绍了稀疏编码的生命科学解释,也给出一些稀疏编码模型的原型(比如LASSO),稀疏编码之前的探讨文章 ...

  3. Sparsity稀疏编码(二)

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

  4. 理解sparse coding

    理解sparse coding 稀疏编码系列: (一)----Spatial Pyramid 小结 (二)----图像的稀疏表示——ScSPM和LLC的总结 (三)----理解sparse codin ...

  5. sparse coding

    Deep Learning(深度学习)学习笔记整理系列 zouxy09@qq.com http://blog.csdn.net/zouxy09 作者:Zouxy version 1.0 2013-04 ...

  6. Sparsity稀疏编码(一)

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

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

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

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

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

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

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

随机推荐

  1. [转载]RouteOS安装设置

    原文地址:RouteOS安装设置作者:抟鹏追梦 RouteOS2.7.4可以将一台普通的PC机变成一台专业的路由器,高到ISP的核心路器/认证网关-因为它功能强大稳定,低到家庭网关防火墙-因为它免费. ...

  2. jah老师中关于集合的总结

    --------概述:1.Java 集合就像一种容器,可以把多个对象的引用放入容器中 2.Java 集合类可以用于存储数量不等的多个对象,还可用于保存具有映射关系的关联数组3.Java 集合可分为 S ...

  3. C-数据和C

    1.常量与变量数据 有些数据在程序使用之前预先设定,并在整个运行过程中没有变化,叫做常量.另外的数据在程序运行过程中可能变化或被赋值,叫做变量. 2.数据类型关键字 对于变量,编译器通过声明语句中指定 ...

  4. javascript中五句话

    1.弹出框 ,小括号中就是弹出的内容 alert("我是一个弹出框");   2.控制台输出 小括号里面就是 控制台输出的东西 console.log("我是控制台输出的 ...

  5. 利用js实现进入页面首先执行刷新操作,且只刷新一次

    让页面进行刷新,可以使用location.reload()方法,但是这种方法会让页面一直不断的刷新,这是因为当页面加载完成以后,我们让它刷新一次,那么浏览器就会重新向服务器请求数据, 界面会重新加载, ...

  6. java网络编程之socket(1)

    网络编程是什么 网络编程的本质是两个设备之间的数据交换,当然,在计算机网络中,设备主要指计算机.数据传递本身没有多大的难度,不就是把一个设备中的数据发送给两外一个设备,然后接受另外一个设备反馈的数据. ...

  7. background-attachment css3属性

    <style type="text/css"> body{ margin: 0; } .zhan{ width: 100%; height: 500px; backgr ...

  8. (转) RabbitMQ学习之工作队列(java)

    http://blog.csdn.net/zhu_tianwei/article/details/40887717 参考:http://blog.csdn.NET/lmj623565791/artic ...

  9. 优动漫PAINT动画创作功能介绍

    优动漫PAINT也就是我们常说的clip studio paint(CSP)的中文版本,它是一款功能强大的漫画.插画绘制软件,它搭载了绘制漫画和插画所需的所有功能,包括丰富的笔工具.超强的笔压感应和手 ...

  10. jQuery删除元素

    remove() - 删除被选元素(及其子元素) empty() - 从被选元素中删除子元素 $("#div1").remove();删除被选元素及其子元素. $("#d ...