Training deep Boltzmann networks with sparse Ising machines

文献题目:用稀疏伊辛机训练深度玻尔兹曼网络

作者:Shaila Niazi

期刊来源:nature electroni

单位:Department of Electrical and Computer Engineering, University of California, Santa Barbara, Santa Barbara, CA, USA.

年份:2024.6.17


一、文献背景

问题的背景:随着摩尔定律的放缓,对于解决组合优化问题的非传统计算方法的需求日益增长,伊辛机作为一种特殊用途的硬件,被设计用来提高解决这类问题的能效和速度。

论文要解决的问题:如何使用基于概率比特(p-bit)的伊辛机来训练深度玻尔兹曼网络(DBMs),以解决传统硬件上难以高效训练的问题。

解决方案:利用基于FPGA的稀疏伊辛机进行深度玻尔兹曼网络的训练,以实现高效的学习和生成任务。

效果:使用基于概率比特(p比特)的伊辛机训练深度玻尔兹曼网络,在FPGA上使用硬件感知网络拓扑,训练完整的MNIST数据集(4264个节点(p位)和大约30000个参数)和fashion MNIST数据集、CIFAR-10数据集。

摩尔定律:集成电路上可容纳的晶体管数量每隔两年增加一倍,同时性能提升一倍,价格则相应减半。这一规律揭示了信息技术进步的速度,并推动了计算机技术和电子产业的快速发展。

所涉及的理论和方法:

1.伊辛机(Ising model):

伊辛机是基于伊辛模型的物理系统,伊辛模型是不同于冯诺依曼计算的基本计算模型,而伊辛模型(Ising model)是一类物质相变的随机过程模型,用于描述粒子的相互作用,每个粒子可以有两种状态。

伊辛模型通过能量函数来描述系统的状态,其哈密顿量(能量函数)通常包括所有相邻自旋对的相互作用能以及可能存在的外磁场能。在优化问题中,最低能量状态对应最优解或接近最优解的状态。

伊辛机系统状态遵循玻尔兹曼分布,较低能量状态的概率高于较高能量的概率。可以通过调整系统的温度参数(β)来搜索不同能量状态。通过逐渐降低系统的温度,系统的状态分布会逐渐集中到能量更低的状态,最终在温度趋于零时,系统会收敛到能量最低的状态,即最优解或接近最优解的状态。

文章中通过硬件FPGA构建二进制随机神经元(p-bit)的网络,并在硬件中固定这些神经元的拓扑结构,通过异步的方式进行动态演化。

2.稀疏深度玻尔兹曼机(sparse deep Boltzmann Machines,DBMs)

玻尔兹曼机由两层神经元组成,包括可见层(或称为输入层)和隐藏层。使用吉布斯采样来生成数据,通过学习规则(包含对比散度CD和持久对比散度PCD)来调整权重和偏置,使得模型能够更好地生成训练数据。

由于其难以训练、效率低,提出了多种玻尔兹曼机的变体,如受限玻尔兹曼机RBMs和深度玻尔兹曼机DBMs,提高了性能。

本文中提到的DBMs是通过堆叠多种RBMs构成的。稀疏DBMs与标准DBMs对比,层间没有完全连接。

3.对比散度(CD)算法

CD算法通过最大化模型对训练数据的似然函数来调整模型参数,使得模型能够生成与训练数据相似的数据。

CD算法的步骤:

1)初始化:初始化权重和偏置。

2)正相,数据分布,利用训练数据来指导模型的学习

可见层直接设置为样本,模型通过权重和偏置激活隐藏层

3)负相,模型分布,生成模型内部的数据表示

模型根据当前学习的权重和偏置来产生新的数据点。

4)参数更新

CD-n:n指的是在进行权重更新之前进行吉布斯采样的步数,对比散度算法是一种用于训练受限玻尔兹曼机(RBM)和其他能量基模型的梯度上升算法

网络拓扑是指网络中节点(p-bit)之间的连接方式。指在设计网络时考虑到硬件实现的特性,如连接性、计算资源和并行处理能力。论文中使用了稀疏网络拓扑,如PegasusZephyr图,这些拓扑在硬件上易于实现,同时保持了网络的表达能力。

异步架构指的是网络中的p-bits可以独立地、无需全局时钟信号协调地更新其状态。

FPGA上实现时,每个p-bit可以被视为一个独立的处理单元,通过局部连接和计算资源进行配置。减少等待时间,提高整体计算效率。

P-bit是构成Ising的基本单元,代表随机变量,可以处于+1-1状态。在硬件中,能够模拟概率性的翻转行为,实现概率计算

学习率(通常表示为 ε 或 η)是一个关键的超参数。它控制着模型参数(权重和偏置)在每次迭代中更新的幅度。以下是学习率在权重和偏置更新过程中的作用:


二、内容

1.A hybrid probabilistic-classical computing scheme

我们训练深度玻尔兹曼网络的方法就是构建一个混合概率和经典计算的装置,经典计算机的作用是计算梯度和从概率计算机给定样本的一组权重和偏差。概率计算机的作用是根据玻尔兹曼定律为给定网络生成平衡样本。

 

这是一个训练DBM的程序,描述了一个混合概率-经典计算架构的训练过程,输出为训练后的权重和偏置。

玻尔兹曼定律:

更加关注2-local energy:

可以看成所有粒子的相互作用之和、外场对于每个粒子的作用之和的集合。

计算机能够近似玻尔兹曼定律

第i个神经元在下一个步长的动态方程

激活函数为:

使用正切函数(这时候β取1)将I映射到【-1,1】, sgn符号函数映射到-1/1,后面产生随机的均匀分布,引入随机性,模拟不确定性。

3、4可近似1定义的玻尔兹曼定律的样本。

吉布斯采样:吉布斯采样的基本思想是逐步更新每个变量,每次更新都条件于其他变量的当前状态。

达到玻尔兹曼平衡的一个重要要求是,连接的p位是连续更新的(每次重新计算方程(3)),而不是并行更新,以便每个p位更新最新的信息。这种迭代过程被称为吉布斯采样

3、4引入两个挑战:1)串行更新 2)确保p位在更新之前从它们的邻居那里接收到所有最新的信息,否则网络就不能从真正的玻尔兹曼分布中采样

2.Hardware-aware sparse networks

上述两个困难在稀疏网络中更容易解决,稀疏性限制了p位之间的邻居数量,允许在未连接的p位上并行和异步更新。

只要选择的网络拓扑是稀疏的,就可以构建一个大规模并行架构,其中概率样本的频率线性依赖于网络中的节点数量

我们采用D-Wave量子退火器开发的Pegasus和Zepyhr拓扑来训练硬件感知的稀疏深度脑机

有限连接的硬件感知网络

 

本文使用具有两层隐藏位的典型稀疏DBM

Training sparse DBMs with sparse Ising machines


三、结果

Results on the full MNIST dataset

初始化:权重初始化为每p位标准差为0.01的零均值高斯中选择的小随机值。隐藏偏差的初始值被设置为零,可见偏差被设置为log[pi/(1−pi)],其中pi是单元i所在的训练向量的比例。训练时使用的超参数值为β = 1,学习率ε = 0.003,动量α = 0.6。

将训练集分成1200个小批次,一个批次50个图像

 

训练集精度(10000张图片的精度)和训练epoch(网络看到整个60,000张图像并进行1,200次权重更新)的关系:

a、MNIST数据集,使用稀疏DBM(Pegasus)训练,在100次的时候精度可以达到90%

b、使用RBM,精度低于90%,

c、RBM的MNIST数据集精度,参数总数为b的100倍,才能达到90%精确度

为了研究稀疏DBM总参数对于准确性的影响

对于5个大小不同的Pegasus图进行100次epoch的MINST数据集训练,收集测试精度,随着参数数量增加,准确度也在增加,对于DBM来说,在4264 p-bit大约可以达到90%的精度,对于RBM,在20万个参数数量下才达到90%准确率

说明一个具有4264个节点的机器(大约有3万个参数)与拥有3.25百万参数的RBM有差不多的准确率

参数总数?指的是什么参数

在构建和训练DBMs时网络中的权重和偏置的总数

结论:首先,稀疏DBM架构,尽管其层之间的连接数量要少得多(限制在≈15到20的图度),但与完全连接的RBM的分类精度相匹配。其次,稀疏DBM需要更少的参数(大约30,000个)才能在MNIST数据集中达到90%的准确率。

Image generation

用0.125步从β = 0退火到β = 5(β = 1/(kT),其中k是玻尔兹曼常数,T是温度。在优化和机器学习算法中,β的增加相当于降低系统的温度,使得系统更加倾向于寻找能量更低(即更稳定)的状态),用稀疏DBM生成的图像。特定数字的标签被夹住,以显示可见的p位如何演变成特定的图像。

b、相同的过程用于RBM网络,达到90%精度,RBM不显示数字

c、使用稀疏DBM生成时尚单品(裤子和毛衣)的图像

d、使用RBM无法生成正确的图像

Mixing times

混合时间分析:扫描次数减少到10^3次或10^2次会大大降低链的混合质量。

b,测试精度作为CD-n的函数在epoch 40显示平衡和非平衡样品。

Randomization of indices:提高准确性

上面是Pegasus,下面是Zephyr,a是非随机,b是随机索引,从c的精度图看出,非随机的精度难以突破50%,而随机索引的精度更高。

p-Computer architecture

伪异步吉布斯采样


四、结论

Conclusions

我们已经报道了一种混合概率-经典计算设置来训练稀疏和深度玻尔兹曼网络。我们使用了一个具有大规模并行架构的稀疏Ising机器,实现了比传统cpu快几个数量级的采样速度。与类似的硬件方法不同,对于较小的数据集,MNIST数据集被下采样、减少或完全替换,我们训练了完整的MNIST数据集,没有任何简化。我们还训练了较难的数据集——FMNIST数据集和带有灰度方案的简化版CIFAR-10数据集。我们的稀疏DBM在使用比RBM少100倍的参数的情况下,达到了RBM的精度,并成功生成了RBM没有做到的新图像。我们系统地研究了硬件感知网络拓扑的混合时间,并表明我们模型的分类准确性不受算法的计算可追溯性的限制,而是受我们能够在这项工作中使用的中等大小的fpga的限制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值