[发明专利]卷积神经网络中用于稀疏张量的灵活加速器在审
申请号: | 202080081131.0 | 申请日: | 2020-05-29 |
公开(公告)号: | CN114730374A | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | K·古纳姆;A·库尔卡尼;Z·班迪克 | 申请(专利权)人: | 西部数据技术公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 李艳;刘芳 |
地址: | 美国加利*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 卷积 神经网络 用于 稀疏 张量 灵活 加速器 | ||
1.一种系统,所述系统包括:
乘法电路,所述乘法电路包括多个乘法器,所述多个乘法器中的每个乘法器被配置为接收数据值和权重值以在机器学习应用程序的卷积操作中生成乘积值;
累加器,所述累加器被配置为从所述多个乘法器中的每个乘法器接收所述乘积值;和
寄存器组,所述寄存器组被配置为存储所述卷积操作的输出,
其中所述累加器被进一步配置为接收存储在所述寄存器组中的值的一部分,并且将值的所接收到的部分与所述乘积值组合以生成组合值;并且
其中所述寄存器组被进一步配置为用所述组合值替换值的所述部分。
2.根据权利要求1所述的系统,其中所述寄存器组包括多个行寄存器和多个列寄存器,所述多个行寄存器被配置为在行方向上移位,所述多个列寄存器被配置为在列方向上移位。
3.根据权利要求1至2中任一项所述的系统,其中将值的所接收到的部分与所述乘积值组合包括将值的所接收到的部分中的每个值与所述乘积值中的对应乘积值相加。
4.根据权利要求1至3中任一项所述的系统,还包括可重新配置的树加法器,所述可重新配置的树加法器被配置为接收所述乘积值并且组合成组的所述乘积值。
5.根据权利要求1至4中任一项所述的系统,其中所述数据值是多个子特征映射图中的一个子特征映射图的一部分,所述多个子特征映射图是从输入特征映射图生成的。
6.根据权利要求1至5中任一项所述的系统,还包括第一多级互联网络,所述第一多级互联网络被配置为从所述累加器接收所述组合值。
7.根据权利要求6所述的系统,其中所述第一多级互连网络被配置为对所述组合值进行分类并且将所述分类的组合值写入向量累加器寄存器中。
8.根据权利要求7所述的系统,还包括第二多级互联网络,所述第二多级互联网络被配置为从所述向量累加器寄存器读取值的子集并将值的所述子集发送到所述累加器。
9.根据权利要求7所述的系统,其中所述向量累加器寄存器被进一步配置为在将值的所述部分发送到所述累加器之前从所述寄存器组接收值的所述部分。
10.根据权利要求6所述的系统,还包括第三多级互联网络,所述第三多级互联网络被配置为从所述多个乘法器接收所述乘积值,并且基于所述乘积值中的每个乘积值的索引值将所述乘积值中的至少一些乘积值发送到所述累加器。
11.一种方法,所述方法包括:
由机器学习应用程序中的处理器将数据值和权重值输入到多个乘法器中的每个乘法器中,以在卷积操作的多次迭代中的每次迭代中生成多个乘积值;
由所述处理器在所述多次迭代中的每次迭代中将所述多个乘积值中的每个乘积值和累加器中的多个累加器值中的一个累加器值组合以生成多个组合值,其中所述多个累加器值是从寄存器组接收的;以及
由所述处理器在所述多次迭代中的每次迭代中用所述寄存器组中的所述多个组合值替换所述多个累加器值。
12.根据权利要求11所述的方法,其中在所述多次迭代中的最后一次迭代之后的所述寄存器组中的值提供对从输入特征映射图生成的输入子特征映射图进行的所述卷积操作的输出。
13.根据权利要求11至12中任一项所述的方法,其中所述多个乘法器中的每个乘法器接收相同权重值。
14.根据权利要求11至12中任一项所述的方法,其中所述多个乘法器中的至少一个乘法器接收与由所述多个乘法器中的剩余乘法器接收的所述权重值不同的所述权重值。
15.根据权利要求11至14中任一项所述的方法,还包括由所述处理器在所述多次迭代中的最后一次迭代之后将所述寄存器组中的值移位,以获得输出子特征映射图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西部数据技术公司,未经西部数据技术公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202080081131.0/1.html,转载请声明来源钻瓜专利网。