CN110991639A - 贝叶斯深度学习内存优化方法 - Google Patents

贝叶斯深度学习内存优化方法 Download PDF

Info

Publication number
CN110991639A
CN110991639A CN201911211743.2A CN201911211743A CN110991639A CN 110991639 A CN110991639 A CN 110991639A CN 201911211743 A CN201911211743 A CN 201911211743A CN 110991639 A CN110991639 A CN 110991639A
Authority
CN
China
Prior art keywords
deep learning
matrix
optimization method
uncertainty
bayesian
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201911211743.2A
Other languages
English (en)
Inventor
贾小涛
杨建磊
马宝健
赵巍胜
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beihang University Qingdao Research Institute
Original Assignee
Beihang University Qingdao Research Institute
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beihang University Qingdao Research Institute filed Critical Beihang University Qingdao Research Institute
Priority to CN201911211743.2A priority Critical patent/CN110991639A/zh
Publication of CN110991639A publication Critical patent/CN110991639A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Neurology (AREA)
  • Complex Calculations (AREA)

Abstract

本发明涉及内存优化方法,尤其是一种基于分解与存储策略的贝叶斯深度学习内存优化方法。将特征矩阵β的维度由M×N变为αM×N,0<α≤1,此时的特征矩阵β被分成β1
Figure DDA0002298340660000011
针对采样出的T个不确定性矩阵Hi(i=1,2,3,…T),每一个不确定性矩阵Hi被分为
Figure DDA0002298340660000012
部分,包括
Figure DDA0002298340660000013
将上述每一部分不确定性矩阵
Figure DDA0002298340660000014
分别与对应的β做内积,从而得到z1至zT共T个完整的输出向量。可以有效减小存储特征矩阵的空间,存储空间由原来的M×N变为αM×N,通过该方法可以将分解与存储策略带来的额外内存开销从50%降为α·50%。

Description

贝叶斯深度学习内存优化方法
技术领域
本发明涉及内存优化方法,尤其是一种基于分解与存储策略的贝叶斯深度学习内存优化方法。
背景技术
贝叶斯方法与深度学习的结合,被称为贝叶斯深度学习或贝叶斯深度神经网络。其中,深度神经网络旨在构建不同类型的学习模型,而贝叶斯推断旨在关注训练的方法。贝叶斯深度神经网络并不是一种新型的网络架构,而是提供一种新的神经网络训练算法。它既具有神经网络强大的拟合能力,也具有贝叶斯方法强大的不确定信息表征能力,同时也拥有完善的数学理论支持、良好的抗过拟合能力。
深度学习与贝叶斯深度学习使用相同的网络结构,但参数表现形式不同,如图1(a)和图1(b)所示。深度学习的网络参数是固定的数值,而贝叶斯深度学习的网络参数是固定参数的概率分布,通常选用高斯分布。在贝叶斯深度学习推理过程中,需要对贝叶斯神经网络的权重进行采样,得到一组参数,然后采用与非贝叶斯神经网络相同的推理算法。如图2所示,基于分解与存储策略的贝叶斯深度学习推理过程中,每一次推理过程均包含“预处理”,“采样”与“前馈传播”三个阶段。对于某一层神经网络,假定其输入神经元数量为N,其输出神经元数量为M。通常,贝叶斯神经网络需要进行多次推理过程,记为T。
由于计算平台硬件资源的限制,不可能并行地执行T个神经网络的前向传播。假设硬件平台的计算资源可以支持αT个神经网络的前向传播并行执行,其中0<α≤1。也就是说,硬件平台每一次最多可以产生αTMN个随机数。在每一次运算中,硬件平台会采样出αT个不确定形矩阵(H∈RM×N),并产生αT个输出(y∈RM)。经过α-1次迭代,我们可以得到T个输出向量。
如图3所示,以
Figure RE-GDA0002396023730000011
为例,在计算过程中,每次可以支持
Figure RE-GDA0002396023730000012
个神经网络的计算,所以 T个神经网络的前向传播需要分为4次。硬件平台每次会产生
Figure RE-GDA0002396023730000013
个随机数,这里的
Figure RE-GDA0002396023730000014
个随机数组成了
Figure RE-GDA0002396023730000015
个规模为M×N的不确定性矩阵。图中特征矩阵β的维度为M×N,分别与产生的
Figure RE-GDA0002396023730000016
个不确定性矩阵
Figure RE-GDA0002396023730000017
相乘,并得到αT个输出,经过α-1即4次迭代后,得到T个输出,即图中的Z1~ZT
由于不确定性矩阵的规模是M×N,因此需要开辟同样大小的内存空间用以存储特征矩阵β,这样使得内存开销增加了约50%。
发明内容
本发明的目的在于解决现有技术中存在的上述问题,提出了一种贝叶斯深度学习内存优化方法,通过改变由随机数组成的不确定性子矩阵的数量和规模,减小了由分解与存储策略带来的额外内存开销。
本发明的技术方案是:一种贝叶斯深度学习内存优化方法,包括以下步骤:
将特征矩阵β的维度由M×N变为αM×N,0<α≤1,此时的特征矩阵β被分成
Figure RE-GDA0002396023730000021
Figure RE-GDA0002396023730000022
并满足以下关系式:
Figure RE-GDA0002396023730000023
针对采样出的T个不确定性矩阵Hi(i=1,2,3,…T),每一个不确定性矩阵Hi被分为
Figure RE-GDA0002396023730000024
部分,包括
Figure RE-GDA0002396023730000025
将上述每一部分不确定性矩阵
Figure RE-GDA0002396023730000026
分别与对应的β,通过下述公式做内积,
z=<H,B>L
得到:
Figure RE-GDA0002396023730000027
其中i=1,2,3,…,T,从而得到z1至zT共T个完整的输出向量。
本发明中,通过下述公式得到β,
βij=σijxj(i=1,2,…,M;j=1,2,…,N)
其中,σ为标准方差,x为输入向量。
本发明的有益效果:
传统的预处理过程需要存储特征矩阵β和特征向量η,由于特征矩阵β具有与σ和μ相同的维度(均为M×N),因此现有的分解与存储策略会使得内存开销增加约50%;
而采用本发明所述的贝叶斯深度学习内存优化方法,可以有效减小存储特征矩阵的空间,存储空间由原来的M×N变为αM×N,通过该方法可以将分解与存储策略带来的额外内存开销从50%降为a·50%。
附图说明
图1(a)是神经网络示意图;
图1(b)是贝叶斯神经网络示意图;
图2是基于分解与存储策略的贝叶斯深度学习推理过程的数据流图;
图3是基于分解与存储策略的贝叶斯神经网络标准计算流程;
图4是实施例1中基于分解与存储策略的贝叶斯神经网络内存友好型计算流程。
具体实施方式
下面结合附图和实施例对本发明作进一步的说明。
本发明所述的基于分解与存储策略的贝叶斯深度学习内存优化方法包括以下步骤:
计算平台硬件资源的限制决定了可以支持αT个神经网络前向传播并行执行,其中0<α≤1。在计算过程中,每次可以支持
Figure RE-GDA0002396023730000031
个神经网络的计算,所以T个神经网络的前向传播需要分为α次,硬件平台每次会产生αTMN个随机数。
因此,在本方法中,首先,经下述公式(1)得到β,
βij=σijxj(i=1,2,…,M;j=1,2,…,N) (1)。
将特征矩阵β的维度由M×N变为αM×N,此时的特征矩阵β被分成了
Figure RE-GDA0002396023730000032
Figure RE-GDA0002396023730000033
并满足以下关系式:
Figure RE-GDA0002396023730000034
同时,针对采样出的T个不确定性矩阵Hi(i=1,2,3,…T),每一个不确定性矩阵Hi可以被分为
Figure RE-GDA0002396023730000041
Figure RE-GDA0002396023730000042
部分。
第二步,将上述每一部分不确定性矩阵
Figure RE-GDA0002396023730000043
分别与对应的β,即
Figure RE-GDA0002396023730000044
Figure RE-GDA0002396023730000045
通过公式(2)做内积,
z=<H,B>L (2)
得到:
Figure RE-GDA0002396023730000046
其中i=1,2,3,…,T,因此可以得到z1至zT这T个完整的输出向量。在该方法中,β的维度始终为αM×N,并不是现有技术中采用的M×N维度。
与现有的方法在于,该内存优化方法中每一轮计算产生T个规模为
Figure RE-GDA0002396023730000047
的子向量,经过
Figure RE-GDA0002396023730000048
次迭代后,得到T个完整的输出向量。在本方法中,我们只要开辟αM×N大小的空间存储特征矩阵,从而可以将分解与存储策略带来的额外内存开销从50%降为α*50%。
本专利基于单层神经网络进行分析,但同样可以应用到多层神经网络中,在Hybrid-BNN 和DM-BNN两种深度学习方法中,该方法均可以起到效果。
实施例1
如图4所示,本实施例中,
Figure RE-GDA0002396023730000049
特征矩阵β的维度由原来的M×N变成了
Figure RE-GDA00023960237300000410
此时的特征矩阵β被分成了β1,β2,β3,β4四部分,满足以下关系式;
Figure RE-GDA00023960237300000411
同时,采样出的T个不确定性矩阵Hi(i=1,2,…,T),每一个不确定性矩阵也可以被分为
Figure RE-GDA0002396023730000051
四部分,每一部分分别与对应的β做内积,
Figure RE-GDA0002396023730000052
便可得到z1至zT这T个相对应的输出。与现有的方法不同,该方法中每一轮计算产生T 个规模为
Figure RE-GDA0002396023730000053
的子向量,经过4次迭代后,得到T个完整的输出向量。

Claims (2)

1.一种贝叶斯深度学习内存优化方法,其特征在于:包括以下步骤:
将特征矩阵β的维度由M×N变为αM×N,0<α≤1,此时的特征矩阵β被分成
Figure FDA0002298340630000011
Figure FDA0002298340630000012
并满足以下关系式:
Figure FDA0002298340630000013
针对采样出的T个不确定性矩阵Hi(i=1,2,3,…T),每一个不确定性矩阵Hi被分为
Figure FDA0002298340630000014
部分,包括
Figure FDA0002298340630000015
将上述每一部分不确定性矩阵
Figure FDA0002298340630000016
分别与对应的β,通过下述公式做内积,
z=<H,B>L
得到:
Figure FDA0002298340630000017
其中i=1,2,3,…,T,从而得到z1至zT共T个完整的输出向量。
2.根据权利要求1所述的贝叶斯深度学习内存优化方法,其特征在于:通过下述公式得到β,
βij=σijxj(i=1,2,…,M;j=1,2,…,N)
其中,σ为标准方差,x为输入向量。
CN201911211743.2A 2019-12-02 2019-12-02 贝叶斯深度学习内存优化方法 Pending CN110991639A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911211743.2A CN110991639A (zh) 2019-12-02 2019-12-02 贝叶斯深度学习内存优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911211743.2A CN110991639A (zh) 2019-12-02 2019-12-02 贝叶斯深度学习内存优化方法

Publications (1)

Publication Number Publication Date
CN110991639A true CN110991639A (zh) 2020-04-10

Family

ID=70089036

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911211743.2A Pending CN110991639A (zh) 2019-12-02 2019-12-02 贝叶斯深度学习内存优化方法

Country Status (1)

Country Link
CN (1) CN110991639A (zh)

Similar Documents

Publication Publication Date Title
Liu et al. Dynamic sparse training: Find efficient sparse network from scratch with trainable masked layers
CN110059878B (zh) 基于cnn lstm光伏发电功率预测模型及其构建方法
Yang et al. Feed-forward neural network training using sparse representation
WO2020019236A1 (en) Loss-error-aware quantization of a low-bit neural network
US20190034784A1 (en) Fixed-point training method for deep neural networks based on dynamic fixed-point conversion scheme
CN113905391B (zh) 集成学习网络流量预测方法、系统、设备、终端、介质
Yang et al. Online sequential echo state network with sparse RLS algorithm for time series prediction
CN107729999A (zh) 考虑矩阵相关性的深度神经网络压缩方法
CN107679617A (zh) 多次迭代的深度神经网络压缩方法
CN111985523A (zh) 基于知识蒸馏训练的2指数幂深度神经网络量化方法
Ye et al. Cascaded GMDH-wavelet-neuro-fuzzy network
CN113190688A (zh) 基于逻辑推理和图卷积的复杂网络链接预测方法及系统
CN113361685B (zh) 一种基于学习者知识状态演化表示的知识追踪方法及系统
CN111353534B (zh) 一种基于自适应分数阶梯度的图数据类别预测方法
CN112215353A (zh) 一种基于变分结构优化网络的通道剪枝方法
CN112766603A (zh) 一种交通流量预测方法、系统、计算机设备及存储介质
CN114117945B (zh) 基于用户-服务交互图的深度学习云服务QoS预测方法
Oyedotun et al. Training very deep neural networks: Rethinking the role of skip connections
KR20210039921A (ko) 신경망 모델을 최적화하도록 구성된 심층 신경망 시스템의 동작 방법
CN108009635A (zh) 一种支持增量更新的深度卷积计算模型
Hajimolahoseini et al. Strategies for applying low rank decomposition to transformer-based models
CN116415177A (zh) 一种基于极限学习机的分类器参数辨识方法
CN110991639A (zh) 贝叶斯深度学习内存优化方法
CN115619563A (zh) 一种基于神经网络的股票价格分析方法
WO2023015674A1 (zh) 一种对深度卷积神经网络进行多位宽量化的方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination