本篇博文是对基于能量的模型和波尔兹曼机关于对比散度算法的总结。

对比散度算法(Contrastive Divergence)

尽管利用Gibbs采样,我们可以得到对数似然函数关于未知参数梯度的近似,但是通常情况下,需要使用较大的采样步数,这使得RBM的训练效率仍然不高,尤其当观测数据的特征维数较高时。2002年Hinton提出了RBM的一个快速学习算法,对比散度算法(Contrastive Divergence)。与Gibbs采样不同,Hinton指出,当使用训练数据初始化v0v_0时,我们仅需要使用kk(通常k=1k=1)步Gibbs采样就可以得到足够好的近似。在CD算法一开始,可见单元的状态被设置成一个训练样本,并利用以下公式计算隐藏层单元的二值状态,在所有隐藏单元状态确定了之后,根据下面公式2来确定每个可见单元取值为1的概率。进而得到可见层的一个重构。然后将重构的可见层作为真实的模型带入RBM的Δ\Delta中,就可以进行梯度下降算法了。
p(hi=1|v)=sigmoid(ci+Wiv)p(h_i=1|v)=sigmoid(c_i + W_iv)
p(vj=1|h)=sigmoid(bj+W′jh)p(v_j=1|h)= sigmoid(b_j + W_j'h)

RBM基于CD的快速学习算法主要步骤如下

#输入:一个训练样本x0;隐藏层单元个数m,学习速率alpha,最大训练周期T
#输出:链接权重矩阵W,可见层的偏置向量a,隐藏层的偏置向量b
#训练阶段:初始化可见层单元的状态为v1 = x0;W,a,b为随机的较小的数值
for t = 1:Tfor j = 1:m #对所有隐藏单元P(h1j=1|v1)=sigmoid(bj + sum_i(v1i * Wij));for i = 1:n#对于所有可见单元p(v2i=1|h1)=sigmoid(ai + sum_j(Wij * h1j)for j = 1:m #对所有隐藏单元P(h2j=1|v2)=sigmoid(bj+sum_j(v2i*Wij))W = W + alpha * (P(h1=1|v1)*v1 - P(h2=1|v2)*v2)a = a + alpha * (v1 - v2)b = b + alpha*(P(h1=1|v1) - P(h2=1|v2))

[Deeplearning]对比散度算法(CD算法)相关推荐

  1. ESL第十七章 无向图模型 学习/推断/成对马尔可夫独立/全局马尔可夫性、协方差图/高斯图/修改回归算法/图结构估计/图lasso、【受限】玻尔兹曼机/泊松对数线性建模/迭代比例过滤/对比散度

    目录 17.1 导言 17.2 马尔可夫图及其性质 17.3 连续变量的无向图模型 17.3.1 图结构已知的参数估计 17.3.2 估计图结构 17.4 离散变量的无向图模型 17.4.1 图结构已 ...

  2. 以太网CSMA/CD算法交换机自学习/转发简述

    一.以太网CSMA/CD算法 NIC从网络层接收数据报,创建数据帧. 监听信道(1-坚持):如果NIC监听到信道空闲,则开始发送帧:如果NIC监听到信道忙,则一直等待到信道空闲,然后发送帧. NIC发 ...

  3. R语言plotly可视化:plotly可视化箱图、相同数据集对比使用不同分位数算法的可视化差异(quartilemethod参数、linear、inclusive、exclusive)

    R语言plotly可视化:plotly可视化箱图.相同数据集对比使用不同分位数算法的可视化差异(quartilemethod参数.linear.inclusive.exclusive) 目录

  4. 已知总线长度为1km,信号在总线上的传播速度为2×10^8m/s,数据传输速率为10Mbit/s。请问CSMA/CD算法成立的最短帧长度是多少?写出计算过程。

    已知总线长度为1km,信号在总线上的传播速度为2×10^8m/s,数据传输速率为10Mbit/s.请问CSMA/CD算法成立的最短帧长度是多少?写出计算过程. 最小帧长度=数据传输率 W*往返传输延时 ...

  5. 通过实验对比十大排序算法

    通过实验对比十大排序算法 前面给出了所有算法的实现,代码实现可能还有优化的空间,但也可以通过这些算法来实验大致分析每一种算法的优劣. 文章目录 通过实验对比十大排序算法 实验环境 一.各个排序算法运行 ...

  6. LibRec 学习笔记(五):使用 LibRec 快速复现 BPR 算法以及对比它的改进算法

    这是目录 一.BPR 的介绍 二.近年来在 BPR 上的经典改进算法 1.WBPR 2.GBPR 3.SBPR 4.AoBPR 5.MBPR 三.实验比较BPR算法以及它的改进算法 1.使用数据集 F ...

  7. 机器学习笔记之配分函数(三)对比散度

    机器学习笔记之配分函数--对比散度 引言 回顾:随机最大似然求解模型参数的过程 随机最大似然的缺陷 吉布斯采样的缺陷与对比散度思想 对比散度名称的由来 从 K L \mathcal K\mathcal ...

  8. 【算法】双指针算法 ( 双指针算法分类 | 相向双指针 | 有效回文串 )

    文章目录 一.双指针算法分类 二.相向双指针示例 ( 有效回文串 ) 一.双指针算法分类 面试时经常遇到 限制算法复杂度为 O(n)O ( n )O(n) 的情况 , 就需要使用以下算法 : 双指针算 ...

  9. 回溯java算法_聊聊算法——回溯算法

    "递归只应天上有,迭代还须在人间",从这句话我们可以看出递归的精妙,确实厉害,递归是将问题规模逐渐减小, 然后再反推回去,但本质上是从最小的规模开始,直到目标值,思想就是数学归纳法 ...

最新文章

  1. NVIDIA TensorRT高性能深度学习推理
  2. Python的优点?
  3. linux结束打印机进程,Linux系统,如何知道哪个进程在打印log?
  4. linux 自学系列:wc命令
  5. pycharm自带python.exe_Pycharm自带Git实现版本管理的方法步骤
  6. 前端学习(218):属性选择器
  7. Super-palindrome【字符串+思维】
  8. [jzoj 5775]【NOIP2008模拟】农夫约的假期 (前缀和+递推)
  9. 为什么现在越来越多的人不愿换新机?最后一个原因扎心了
  10. windows用户模式与内核模式
  11. 拓端tecdat|基于贝叶斯模型的随机森林预测方法分析汽车燃油经济性
  12. K3后台修改销售模块(销售订单、发货通知单、销售出库单)单价及金额语句
  13. mean shift 跟踪算法
  14. 巴旦木和杏仁的营养价值哪个好?丨巴旦木功效与作用
  15. 第一道西西里----关于两数的最大公约数
  16. STM32CubeMX SDRAM的使用(二)
  17. CSS 背景图像 background-image属性
  18. php获取实时汇率,php获取sinajs股票/汇率/期货实时价格
  19. 郎平,你回来会毁了中国女排!
  20. 最近在某外卖平台上点了一份米粉加了份青菜

热门文章

  1. 【Paper】WISDM:Activity Recognition using Cell Phone Accelerometers
  2. 19、Jetson Xavier NX使用yolov5对比GPU模型下的pt、onnx、engine 、 DeepStream 加速性能
  3. 基于阿里云CentOS进行Docker尝试
  4. Win7如何利用系统放大镜工具更改用户密码
  5. SpringSecurity系列——会话管理,CSRFday8-1(源于官网5.7.2版本)
  6. 微信小程序-slot插槽
  7. 实现用户注册功能的代码
  8. B端和C端产品主要差异:用户、体验、数据
  9. vbox android wifi,virtualbox桥接无线网卡实现上网
  10. 基于数组(非链表)实现软件定时器---可以移植到未使用系统的单片机,通用型