[发明专利]用于LSTM网络的硬件加速器有效
申请号: | 201810157774.3 | 申请日: | 2018-02-24 |
公开(公告)号: | CN110197262B | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 康君龙;李於彬 | 申请(专利权)人: | 赛灵思电子科技(北京)有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06N3/04 |
代理公司: | 北京展翼知识产权代理事务所(特殊普通合伙) 11452 | 代理人: | 屠长存 |
地址: | 100029 北京市朝阳区安定路*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 lstm 网络 硬件 加速器 | ||
1.一种用于双向长短期记忆网络的硬件加速器,包括:
LSTM计算模块,用于对T个有序输入x1,x2,x3,……,xT进行前向LSTM计算,得到分别对应于所述T个有序输入的T个第一输出y1f,y2f,y3f,……,y(T-2)f,y(T-1)f,yTf,并对所述T个有序输入xT,xT-1,xT-2,……,x3,x2,x1进行后向LSTM计算,得到分别对应于所述T个有序输入的T个第二输出yTb,y(T-1)b,y(T-2)b,……,y3b,y2b,y1b,其中,T为正整数;
第一缓存,用于缓存所述第一输出y1f,y2f,y3f,……,y(T-2)f,y(T-1)f,yTf和所述第二输出yTb,y(T-1)b,y(T-2)b,……,y3b,y2b,y1b;以及
组合模块,用于对所述第一缓存中缓存的对应于同一个输入xt的第一输出ytf和第二输出ytb执行组合运算,以得到对应于所述同一个输入xt的组合输出yt,其中,t为1至T的正整数。
2.根据权利要求1所述的硬件加速器,还包括:
控制模块,用于控制所述LSTM计算模块和/或所述第一缓存和/或所述组合模块的运行。
3.根据权利要求2所述的硬件加速器,其中,
所述控制模块响应于所述第一缓存中存在对应于同一个输入xt的第一输出ytf和第二输出ytb,执行控制以从所述第一缓存向所述组合模块发送所述第一输出ytf和所述第二输出ytb。
4.根据权利要求2所述的硬件加速器,其中,
所述LSTM计算模块包括多个级联计算子模块和多个级间缓存,
所述级间缓存分别用于缓存上一级计算子模块的级间输出,以作为下一级计算子模块的级间输入。
5.根据权利要求4所述的硬件加速器,其中,
所述控制模块响应于所述级间缓存中存在用于下一级计算子模块的级间输入,执行控制以从所述级间缓存向所述下一级计算子模块发送相应的级间输入。
6.根据权利要求4或5所述的硬件加速器,其中,所述多个级联计算子模块包括以下中的至少一个:
矩阵乘法模块,用于执行矩阵与向量之间的矩阵乘法操作,以得到矩阵乘法结果,其中,所述输入、所述第一输出、所述第二输出都是向量;
加法树模块,用于对矩阵乘法结果进行累加操作,以得到累加结果;
功能函数模块,用于对累加结果和/或逐点相乘结果进行功能函数运算,以得到功能函数运算结果;以及
逐点相乘运算模块,用于对功能函数运算结果进行逐点相乘运算。
7.根据权利要求6所述的硬件加速器,其中,
所述LSTM计算模块包括多个并联的矩阵乘法模块,用于并行执行所述乘法操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于赛灵思电子科技(北京)有限公司,未经赛灵思电子科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810157774.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于LRU的卷积神经网络的训练方法
- 下一篇:集成电路芯片装置及相关产品