HE-LSTM网络结构及其对应的FPGA硬件加速器制造技术

技术编号:27846760 阅读:21 留言:0更新日期:2021-03-30 12:56
本发明专利技术公开了一种HE

【技术实现步骤摘要】
HE

LSTM网络结构及其对应的FPGA硬件加速器


[0001]本专利技术涉及神经网络硬件加速领域,提出了一种新型的LSTM网络结构(HE

LSTM)及其对应的FPGA加速器。

技术介绍

[0002]循环神经网络(RNNs)是一类用于处理序列信号的神经网络,已经被广泛应用在机器翻译、电影评论情感分析和其他与自然语言相关的应用中。然而,传统的RNN存在梯度消失和梯度爆炸的问题。为了解决这些问题,研究人员提出了一种RNN的变体,叫Long Short

Term Memory(LSTM),它通过引入三个门控单元(包括遗忘门,输入门,和输出门)和一个存储单元(记忆细胞)来捕获序列信号的长期依赖。因此,LSTM网络比传统RNN获得更高的精度和适应性。常用的LSTM结构表达式如下:
[0003]f
t
=σ(W
fx
x
t
+W
fh
h
t
‑1+b
f
)
[0004]i
t
=σ(W
ix
x
t
+W
ih
h
t
‑1+b
i
)
[0005]o
t
=σ(W
ox
x
t
+W
oh
h
t
‑1+b
o
)
[0006][0007][0008]h
t
=o
t
*tanh(c
t
)
[0009]i
t
是输入门,它决定了有多少新信息添加到内存单元;f
t
是遗忘门,由它决定多少以前的信息都被遗忘了;o
t
为输出门,决定了记忆细胞c
t
与h
t
的输出的关系;是候选记忆单元。W为权值矩阵,权重矩阵与向量间的运算为矩阵向量乘法运算,*表示向量与向量的点乘。b是偏置,σ和tanh是两个非线性激活函数。
[0010]尽管LSTM解决了传统RNN的梯度消失和梯度爆炸的问题,但由于LSTM引入了多个门控单元,因此具有更多的参数。在CPU上直接运行LSTM算法的效果并不好。因此需要设计专用的硬件加速电路去加速LSTM的推理过程。目前常用的RNN加速硬件平台有GPU,FPGA和ASIC。在LSTM网络中,绝大多数的运算都是矩阵和向量的乘法运算或者向量间的点乘运算。尽管GPU运算LSTM算法时的性能强于CPU,但GPU的功耗较高,因此不适用于对最高功耗有限制的场景。ASIC虽然能效比高,但是ASIC的灵活性较低,不适合神经网络这种算法更新较快的结构。FPGA既有较高的灵活性,又有低功耗的特点,因此常被用于实现RNN加速。不过由于FPGA资源有限,因此较大的LSTM网络难以直接在FPGA上运行。因此,需要引入一些优化算法,以减少LSTM网络中大量的冗余参数。
[0011]为了减少模型的参数数量,研究者提出了很多方法,如剪枝,结构化压缩,分段线性函数替代非线性激活函数,流水线架构,近似计算等。此外,研究人员还提出了一些新的LSTM变体,如Coupled

Gate LSTM,ELSTM,GRU等。尽管LSTM的这些变体减少了很多参数,但它们仍然有太多的冗余参数,这使得它很难在一个硬件资源有限的平台上运行。为满足日益增长的高效能RNN加速器的需求,一种参数更少的LSTM网络结构的研究已经成为研究的
热点方向之一。

技术实现思路

[0012]专利技术目的:为了克服现有技术中存在的不足,本专利技术提供一种HE

LSTM网络结构及FPGA硬件加速器,传统的LSTM的权重矩阵较多,含有大量的冗余参数,因此LSTM单元结构的优化还有很大的研究空间。LSTM通过引入三个门控单元和记忆细胞来捕捉序列信号的长期依赖,输入门控制信息输入的同时,遗忘门控制记忆细胞对过去的信息选择性的遗忘。因此,输入门和遗忘门具有某种函数关系,经过理论推导和实验证明,得出i
t
=1

f
t
。不仅如此,传统LSTM的遗忘门f
t
的公式为f
t
=σ(W
fx
x
t
+W
fh
h
t
‑1+b
f
),我们认为,神经网络完全可以由前一个时间步的输出h
t
‑1计算得到遗忘门的大小,而W
fx
x
t
为冗余项。因此新的HE

LSTM计算遗忘门的公式为f
t
=σ(W
fh
h
t
‑1+b
f
)。本专利技术在FPGA上搭建HE

LSTM网络,与相同架构的传统LSTM网络结构相比,在运算速度相同的情况下,硬件资源的消耗节省了37%左右,并且该结构对模型精度的影响几乎可以忽略不计。本专利技术大大减少了传统LSTM的网络的冗余参数,使FPGA能更高效的完成神经网络的推理阶段的运算。
[0013]技术方案:为实现上述目的,本专利技术采用的技术方案为:
[0014]一种HE

LSTM网络结构,包括遗忘门、输出门和记忆细胞,表达式如下所示:
[0015]f
t
=σ(W
fh
h
t
‑1+b
f
)
[0016]o
t
=σ(W
ox
x
t
+W
oh
h
t
‑1+b
o
)
[0017][0018][0019]h
t
=o
t
*tanh(c
t
)
[0020]其中,f
t
是遗忘门,o
t
为输出门,是候选记忆单元,c
t
表示记忆细胞,h
t
表示当前输出,W为权值矩阵,W
ox
表示输入向量x到输出门的权重矩阵,W
cx
表示输入向量x到候选记忆细胞的权重矩阵,W
fh
表示前一个时间步的输出到遗忘门的权重矩阵,W
oh
表示前一个时间步的输出到输出门的权重矩阵,W
ch
表示前一个时间步的输出到候选记忆细胞的权重矩阵,b是偏置,b
f
表示计算遗忘门时的偏置,b
o
表示计算输出门时的偏置,b
c
表示计算候选记忆细胞时的偏置,σ是非线性激活函数一,tanh是非线性激活函数二,x
t
表示当前网络的输入,t表示当前时间。
[0021]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种HE

LSTM网络结构,其特征在于:包括遗忘门、输出门和记忆细胞,表达式如下所示:f
t
=σ(W
fh
h
t
‑1+b
f
)o
t
=σ(W
ox
x
t
+W
oh
h
t
‑1+b
o
))h
t
=o
t
*tanh(c
t
)其中,f
t
是遗忘门,o
t
为输出门,是候选记忆单元,c
t
表示记忆细胞,h
t
表示当前输出,W为权值矩阵,W
ox
表示输入向量x到输出门的权重矩阵,W
cx
表示输入向量x到候选记忆细胞的权重矩阵,W
fh
表示前一个时间步的输出到遗忘门的权重矩阵,W
oh
表示前一个时间步的输出到输出门的权重矩阵,W
ch
表示前一个时间步的输出到候选记忆细胞的权重矩阵,b是偏置,b
f
表示计算遗忘门时的偏置,b
o
表示计算输出门时的偏置,b
c
表示计算候选记忆细胞时的偏置,σ是非线性激活函数一,tanh是非线性激活函数二,x
t
表示当前网络的输入,t表示当前时间。2.一种基于权利要求1所述HE

LSTM网络结构的使用方法,其特征在于,包括以下步骤:步骤1),对HE

LST...

【专利技术属性】
技术研发人员:刘伟强王正宽南国才
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1