[发明专利]应用于Fastformer神经网络的硬件架构及其计算方法在审
申请号: | 202111448567.1 | 申请日: | 2021-12-01 |
公开(公告)号: | CN114330682A | 公开(公告)日: | 2022-04-12 |
发明(设计)人: | 路思远;王中风 | 申请(专利权)人: | 南京风兴科技有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063;G06F17/16;G06F17/15 |
代理公司: | 北京弘权知识产权代理有限公司 11363 | 代理人: | 逯长明;许伟群 |
地址: | 210032 江苏省南京市*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 应用于 fastformer 神经网络 硬件 架构 及其 计算方法 | ||
1.一种应用于Fastformer神经网络的硬件架构,其特征在于,包括:数据存储模块、读取缓冲模块、写入缓冲模块、计算模块以及控制模块;
所述数据存储模块用于接收并存储待计算的输入矩阵,以及用于存储预先训练好的参数,以及用于存储所述计算模块在运算过程中产生的中间数据、以及存储所述硬件架构的计算结果;所述数据存储模块的输入端为整个硬件架构的输入接口,以及接至所述写入缓冲模块的输出端;所述数据存储模块的输出端接至所述读取缓冲模块的输入端,以及作为所述硬件架构的输出接口;
所述读取缓冲模块的输入端还接至所述计算模块的输出端,所述读取缓冲模块的输出端接至所述计算模块的输入端;
所述写入缓冲模块的输入端接至所述计算模块的输出端;
所述计算模块包括线性计算子模块、非线性计算子模块和中间存储子模块;所述线性计算子模块用于执行包括向量矩阵乘法、矩阵加法、逐元素积的线性运算,所述非线性子模块用于执行归一化指数函数运算,所述中间存储子模块用于接收所述非线性子模块的计算结果并传输至所述线性计算子模块;其中,所述线性计算子模块的输入端分别接至所述读取缓冲区的输出端和所述中间存储子模块的输出端,输出端分别接至所述读取缓冲区的输入端、所述写入缓冲模块的输入端以及非线性计算子模块的输入端;所述非线性计算子模块的输出端接至所述中间存储子模块的输入端;
所述控制模块分别接至所述数据存储模块、所述读取缓冲模块、所述写入缓冲模块以及所述计算模块中的所述线性计算子模块和所述非线性计算子模块。
2.根据权利要求1所述的一种应用于Fastformer神经网络的硬件架构,其特征在于,所述控制模块用于执行以下操作:
控制所述数据存储模块、所述读取缓冲模块和所述线性计算子模块对输入矩阵进行查询线性层的运算操作,得到查询矩阵并分别输出至所述读取缓冲模块和所述写入缓冲模块;所述写入缓冲模块将所述查询矩阵传输至所述数据存储模块;
控制所述数据存储模块、所述读取缓冲模块、所述线性计算子模块对所述查询矩阵进行向量矩阵乘法运算,得到中间查询向量并传输至所述非线性计算子模块;
控制所述非线性计算子模块对所述中间查询向量进行归一化指数函数运算,得到归一化查询向量并输出至所述中间存储子模块;同时,控制所述数据存储模块、所述读取缓冲模块和所述线性计算子模块对输入矩阵进行注意力键线性层运算操作,得到键矩阵并输出至所述写入缓冲模块;所述写入缓冲模块将所述键矩阵传输至所述数据存储模块;
控制所述线性计算子模块、所述中间存储子模块、所述数据存储模块、所述读取缓冲模块对所述归一化查询向量和所述查询矩阵进行向量矩阵乘法运算,得到全局查询向量,并输出至所述读取缓冲模块;
控制所述读取缓冲模块、所述线性计算子模块和所述数据存储模块对所述全局查询向量和所述键矩阵进行逐元素积得到中间键矩阵,对所述中间键矩阵进行向量矩阵乘法运算得到中间键向量并输出至所述非线性计算子模块,并同时控制线性计算子模块将所述中间键矩阵输出至所述写入缓冲模块;所述写入缓冲模块将所述中间键矩阵存储至所述数据存储模块;
控制所述非线性计算子模块对所述中间键向量进行归一化指数函数运算,得到归一化键向量并输出至所述中间存储子模块;同时,控制所述数据存储模块、所述读取缓冲模块和所述线性计算子模块对输入矩阵进行注意力值线性层运算操作,得到值矩阵并输出至所述写入缓冲模块;所述写入缓冲模块将所述值矩阵传输至所述数据存储模块;
控制所述线性计算子模块、所述中间存储子模块、所述数据存储模块、所述读取缓冲模块对所述归一化键向量和所述键矩阵进行向量矩阵乘法运算,得到全局键向量并输出至所述读取缓冲模块;
控制所述线性计算子模块、所述读取缓冲模块、所述数据存储模块对所述值矩阵、所述全局键向量进行逐元素积运算,并将运算结果进行线性层运算操作,得到全局值矩阵;将所述全局值矩阵与所述查询矩阵执行加法运算,得到神经网络的输出矩阵并输出所述写入缓冲模块;所述写入缓冲模块将所述输出矩阵传输至所述数据存储模块。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京风兴科技有限公司,未经南京风兴科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111448567.1/1.html,转载请声明来源钻瓜专利网。