应用于长短时记忆神经网络的计算装置和计算方法制造方法及图纸

技术编号:18895723 阅读:17 留言:0更新日期:2018-09-08 11:32
本发明专利技术提供一种应用于长短时记忆神经网络的计算装置和计算方法。该计算装置包括:计算单元,用于执行长短时记忆神经网络的遗忘门函数、输入门函数、输出门函数以及记忆单元状态的计算;向量计算单元,用于基于长短时记忆神经网络的上一时刻的记忆单元状态值向量和计算获得的当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量获得长短时记忆神经网络的当前时刻的输出值向量以及当前时刻的记忆单元状态值向量。根据本发明专利技术的计算方法和计算装置能够提高长短时记忆神经网络的资源利用率和计算效率。

Calculation device and calculation method applied to long and short time memory neural network

The invention provides a calculating device and a calculation method applied to long and short time memory neural network. The calculating unit includes: calculating unit, which is used to calculate forgetting gate function, input gate function, output gate function and memory unit state of long-short memory neural network; vector calculating unit, which is used to calculate the state value vector of the memory unit at the last moment based on long-short memory neural network and to calculate the current state of the memory unit The forgetting threshold vectors, the input threshold vectors, the output threshold vectors and the instant state value vectors of the memory units at the current time are used to obtain the output value vectors of the current time and the state value vectors of the memory units at the current time. The calculation method and device according to the present invention can improve the resource utilization and calculation efficiency of the long-short memory neural network.

【技术实现步骤摘要】
应用于长短时记忆神经网络的计算装置和计算方法
本专利技术涉及深度学习
,尤其涉及一种应用于长短时记忆神经网络的计算装置和计算方法。
技术介绍
长短时记忆神经网络(LSTM)是一种特殊的循环神经网络,具有能够学习的长期依赖的能力,可应用于学习语言翻译、机器人控制、图像分析、文档摘要、语音识别、手写识别等。LSTM在目标数据处理过程中,可记住很长时间的信息。在LSTM应用过程中,通常是在算法中加入一个具有判断能力的处理单元,该处理单元中包含输入门、遗忘门与输出门,依据规则判断输入信息是否有用,将符合算法认证的信息保留,而将不符合的信息通过遗忘门遗忘,LSTM计算过程的主要占用部分为各门值向量的乘累加运算与各层的迭代运算过程,该过程主要是将门值向量与权重进行乘累加等处理,将结果传输作为下一层网络的输入,并执行相同的运算。然而,在现有的LSTM网络计算过程中,由于通常采用简单的门电路结构来进行计算,从而导致向量与权重的乘累加过程与部分门值向量的运算存在串联关系,计算资源的利用率与数据处理的快速性难以同时保持,不可避免的出现计算资源的闲置状态,降低了资源利用率,此外,LSTM网络中存在访存次数高和运行功耗低的问题。因此,需要对现有技术进行改进,以提高LSTM神经网络的数据处理的实时性和计算资源利用率,并降低计算功耗,以将LSTM神经网络推向例如智能穿戴、智能机器人、自动驾驶以及模式识别等更广泛的领域。
技术实现思路
本专利技术的目的在于克服上述现有技术的缺陷,提供一种应用于LSTM网络中矩阵运算和向量运算的计算装置。根据本专利技术的第一方面,提供了一种应用于长短时记忆神经网络的计算装置。该计算装置包括:计算单元,用于执行长短时记忆神经网络的遗忘门函数、输入门函数、输出门函数以及记忆单元状态的计算,获得当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量,其中,所述当前时刻的记忆单元的即时状态值向量用于反映长短时记忆神经网络的短期记忆;向量计算单元,用于基于长短时记忆神经网络的上一时刻的记忆单元状态值向量和所述当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量获得长短时记忆神经网络的当前时刻的输出值向量以及当前时刻的记忆单元状态值向量,其中,所述上一时刻的记忆单元状态值向量用于反映长短时记忆神经网络的长期记忆。在一个实施例中,本专利技术的计算装置包括四个所述计算单元,其并行执行相关计算,其中,第一计算单元执行遗忘门函数的计算,得到所述当前时刻的遗忘门值向量;第二计算单元执行输入门函数的计算,得到所述当前时刻的输入门值向量;第三计算单元执行记忆单元状态的计算,得到所述当前时刻的记忆单元的即时状态值向量;第四计算单元执行输出门函数的计算,得到所述当前时刻的输出门值向量。在一个实施例中,所述向量计算单元包括:第一乘法单元,用于接收所述上一时刻的记忆单元状态值向量以及来自于所述第一计算单元的所述当前时刻的遗忘门值向量;第二乘法单元,用于接收来自于所述第二计算单元的所述当前时刻的输入门值向量和所述第三计算单元的所述当前时刻的记忆单元的即时状态值向量;加法单元,用于接收来自于所述第一乘法单元和所述第二乘法单元的输出并执行相加运算,获得所述当前时刻的记忆单元状态值向量;激活处理单元,用于对来自于所述加法单元的所述当前时刻的记忆单元状态值向量进行激活处理;第三乘法单元,用于接收来自于所述激活处理单元的结果以及来自于所述第四计算单元的所述当前时刻的输出门值向量,获得所述长短时记忆神经网络的当前时刻的输出值向量。在一个实施例中,所述激活处理单元采用tanh激活函数进行处理。在一个实施例中,所述四个计算单元具有相同的电路结构。在一个实施例中,所述计算单元包括:多个乘法器,用于执行长短时记忆网络的权重矩阵和输入向量的对应元素的相乘操作;由多个加法器构成的加法树结构,用于对所述多个乘法器的结果执行相加操作,以获得所述权重矩阵和输入向量的相乘结果;累加器,用于对所述加法器结构获得的结果进行累加;激活函数处理单元,用于对所述累加器的结果进行激活处理。在一个实施例中,所述激活函数处理单元采用sigmoid函数进行激活处理。根据本专利技术的第二方面,提供了一种应用于长短时记忆神经网络的计算方法,该计算方法根据本专利技术的计算装置来执行长短时记忆神经网络的相关计算,以获得当前时刻的输出值向量以及当前时刻的记忆单元状态值向量,在本专利技术的计算方法中,所述计算装置中的计算单元执行下列计算:ft=σ(Wf·xt+Uf·ht-1+bf)it=σ(Wi·xt+Ui·ht-1+bi)ot=σ(Wo·xt+Uo·ht-1+bo)所述计算装置中的向量计算单元执行下列计算:ht=ot⊙tanh(ct)其中,“·”表示矩阵和向量的乘法操作,“⊙”表示向量和向量的乘法操作,“σ”表示sigmoid激活操作,“tanh”表示tanh激活操作,Wf、Uf是遗忘门的权重矩阵,bf是遗忘门的偏置项,Wi和Ui是输入门的权重矩阵,bi是输入门的偏置项,Wc和Uc是记忆单元状态的权重矩阵,bc是记忆单元状态的偏置项,Wo和Uo是输出门的权重矩阵,bo是输出门的偏置项,xt是当前时刻的输入向量,ht-1是长短时记忆神经网络上一时刻的输出值向量,ht是长短时记忆神经网络当前时刻的输出值向量,ft是当前时刻的遗忘门值向量,it是当前时刻的输入门值向量,ot是当前时刻的输出门值向量,是当前时刻的记忆单元的即时状态值向量,ct-1是上一时刻的记忆单元状态值向量,ct是计算的当前时刻的记忆单元状态值向量。根据本专利技术的第三方面,提供了一种长短时记忆神经网络处理器。该神经网络处理器包括:本专利技术提供的计算装置,用于执行长短时记忆网络的相关计算;存储单元,用于存储数据和指令;控制单元,用于根据保存在所述存储单元的指令来控制所述计算装置的相关计算和数据的输入输出。与现有技术相比,本专利技术的优点在于:针对LSTM网络中矩阵运算和向量运算的特点,提供了一种适合于执行LSTM中相关计算的装置,提高了资源利用率并降低了计算功耗。附图说明以下附图仅对本专利技术作示意性的说明和解释,并不用于限定本专利技术的范围,其中:图1示出了现有技术中长短时记忆神经网络的结构示意图;图2示出了根据本专利技术一个实施例的长短时记忆神经网络的计算装置的示意图;图3示出了图2的计算装置中计算单元的结构示意图;图4示出了基于本专利技术的计算装置的神经网络处理器的结构示意图。具体实施方式为了使本专利技术的目的、技术方案、设计方法及优点更加清楚明了,以下结合附图通过具体实施例对本专利技术进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本专利技术,并不用于限定本专利技术。图1示出了现有技术中典型的长短时记忆网络的结构示意图,该典型结构主要由输入门(it表示t时刻的输入门值向量或门函数)、输出门(ot表示t时刻的输出门值向量或门函数)、遗忘门(ft表示t时刻的遗忘门值向量或门函数)和记忆单元(ct表示记忆单元在t时刻的状态值向量)组成。由图1可以看出,在t时刻,LSTM有三个输入值,分别是当前时刻的网络的输入值向量xt、上一时刻LSTM的输出值向量ht-1以及上一时刻记本文档来自技高网...

【技术保护点】
1.一种应用于长短时记忆神经网络的计算装置,包括:计算单元,用于执行长短时记忆神经网络的遗忘门函数、输入门函数、输出门函数以及记忆单元状态的计算,获得当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量,其中,所述当前时刻的记忆单元的即时状态值向量用于反映长短时记忆神经网络的短期记忆;向量计算单元,用于基于长短时记忆神经网络的上一时刻的记忆单元状态值向量和所述当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量获得长短时记忆神经网络的当前时刻的输出值向量以及当前时刻的记忆单元状态值向量,其中,所述上一时刻的记忆单元状态值向量用于反映长短时记忆神经网络的长期记忆。

【技术特征摘要】
1.一种应用于长短时记忆神经网络的计算装置,包括:计算单元,用于执行长短时记忆神经网络的遗忘门函数、输入门函数、输出门函数以及记忆单元状态的计算,获得当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量,其中,所述当前时刻的记忆单元的即时状态值向量用于反映长短时记忆神经网络的短期记忆;向量计算单元,用于基于长短时记忆神经网络的上一时刻的记忆单元状态值向量和所述当前时刻的遗忘门值向量、当前时刻的输入门值向量、当前时刻的输出门值向量和当前时刻的记忆单元的即时状态值向量获得长短时记忆神经网络的当前时刻的输出值向量以及当前时刻的记忆单元状态值向量,其中,所述上一时刻的记忆单元状态值向量用于反映长短时记忆神经网络的长期记忆。2.根据权利要求1所述的计算装置,其特征在于,包括四个所述计算单元,其并行执行相关计算,其中,第一计算单元执行遗忘门函数的计算,得到所述当前时刻的遗忘门值向量;第二计算单元执行输入门函数的计算,得到所述当前时刻的输入门值向量;第三计算单元执行记忆单元状态的计算,得到所述当前时刻的记忆单元的即时状态值向量;第四计算单元执行输出门函数的计算,得到所述当前时刻的输出门值向量。3.根据权利要求2所述的计算装置,其特征在于,所述向量计算单元包括:第一乘法单元,用于接收所述上一时刻的记忆单元状态值向量以及来自于所述第一计算单元的所述当前时刻的遗忘门值向量;第二乘法单元,用于接收来自于所述第二计算单元的所述当前时刻的输入门值向量和所述第三计算单元的所述当前时刻的记忆单元的即时状态值向量;加法单元,用于接收来自于所述第一乘法单元和所述第二乘法单元的输出并执行相加运算,获得所述当前时刻的记忆单元状态值向量;激活处理单元,用于对来自于所述加法单元的所述当前时刻的记忆单元状态值向量进行激活处理;第三乘法单元,用于接收来自于所述激活处理单元的结果以及来自于所述第四计算单元的所述当前时刻的输出门值向量,获得所述长短时记忆神经网络的当前时刻的输出值向量。4.根据权利要求3所述的计算装置,其特征在于,所述激活处理单元采用tanh激活函数进行处理。5.根据权利要求2所述的计算装置,其特征在于,所述四个计算...

【专利技术属性】
技术研发人员:韩银和许浩博王颖
申请(专利权)人:中国科学院计算技术研究所
类型:发明
国别省市:北京,11

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

1