受限玻尔兹曼机(RBM)以及对比散度(CD)

1. RBM 的提出

BM 的缺点:

  • 计算时间漫长,尤其是无约束自由迭代的负向阶段;
  • 对抽样噪音敏感;
  • 流行软件的不支持;

受限玻尔兹曼机(Restricted Boltzmann Machine,简称 RBM,以解决 BM 的学习效率过慢的严重缺陷)是由 Hinton 和 Sejnowski 于 1986 年提出的一种生成式随机神经网络(generative stochastic neural network),该网络由一些可见单元(visible unit,对应可见变量,亦即数据样本)和一些隐藏单元(hidden unit,对应隐藏变量)构成,可见变量和隐藏变量都是二元变量,亦即其状态取{0,1}。整个网络是一个二部图,只有可见单元和隐藏单元之间才会存在边,可见单元之间以及隐藏单元之间都不会有边连接,如下图所示:


20161110234954702

2. BM 与 RBM 的对比

  • RBM 和 BM 一样,都可视为一种无向图(undirected graph),所谓无向的涵义即在于,权值对称,wji=wij(自然对于有向图而言,与指向有关;)

  • RBM 同层节点之间没有连接(BM 有连接),

    • 可见层,隐层:结点之间彼此独立(简化的思路)(条件独立假设),

3. 数学记号

  • 能量函数的定义:

    E(v,h|θ)=iaivijbjhjinjmaiWijbj

    • 显然可以将上述公式简化为:一种向量的记法;
    • ai:可见层的偏置(bias)
    • bj:隐层的偏置(bias)
    • 竖线右边的 θ 就像条件概率的形式一样,一般理解为固定 θθ={Wij,ai,bj})的条件下,E 关于 v,h 的函数;
  • v,h 的联合概率分布为(由玻尔兹曼分布而来):

    P(v,h)=eE(v,h|θ)Z(θ)

    Z 十分难计算(2n+m 种组合)

4. CD 算法

θ=argmaxL(θ)=argmaxt=1TlogP(v(t)|θ)

目标函数,即在参数(θ)确定的情况,最大化重现(再现)输入;

5. AE 与 RBM

  • AE:
    • 出于简化的考虑:输入层,隐层,输出层;
    • 因为通过低维的隐层,可以重构出输出层,可见低维的隐层,是一种对输入本质特征的描述,又可从侧面说明,输入层是可以被压缩,也即存在冗余,进一步我们可认为其是可以被稀疏表示的;
      • 平方损失,BP反向传播,
  • RBM:
    • 可见层,隐层,可见层,隐层 ,,, ,是一种横向的展开;
    • 这种周期性的循环结构可以被视为:不同的可见层其实是相互重叠的;
    • 可见层既作为输入,也作为输出,(之所以称其为可见层,隐层,而不是输入层,隐层,输出层,就在于,可见层既作为输入层,也作为输出层) -

转载于:https://www.cnblogs.com/mtcnn/p/9422835.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/254008.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

嵌入式系统中看门狗概述。。。

一直以来对于嵌入式中的watch dog(看门狗)都比较陌生,一直都不知道它到底是做什么的,单从名字上看也不知其所以然,然后就在网上找到了一篇blog,就是再说看门狗的作用和概述,原文如下&#xff1a…

MySQL中的运算符

算术运算符 MySQL 支持常见的五种算术运算:, -, *, /(同 DIV 函数), %(同 MOD 函数),即加减乘除和取余。(被除数为 0则结果为 NULL) 比较运算符 当使用 SELECT 语句进行查询时,MySQL 允许用户对表达式的左边操作数和右…

Qt中查看ui_xxx.h文件方法

前提 1、Qt当有界面 2、构造完成 满足以上两个条件qt会生成ui_xxx.h文件。 如何查看 方法1 在cpp文件中找到UI下的一个对象 如: ui->textEdit Ui::QWDialog按住Ctrl键,使用鼠标左键点击UI下的一个对象,如:textEdit、QWDia…

springCloud Finchley 实战入门(基于springBoot 2.0.3)【三 Eureka-高可用服务注册中心】...

Eureka高可用注册中心 Eureka Server的设计一开始就考虑到了高可用的问题,在eureka服务治理设计中,所有的节点即是是服务提供方,也是服务消费方。 在部署高可用注册中心前我们先需要准备一下,本地环境。因为我们实例是在单台电脑上…

Spring 读取配置文件(二)

Spring 读取配置文件并调用 bean package cn.com.test.receive;import org.springframework.beans.factory.annotation.Value; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration;Configuration public class…

DaVinci的Buffer_Handle和BufTab Cmem函数调用

DaVinci的dvsdk里面,所有的内存用的都是CMEM,而比较上层的一个封装就是BufTab和Buffer_Handle了 每个Tab可以控制好多块内存块。 具体到内存块有两种,一种是创建的时候指定他的大小啊,物理地址啥的。另外一种就是仅仅创建出这个 …

Qt使用两组RadioButton,两组之间相互独立

Qt中使用两组共四个RadioButton时,由于RadioButton的特性,所以两组一共四个按钮每次只能选择一个,要使得两组RadioButton相互独立,需要用到QButtonGroup这个功能,把RadioButton加到QButtonGroup里面,实现两…

sleep 和 wait 的区别

为什么80%的码农都做不了架构师?>>> 面试中常问的就是 sleep 和 wait 有什么不同吗?为了面试时候发挥的更好,我在这里总结分享下。 首先对于 sleep() 方法,我们首先要知道该方法是属于 Thread 类中的。而 wait() 方法…

2016年11月13日周工作知识点总结

jQuery :eq() 选择器选取带有指定 index 值的元素。index 值从 0 开始,所有第一个元素的 index 值是 0(不是 1)。经常与其他元素/选择器一起使用,来选择指定的组中特定序号的元素(如下面的例子)。$("p…

DM6467之视频采集(Linux)下MMAP

做dsp6467是在linux下做视频采集,仅ARM端 一共有三种视频采集方式: 1)使用read、write方式:直接使用 read 和 write 函数进行读写。这种方式最简…

QPS、TPS计算

QPS (Query per second) (每秒查询量) TPS(Transaction per second) (每秒事务量,如果是InnoDB会显示,没有InnoDB就不会显示) 计算方法 QPS Questions SHOW GLOBAL STATUS LIKE Questions; Uptime SHOW G…

QT 中textEdit 和 textBrowser 无法使用斜体及加粗等 解决办法

编辑框的几个种类 QT 中一共四个文本编辑框 分别是 Line Edit 、Text Edit、 Plait Text Edit和textBrowser四种文本编辑框架! 一、输入内容不同 1、LineEdit:LineEdit的输入内容为单行文本输入。 2、TextEdit:TextEdit的输入内容为多行文…

【select模块】select IO多路复用和select实现FTP

select是全平台通用的IO多路复用模块。最大连接数:1024。poll和epoll没有最大连接数限制,但只能用在linux平台。selectors是再封装模块,推荐使用。下篇会讨论。select.select(rlist, wlist, xlist[, timeout])This is a straightforward inte…

变量属性

变量属性 C语言的变量属性 C语言中的变量可以有自己的属性在定义变量的时候加上“属性”关键字属性关键字指明变量的特有意义auto关键字 auto即C语言中局部变量的默认属性auto表明将被修饰的变量存储在栈上编译器默认所有的局部变量都是auto的register关键字 register关键字指明…

WPF:How to display a Bitmap on Image control

一个Bitmap文件,叫做screenShotFile, 你可以这样显示到Image控件上。 BitmapImage bi new BitmapImage(); bi.BeginInit(); bi.UriSource new Uri(this.screenShotFile, UriKind.Absolute); bi.EndInit(); this.scre…

QT中$$PWD的意思

$$PWD的意思为当前目录 如pro文件中:INCLUDEPATH $$PWD/lib/x64-win64 $$PWD表示的意思就是pro文件所在的目录。

Dubbo 整合 Pinpoint 做分布式服务请求跟踪

2019独角兽企业重金招聘Python工程师标准>>> 在使用Dubbo进行服务化或者整合应用后,假设某个服务后台日志显示有异常,这个服务又被多个应用调用的情况下,我们通常很难判断是哪个应用调用的,问题的起因是什么&#xff0…

Linux 进程详解

Linux内核的七大区间 1.进程管理(进程创建,进程的三种状态,进程间的调度,调度算法...) 2.内存管理(段式管理(Linux所有段都从0开始),页式管理--地址偏移量) 3…

C#2.0 委托

委托 委托是一个非常不错的设计,允许我们把方法做为参数传递,实现了开放閉放原则。在方法中我们只要有一个委托占位,调用者就可以传入符合签名的方法来做不同的操作,这也面向对象开发中多态的魅力。 但是在C#1.0的时候&#xff…

qt乱码Could not decode“xxx.cpp“ with “UTF-8“-encoding.Editing not possible问题处理

问题描述:如题: 解决方法: 1、点击Select Encoding按钮 2、选择按照系统编码 3、选中System后点击按编码重新载入 4、问题解决