神经网络学习笔记-受限波尔兹曼机(Restricted Boltzmann Machines)

受限波尔兹曼机(Restricted Boltzmann Machines,RBM)是一类具有两层结构,对称连接且无自反馈的随机神经网络模型,层间全连接,层内无连接。
当给定可见层神经元的状态时,各隐藏层神经元的之间是否激活是条件独立的;反之也同样成立。

基于能量模型。Hinton提出针对其的训练算法(对比散度算法)
实践证明,RBM是一种有效的特征提取方法,用于初始化前馈神经网络可明显提高泛化能力,堆叠多个RBM组成的DBN能提取更抽象的特征。
利用RBM的堆叠可以构造出深层的神经网络模型——深度信念网(Deep Belief Net, DBN)
每个节点都是一个二值的随机变量
这里写图片描述

隐藏层的神经元的个数为 nh n h
隐藏层神经元的状态 h=(h1,h2,...,hnh)TRnh h = ( h 1 , h 2 , . . . , h n h ) T ∈ R n h
隐藏层神经元的偏置 b=(b1,b2,...,bnh)TRnh b = ( b 1 , b 2 , . . . , b n h ) T ∈ R n h

假设可见层的神经元的个数为 nv n v
可见层神经元的状态 v=(v1,v2,...,vnv)TRnv v = ( v 1 , v 2 , . . . , v n v ) T ∈ R n v ,
可见层神经元的偏置 a=(a1,a2,...,anv)TRnv a = ( a 1 , a 2 , . . . , a n v ) T ∈ R n v ,

隐藏层与可见层之间的连接权重 W=(wij)Rnh×nv W = ( w i j ) ∈ R n h × n v

网络参数 θ=(W,a,b) θ = ( W , a , b )

联合组态的能量公式

Eθ(v,h)=i=1nvaivij=1nhbjhji=1nvj=1nhhjwijvi E θ ( v , h ) = − ∑ i = 1 n v a i v i − ∑ j = 1 n h b j h j − ∑ i = 1 n v ∑ j = 1 n h h j w i j v i

联合概率分布:

Pθ(v,h)=Eθ(v,h)v,hEθ(v,h)=Eθ(v,h)Zθ P θ ( v , h ) = − E θ ( v , h ) ∑ v , h − E θ ( v , h ) = − E θ ( v , h ) Z θ

Zθ Z θ 为归一化因子
边缘概率分布:

Pθ(v)=hPθ(v,h)=hEθ(v,h)Zθ P θ ( v ) = ∑ h P θ ( v , h ) = ∑ h − E θ ( v , h ) Z θ

Pθ(h)=vPθ(v,h)=vEθ(v,h)Zθ P θ ( h ) = ∑ v P θ ( v , h ) = ∑ v − E θ ( v , h ) Z θ

当给定可见层的状态时,隐藏层上的某一个神经元被激活的概率,即 P(hk=1|v) P ( h k = 1 | v )
当给定了隐藏层的状态时,可见层上的某一神经元被激活的概率,即 P(vk=1|h) P ( v k = 1 | h )
h h 中去除了分量hk后的向量
hk=(h1,h2,...,hk1,hk+1,...,hnh)T h − k = ( h 1 , h 2 , . . . , h k − 1 , h k + 1 , . . . , h n h ) T

Eθ(v,h)=i=1nvaivij=1nhbjhji=1nvj=1nhhjwijvi E θ ( v , h ) = − ∑ i = 1 n v a i v i − ∑ j = 1 n h b j h j − ∑ i = 1 n v ∑ j = 1 n h h j w i j v i

=β(v,hk)hkαk(v) = − β ( v , h − k ) − h k α k ( v )

αk(v)=bk+i=1nvwkivi α k ( v ) = b k + ∑ i = 1 n v w k i v i

P(hk=1|v)=11+eαk(v) P ( h k = 1 | v ) = 1 1 + e − α k ( v )

=Sigmoid(αk(v)) = S i g m o i d ( α k ( v ) )

=Sigmoid(bk+i=1nvwkivi) = S i g m o i d ( b k + ∑ i = 1 n v w k i v i )

同理,可以求得当给定了隐藏层的状态时,可见层上的某一神经元被激活的概率
P(vk=1|h)=11+eαk(h) P ( v k = 1 | h ) = 1 1 + e − α k ( h )

=Sigmoid(αk(h)) = S i g m o i d ( α k ( h ) )

=Sigmoid(ak+j=1nhwkjhj) = S i g m o i d ( a k + ∑ j = 1 n h w k j h j )

对于RBM模型,其参数主要是可见层和隐藏层之间的权重,可见层的偏置以及隐藏层的偏置,即θ=(W,a,b),对于给定的训练样本,通过训练得到参数θ,使得在该参数下,由RBM表示的概率分布尽可能与训练数据相符合
设训练集 X={v1,v2,...,vns} X = { v 1 , v 2 , . . . , v n s }
训练RBM的目标就是最大化如下的似然函数

Lθ=i=1nsP(vi) L θ = ∏ i = 1 n s P ( v i )

lnLθ=lni=1nsP(vi)=i=1nslnP(vi) l n L θ = l n ∏ i = 1 n s P ( v i ) = ∑ i = 1 n s l n P ( v i )

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值