受限玻尔兹曼机(RBM)以及对比散度(CD)
1. RBM 的提出
BM 的缺点:
- 计算时间漫长,尤其是无约束自由迭代的负向阶段;
- 对抽样噪音敏感;
- 流行软件的不支持;
受限玻尔兹曼机(Restricted Boltzmann Machine,简称 RBM,以解决 BM 的学习效率过慢的严重缺陷)是由 Hinton 和 Sejnowski 于 1986 年提出的一种生成式随机神经网络(generative stochastic neural network),该网络由一些可见单元(visible unit,对应可见变量,亦即数据样本)和一些隐藏单元(hidden unit,对应隐藏变量)构成,可见变量和隐藏变量都是二元变量,亦即其状态取{0,1}。整个网络是一个二部图,只有可见单元和隐藏单元之间才会存在边,可见单元之间以及隐藏单元之间都不会有边连接,如下图所示:
2. BM 与 RBM 的对比
RBM 和 BM 一样,都可视为一种无向图(undirected graph),所谓无向的涵义即在于,权值对称,wji=wij(自然对于有向图而言,与指向有关;)
RBM 同层节点之间没有连接(BM 有连接),
- 可见层,隐层:结点之间彼此独立(简化的思路)(条件独立假设),
3. 数学记号
能量函数的定义:
E(v,h|θ)=−∑iaivi−∑jbjhj−∑in∑jmaiWijbj- 显然可以将上述公式简化为:一种向量的记法;
- ai:可见层的偏置(bias)
- bj:隐层的偏置(bias)
- 竖线右边的 θ 就像条件概率的形式一样,一般理解为固定 θ(θ={Wij,ai,bj})的条件下,E 关于 v,h 的函数;
v,h 的联合概率分布为(由玻尔兹曼分布而来):
P(v,h)=e−E(v,h|θ)Z(θ)Z 十分难计算(2n+m 种组合)
4. CD 算法
目标函数,即在参数(θ)确定的情况,最大化重现(再现)输入;
5. AE 与 RBM
- AE:
- 出于简化的考虑:输入层,隐层,输出层;
- 因为通过低维的隐层,可以重构出输出层,可见低维的隐层,是一种对输入本质特征的描述,又可从侧面说明,输入层是可以被压缩,也即存在冗余,进一步我们可认为其是可以被稀疏表示的;
- 平方损失,BP反向传播,
- RBM:
- 可见层,隐层,可见层,隐层 ,,, ,是一种横向的展开;
- 这种周期性的循环结构可以被视为:不同的可见层其实是相互重叠的;
- 可见层既作为输入,也作为输出,(之所以称其为可见层,隐层,而不是输入层,隐层,输出层,就在于,可见层既作为输入层,也作为输出层)
-
受限玻尔兹曼机(RBM)以及对比散度(CD)的更多相关文章
- 深度学习方法:受限玻尔兹曼机RBM(一)基本概念
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术.应用感兴趣的同学加入. 最近在复习经典机器学习算法的同 ...
- 基于受限玻尔兹曼机(RBM)的协同过滤
受限玻尔兹曼机是一种生成式随机神经网络(generative stochastic neural network), 详细介绍可见我的博文<受限玻尔兹曼机(RBM)简介>, 本文主要介绍R ...
- 深度学习方法:受限玻尔兹曼机RBM(四)对比散度contrastive divergence,CD
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术.应用感兴趣的同学加入 上篇讲到,如果用Gibbs Sa ...
- 深度学习方法:受限玻尔兹曼机RBM(三)模型求解,Gibbs sampling
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术.应用感兴趣的同学加入. 接下来重点讲一下RBM模型求解 ...
- 深度学习方法:受限玻尔兹曼机RBM(二)网络模型
欢迎转载,转载请注明:本文出自Bin的专栏blog.csdn.net/xbinworld. 技术交流QQ群:433250724,欢迎对算法.技术.应用感兴趣的同学加入 上解上一篇RBM(一)基本概念, ...
- 受限玻尔兹曼机RBM
相关算法 python代码参考http://blog.csdn.net/zc02051126/article/details/9668439#(作少量修改与注释) #coding:utf8 impor ...
- 受限玻尔兹曼机RBM—简易详解
- 受限玻尔兹曼机(Restricted Boltzmann Machine,RBM)
这篇写的主要是翻译网上一篇关于受限玻尔兹曼机的tutorial,看了那篇博文之后感觉算法方面讲的很清楚,自己收获很大,这里写下来作为学习之用. 原文网址为:http://imonad.com/rbm/ ...
- 受限玻尔兹曼机(RBM)学习笔记(六)对比散度算法
去年 6 月份写的博文<Yusuke Sugomori 的 C 语言 Deep Learning 程序解读>是囫囵吞枣地读完一个关于 DBN 算法的开源代码后的笔记,当时对其中涉及的算 ...
随机推荐
- MFC屏蔽 WindowS按键
LRESULT CALLBACK LowLevelKeyboardPorc(int nCode,WPARAM wParam,LPARAM lParam)//屏蔽按键的真正实现方法{ BOOL fEat ...
- ARM 授权费用太贵 科技巨头欲转向开源架构 RISC-V
不久前,特斯拉加入 RISC-V 基金会,并考虑在新款芯片中使用免费的 RISC-V 设计.至此,已有 IBM.NXP.西部数据.英伟达.高通.三星.谷歌.华为等 100 多家科技公司加入 RISC- ...
- js进阶课程ajax简介(ajax是浏览器来实现的)
js进阶课程ajax简介(ajax是浏览器来实现的) 一.总结 1.ajax使用需要服务器支持,比如phpstudy 2.ajax是浏览器支持的功能:ajax有个核心对象XMLHttpRequest, ...
- php 下载服务器上存在的文件 到本地
Header("Location: http://www.weiyunyi.com/Public/youbu_score_template.xls");
- docker 在运行 aspnetcore 镜像时提示 命令找不到
不要讲路径映射到镜像中的应用根文件夹 例如默认的 /app
- jquery-ajax、struts2、json数据问题
jquery代码: $.ajax({ url:url, type:'post', data:{"key1": "value1", "key2" ...
- JAVA学习路线图---(JAVA1234) 分类: B1_JAVA 2013-10-05 10:22 502人阅读 评论(1) 收藏
转自:http://blog.csdn.net/pplcheer/article/details/12276999 第一阶段-Java基础 这一阶段很重要,关系到你后面阶段的学习,所以务 ...
- 并发队列ConcurrentLinkedQueue 和 阻塞队列LinkedBlockingQueue用法
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列(先进先出).Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQ ...
- 封装springmvc处理ajax请求结果
原文链接:http://blog.csdn.net/qq_37936542/article/details/79064818 需求描述:ajax向后台发起请求,springmvc在处理完请求后返回的结 ...
- php如何利用标准输入输出实现在一个字符串中计算某个字符出现的个数?
php如何利用标准输入输出实现在一个字符串中计算某个字符出现的个数? 一.总结 php实现计算字符个数(php标准输入和输出:fgets(STDIN) echo $output;) 1.php标准输 ...