《神经网络与深度学习》-深度信念网络

本文详细介绍了玻尔兹曼机的原理,包括生成模型、能量最小化与模拟退火、参数学习等。接着探讨了受限玻尔兹曼机(RBM),其作为生成模型的特性、对比散度学习算法及不同类型的RBM。最后,文章阐述了深度信念网络(DBN)的生成模型和参数学习方法,包括逐层预训练和精调过程。
摘要由CSDN通过智能技术生成


  对于复杂的数据分布,通常只能观测到有限的局部特征,且含有噪声,如要对这个数据分布进行建模,要挖掘可观测变量之间的依赖关系,以及可观测变量背后隐藏的内部表示
  本文介绍可有效学习变量之间复杂依赖关系的概率图模型( 深度信念网络)以及两基础模型( 玻尔兹曼机受限玻尔兹曼机)。深度信念网络含很多隐变量,可有效学习数据的内部特征表示,也可以作为一种非线性降维方法,学到的特征包含了数据的更高级、有价值的信息,故十分有助于后续的分类和回归任务。
  玻尔兹曼机、深度信念网络都是生成模型,借助隐变量来描述复杂的数据分布,共同问题都是推断和学习问题,常通过MCMC方法来近似估计。

1. 玻尔兹曼机

  玻尔兹曼机(Boltzmann Machine)可看做一个随机动力系统(Stochastic Dynamical System)。每个变量转态以一定概率收到其他变量影响,可用概率无向图模型来描述,一个具有K个节点(变量)的玻尔兹曼机满足三个性质:

  1. 每个随便变量是二值的,所有随机变量可用 X ∈ { 0 , 1 } K X\in\{0,1\}^K X{ 0,1}K表示,其中可观测变量表示为 V \pmb{V} VVV,隐变量表示为 H \pmb{H} HHH
  2. 所有节点之间是全连接的,每个变量 X i X_i Xi的取值依赖于所有其他变量 X i \pmb{X}_{\\i} XXXi
  3. 每两个变量之间的相互影响是 ( X i → X j , X j → X i ) (X_i \to X_j ,X_j \to X_i) (XiXjXjXi)对称的

  包含3个可观测变量和3个隐变量的玻尔兹曼机图示:
在这里插入图片描述
  随机向量 X \pmb{X} XXX的联合概率密度由玻尔兹曼分布得到,即:
在这里插入图片描述
其中 Z 为配分函数,T表示温度,能量函数 E ( x ) E(\pmb{x}) E(xxx)的定义为:
在这里插入图片描述
其中 w i j w_{ij} wij是两个变量 x i x_i xi x j x_j xj之间的连接权重, x i ∈ { 0 , 1 } x_i \in \{0,1\} xi{ 0,1}表示状态, b i b_i bi是变量 x i x_i xi的偏置。
  如果 X i X_i Xi X j X_j Xj的取值都为1时,一个正的权重 w i j > 0 w_{ij}>0 wij>0会使得玻尔兹曼机的能量下降,发生的概率变大;相反,一负的权重会使得玻尔兹曼机的能量上升,发生的概率变小。故如果令玻尔兹曼机中每个变量 X i X_i Xi代表一个基本假设, 取值为1或0分别表示模型接受或拒绝该假设,那么变量之间连接的权重代表了两个假设之间的弱约束关系。连接权重可正可负的实数:正的权重表示两个假设可以相互支持,或一个假设被接受另一个也很可能被接受,相反,负的权重表示两个假设不能同时被接受。

  玻尔兹曼机可用来解决两类问题:

  1. 搜索问题:当给定变量之间的连接权重时,需找到一组二值向量,使得整个网络的能量最低
  2. 学习问题:当给定变量的多组观测时,学习网络的最优权重

在这里插入图片描述

1.1 生成模型

  在玻尔兹曼机中,配分函数Z通常难以计算,因此,联合概率分布 p ( x ) p(\pmb{x}) p(xxx)一般通过MCMC方法来近似,生成一组服从 p ( x ) p(\pmb{x}) p(xxx)分布的样本。下面介绍基于吉布斯采样的样本生成方法

全条件概率 吉布斯采样需要计算每个变量 X i X_i Xi 的全条件概率 p ( x i ∣ x i ) p(x_i|\pmb{x}_{\\i}) p(xixxxi),其中 x i \pmb{x}_{\\i} xxxi表示除变量 X i X_i Xi 外其他变量的取值
在这里插入图片描述

吉布斯采样 玻尔兹曼机的吉布斯采样过程为:随机选择一个变量 X i X_i Xi,然后根据其全条件概率 p ( x i ∣ x i ) p(x_i|\pmb{x}_{\\i}) p(xixxxi)来设置其状态,即以 p ( x i = 1 ∣ x i ) p(x_i=1|\pmb{x}_{\\i}) p(xi=1xxxi)的概率将变量 X i X_i Xi设为1,否则设为0.在固定温度T的情况下,在运行足够时间之后,玻尔兹曼机会达到热平衡。此时,二和全局状态的概率服从玻尔兹曼机 p ( x ) p(\pmb{x}) p(xxx),只与系统的能量有关,与初始状态无关。
  要使得玻尔兹曼机到达热平衡,其收敛速度和温度T相关。
  当系统温度非常高 T → ∞ T \to \infty T时, p ( x i = 1 ∣ x i ) → 0.5 p(x_i=1|\pmb{x}_{\\i}) \to 0.5 p(xi=1xxxi)0.5,即每个变量状态的改变十分容易,每一种系统状态都是一样的,从而很快可达到热平衡。
  当系统温度非常低 T → 0 T \to 0 T0,如果 Δ E i ( x i ) > 0 \Delta E_i(\pmb{x}_{\\i})>0 ΔEi(xxxi)>0,则 p ( x i = 1 ∣ x i ) → 1 p(x_i=1|\pmb{x}_{\\i}) \to 1 p(xi=1xxxi)1;如果 Δ E i ( x i ) < 0 \Delta E_i(\pmb{x}_{\\i})<0 ΔEi(xxxi)<0,则 p ( x i = 1 ∣ x i ) → 0 p(x_i=1|\pmb{x}_{\\i}) \to 0 p(xi=1xxxi)0,即:
在这里插入图片描述
因此,当 T → 0 T\to0 T0时,随机性方法变成了确定性方法,这时,玻尔兹曼机退化成一个Hopfield网络。
  Hopfield网络是一确定性的动力系统,而玻尔兹曼机是一种随机性的动力系统,Hopfield网络的每次状态更新都会使得系统的能量降低,而玻尔兹曼机则以一定概率事系统能量上升,下图是Hopfield网络和玻尔兹曼机运行时系统能量变化对比:

在这里插入图片描述

1.2 能量最小化与模拟退火

  在一个动力系统中,找到一个状态使系统能量最小是一个十分重要的优化问题。如动力系统是确定性的,如Hopfield网络,一个简单(但低效)的能量最小化是随机选择一个变量,其他变量保持不变,将这个能量设为使网络能量更低的状态。当每个变量 X i X_i Xi取值为 0 , 1 {0,1} 0,1时,如果能量差异 Δ E i ( x i ) > 0 \Delta E_i(\pmb{x}_{\\i})>0 ΔEi(x

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值