Helmholtz Machine and Wake-Sleep Learning

本文深入探讨了无监督学习中的Helmholtz机器和wake-sleep算法,该算法与神经网络的训练密切相关。文章介绍了Boltzmann分布的概念,并详细阐述了Helmholtz机器的结构,包括其识别和生成模型的双重参数系统。通过wake-sleep算法的两个阶段,即样本生成和参数调整,逐步解释如何最大化受惩罚的似然函数以优化神经网络。
摘要由CSDN通过智能技术生成

1.. 本文主要目的是服务于深信度网络。我们将在这里介绍神经网络无监督学习中的一个重要算法wake-sleep算法,以及和这种算法密切相关的一类机器–Helmholtz machine.
2.Boltzmann distribution. 在一个物理系统中,颗粒处在不同的状态下的概率分布称为Boltzmann distribution。其中状态 i 出现的概率为

pi=eEi/kTMi=1eEi/kT

其中每一种状态的概率和状态能量 Ei 相关,M表示所有可能的状态数,k为常数,T表示系统的温度。
3.Helmholtz machine.
. Helmholtz machine属于无监督学习。它主要包括两个部分:recognition model 和generative model。这两个部分类似于神经网络。recognition model 是从输入层到隐藏层的传播(自下而上传播),这个部分主要是用于识别输入数据,使得输入数据可以被隐藏层更好的表示,generative model 是从隐藏层到输入层的传播(自上而下传播),这个部分是用于生成输入数据。其目的就是构造一个网络,从而很好的表述输入数据的特征。
. 针对generative model。我们假设每一层的神经元在给定其上层的神经元之后是条件独立的。如下式所述

p(d,α|θ)=i=0np(αi|αi+1,θ)(1)

这个式子表示输入层d和所有隐藏层神经元 α 在generative model中联合密度函数, θ 就是层与层之间的权重, αi 表示第i层的神经元, α0=d .我们的目的就是最大化d的边际似然函数(或者是对数似然函数),也就是下式
logp(d|θ)=logαp(d,α|θ)=log(αp(α|θ)p(d|α,θ))(2)

然后,我们从物理学角度来思考,假设在给定输入层d之后, α 表示系统中的不同状态,这个状态的能量表示为如下形式:
Eα(θ,d)=logp(α|θ)p(d|α,θ)(3)

同时处于状态 α 的后验概率分布可以表示成Boltzmann分布,即处于状态 α 的概率为
Pα(θ,d)=p(α|θ)p(d|α,θ)
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值