资讯

玻尔兹曼机是什么?用能量函数描述状态概率的随机神经网络

2026-11-053 分钟阅读百科
TL;DR玻尔兹曼机(Boltzmann Machine)是 Hinton 与 Sejnowski 在 1985 年前后提出的随机循环神经网络,神经元以概率取 0 或 1,网络状态的概率服从由能量函数定义的玻尔兹曼分布,能学习数据的概率分布;完全连接版本难以训练,其受限版本 RBM 推动了深度学习兴起,相关工作获 2024 年诺贝尔物理学奖提及。

玻尔兹曼机(Boltzmann Machine)是一种随机的、基于能量的神经网络模型,由杰弗里·辛顿和特伦斯·谢诺夫斯基在 1983 到 1985 年间提出。它的名字来源于统计物理学中的玻尔兹曼分布。它能够学习数据的概率分布,是最早的生成式神经网络模型之一。

能量与概率

在统计物理中,一个系统处于某个状态的概率与这个状态的能量有关:能量越低的状态越稳定,出现的概率越高,这就是玻尔兹曼分布。玻尔兹曼机借用了这一思想:网络中的每个神经元只有两种状态,0 或 1;整个网络的每一种状态组合都有一个能量,由神经元之间的连接权重和每个神经元的偏置决定;网络处于某个状态的概率,与这个状态能量的负数的指数成正比。学习的目标是调整权重,让训练数据中出现的那些状态具有较低的能量、较高的概率。

结构和工作方式

玻尔兹曼机的神经元分为两类:可见单元,对应着我们能观察到的数据,比如一张图片的像素;隐藏单元,用来捕捉数据背后的潜在特征。在一般的玻尔兹曼机中,所有的神经元之间都可以相互连接,并且连接是对称的。网络运行时,每个神经元会根据它接收到的来自其他神经元的输入,以一定的概率决定自己取 1 还是取 0,输入越强,取 1 的概率越高。反复地随机更新各个神经元,网络最终会达到一种热平衡的状态,此时各种状态出现的频率就符合玻尔兹曼分布。这一过程与模拟退火的思想有关:通过逐步降低“温度”,让网络逐渐地落入低能量的状态。

学习规则

玻尔兹曼机有一个优美的学习规则:对于每一个连接,比较两种情况下这个连接两端的神经元同时为 1 的频率:一种是把可见单元固定为训练数据时,另一种是让网络自由运行时。如果前者更高,就增大这个权重,否则就减小。直观地说,就是让网络自由运行时的行为尽量接近看到真实数据时的行为。这个规则只依赖于连接两端的局部信息,与大脑中的赫布学习规则有相似之处。

困难与受限玻尔兹曼机

问题在于,要计算网络自由运行时的统计量,需要让网络达到热平衡,这需要进行大量的随机采样,计算量极其巨大,导致完全连接的玻尔兹曼机几乎无法用于实际的问题。解决的办法是限制网络的结构:受限玻尔兹曼机只允许可见层和隐藏层之间有连接,同一层内的神经元互不相连。这让计算大大简化。2002 年,辛顿提出了对比散度算法,可以高效地近似训练受限玻尔兹曼机。2006 年,辛顿等人把多个受限玻尔兹曼机堆叠起来逐层预训练,构建了深度信念网络,被视为深度学习兴起的开端之一。

历史意义

2024 年,约翰·霍普菲尔德和杰弗里·辛顿因为在人工神经网络方面的奠基性工作获得了诺贝尔物理学奖,诺贝尔委员会特别提到了辛顿利用统计物理的工具发展玻尔兹曼机的工作。如今,玻尔兹曼机已很少在实际中直接使用,但基于能量的模型的思想,以及它与统计物理之间的联系,至今仍在影响着生成模型的研究,比如基于分数的生成模型和扩散模型。