Alan Lockett,博士 人工智能,德克萨斯大学奥斯汀分校(2012年)

2017年5月10日回复

RBM和DBM是具有不同但相关的拓扑的图形模型。DBN是基于堆叠RBM的计算模型,但是不对应于任何特定概率模型。

更详细地说,玻尔兹曼机器(BMs)是在1980年代基于统计物理学提出的。BM是一种图形模型,具有跨越一组可见节点和一组隐藏节点的无向链接。每个节点都是一个随机变量,并且具有指示其激活倾向的偏差。每个链接都有一个权重,表示节点之间的交互强度。通常,可见节点的值作为输入给出,并且一个试图以隐藏节点为条件推断隐藏节点的值。在二进制模型中,给定所有其他节点的状态,任何特定节点都具有伯努利分布,其参数证明是逻辑神经元。

限制玻尔兹曼机(RBM)是一种BM,其中每个可见节点都连接到每个隐藏节点。通常没有其他连接。这将RBM转换为二分图,这意味着可以以块推断节点的值,首先推断所有可见节点,然后推断所有隐藏节点。因此,RBM被认为是一个双层神经网络,有一个可见层和一个隐藏层。这些公式恰好是具有逻辑激活的前馈神经网络(假设隐藏节点是二进制的)。但是训练是不同的,通常使用具有持久性马尔可夫链的对比分歧(CD),尽管近年来已经开发出用于推断权重和偏差的新技术。特别是CD导致准Hebbian更新规则。

深度信任网络(DBN)是通过一次一个地训练RBM然后将它们堆叠在彼此之上以便推断连续的隐藏层而形成的。一旦RBM被堆叠,它就会改变堆栈中下RBM的隐藏值的先验分布(先前现在由上层而不是下层的隐藏偏差确定)。由于隐藏节点的先前已经改变,这意味着隐藏节点的条件推断未通过前馈传递正确完成。只有最顶层的RBM仍然是“正确”的图形模型。尽管如此,DBN相对容易编码,并且只需几层就可以很好地工作。更有针对性的是,DBN可用于初始化深度神经网络,该网络可通过反向传播轻松快速地进行微调。见Hinton,Osindero和Teh,2006。

深度信念机器(DBM)将DBN转变为完整的无向图形模型。它与RBM的连接具有不同的连接。DBM将隐藏节点分组为几个隐藏层h1,... ,hñH1,...,Hñ约束条件是可见层仅连接到第一个隐藏层,然后每个隐藏层仅连接到其下方和上方的层,没有横向连接(参见http://www.utstat.toronto的图2).edu / ~r ...)。RBM具有非常简单的推理规则,而DBM中的推断是近似的,并且取决于通过隐藏层的多次通过。为了推断隐藏层的状态,您需要知道它上面和下面的层的状态,因此您必须进行某种迭代采样以找到隐藏状态(例如,Gibbs采样)。很明显,DBM是一种BM。

所以最终你要谈的是三种不同的模型,其中两种是图形模型(RBM和DBM),第三种是RBM的启发式应用,以实现深度的外观。

RBM,DBM和DBN之间有什么区别?相关推荐

  1. 句法分析是什么?成分句法分析、依存句法分析又是什么?他们之间有什么区别?

    句法分析是什么?成分句法分析.依存句法分析又是什么?他们之间有什么区别? 目录

  2. 科普丨数据中心、云计算、大数据之间有什么区别和联系?

    不少人把数据中心.云计算数据中心.大数据搞混淆,觉得这三者是一样的产品,其实有显著地区别,数据中心机房是一整套复杂的设施,如今,云计算即将成为信息社会的公共资源,而数据中心则是支撑云计算服务的基础设施 ...

  3. 《中国人工智能学会通讯》——4.41 两种学习之间有什么区别?

    4.41 两种学习之间有什么区别? 来 看 一 下 剑 桥 大 学 信 息 工 程 教 授 ZoubinGhahramani 对贝叶斯规划学习(BPL)的评价,他认为 BPL 对人工智能.认知科学和机 ...

  4. 媒体查询中“屏幕”和“仅屏幕”之间有什么区别?

    本文翻译自:What is the difference between "screen" and "only screen" in media queries ...

  5. Docker映像和容器之间有什么区别?

    本文翻译自:What is the difference between a Docker image and a container? When using Docker, we start wit ...

  6. npm package.json文件中的依赖关系,devDependencies和peerDependencies之间有什么区别?

    本文翻译自:What's the difference between dependencies, devDependencies and peerDependencies in npm packag ...

  7. 应用程序服务器和Web服务器之间有什么区别?

    应用程序服务器和Web服务器之间有什么区别? #1楼 最大的不同是Web服务器处理HTTP请求,而应用程序服务器将在任意数量的协议上执行业务逻辑. #2楼 这取决于特定的体系结构. 某些应用程序服务器 ...

  8. DIV与SPAN之间有什么区别

    DIV与SPAN之间有什么区别 解决思路:    DIV 和 SPAN 元素最大的特点是默认都没有对元素内的对象进行任何格式化渲染.主要用于应用样式表.两者最明显的区别在于DIV是块元素,而SPAN是 ...

  9. c+和python的区别-c语言和python之间有什么区别

    c语言和python的区别是:1.Python是一种面向对象的解释型语言,通过缩进来表示语句体,在Python中每一条语句结尾后没有分号:2.C是一种面向过程的编译型语言,通过"{}&quo ...

  10. java jar包和war包_java中jar包和war包之间有什么区别

    原标题:java中jar包和war包之间有什么区别 jar包 简单地说,JAR(Java Archive)是一种包文件格式.JAR文件具有.jar扩展名,可以包含库.资源和元数据文件. 本质上,它是一 ...

最新文章

  1. ONNX MLIR应用示例(含源码链接)
  2. 【全网之最】用JavaScript写一个最简短的语句实现从A数组中去除B数组中相同元素
  3. 9 单元测试中不得不知的概念
  4. C++知识点21——使用C++标准库(再谈string——string的搜索和数值转化)
  5. python自学视频教程-28岁想从零开始自学python,有哪些靠谱免费的视频?
  6. window10 运行linux软件,现在你可以直接在Windows 10平台上运行带用户界面的Linux桌面软件...
  7. android 获取serialno_[Android]关于Android 唯一设备号(ro.serialno)
  8. js function随笔
  9. 数组reduce()方法
  10. android通过adb截取屏幕、录制屏幕 screencap screenrecord
  11. oeasy教您玩转vim - 005 - # 程序本质
  12. 快车解密php,PHP迅雷、快车、旋风下载专用链转换代码
  13. 美国证券业托管和清算机构的发展与现状
  14. 数据分析(Python)入门—鸢尾植物数据集处理
  15. 并发——锁升级(偏向锁,轻量级锁,重量级锁,及常见锁)
  16. Mybatis Plus基础06 mapperLocations配置(指定Mapper.xml文件路径)
  17. Ubuntu8.04硬盘安装指南
  18. 光耦=发光二极管+光敏三极管
  19. 传智播客成都java培训中心7月8号基础班开班啦
  20. 7-226 sdut-C语言实验-矩阵输出(数组移位)7-227 sdut- C语言实验-计算1到n的和(循环结构)7-228 加法口诀表

热门文章

  1. 生成树协议计算机网络,【图片】生成树协议奇怪!我错哪了两边都绿了呀【计算机网络吧】_百度贴吧...
  2. RTP协议RTCP协议
  3. Retrofit的简单封装
  4. Java程序员最厉害的是什么,「解密」谁是世界上最好的java程序员?
  5. android andbase,andbase
  6. 如何追求高质量的代码?
  7. H.264技术及原理
  8. 两步集成TV移动框架,从未如此简单
  9. phpstrom查看代码总行数_程序员实用工具,推荐一款代码统计神器GitStats
  10. php和dart交互,Flutter 之和原生交互