RBM的分析

本文介绍了RBM(受限玻尔兹曼机)在Matlab的Deep Learning Toolbox中的应用,并探讨了RBM在Deep Belief Nets(DBNs)中的角色。虽然RBM未直接包含在工具箱中,但DBNs是其重要组成部分。文章提供DBNs的训练代码,并解释了RBM的相关参数和训练过程,包括权重矩阵、偏置向量、动量学习率等。此外,还讨论了RBM的能量函数、联合概率分布和基于对比散度的快速学习算法,以及Gibbs采样的原理和在RBM训练中的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Matlab的deep learning 的toolbox,https://github.com/rasmusbergpalm/DeepLearnToolbox代码很简单,比较适合用来学习算法,但是传说中的RBM并没有在toolbox中发现。里面有DBNs(deep belief nets)深度信念网络。
http://blog.youkuaiyun.com/dark_scope/article/details/9447967代码的讲解,但是这个代码的讲解跟the guid与其他的代码,比如先前研究的convolutional RBM.m-master
既然没有RBM不如直接去看DBNs好了
代码包括:dbnsetup.m dbntrain.m dbnunfoldtonn.m rbmdown.m rbmtrain.m rbmup.m
rbm = rbmtrain(rbm, x, opts)
输入:x:输入图像数据,介于0,1之间。
Opts,
opts.batchsize 小批量数据尺寸
opts.numepochs 迭代次数
rbm,
rbm.momentum 动量学习率,这个参数在the guid paper里有详细的介绍
rbm.W 连接权重矩阵
rbm.b 可见层的偏置向量
rbm.c 隐层的偏置向量
rbm.alpha 权重更新公式参数
batch = x(kk((l - 1) * opts.batchsize + 1 : l * opts.batchsize), :);
介绍RBM中的知识,参考的PPT
机器学习研究的主要任务是设计和开发计算机可以智能地根据实际数据进行“学习”的算法,从而使这些算法可以自动地发现隐藏在数据中的模式和规律。
Rbm网络结构如图所示:

RBM网络有几个参数,一个是可视层与隐藏层之间的权重矩阵Wn×m,一个是可视节点的偏移量b=(b1,b2⋯bn),一个是隐藏节点的偏移量c=(c1,c2⋯cm),这几个参数决定了RBM网络将一个n维的样本编码成一个什么样的m维的样本。
首先为了描述容易,先假设每个节点取值都在集合{0,1}中,即∀i,j,vi∈ {0,1},ℎj∈

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值