[发明专利]神经网络运算装置和方法有效
申请号: | 201711360244.0 | 申请日: | 2017-12-15 |
公开(公告)号: | CN108205700B | 公开(公告)日: | 2021-07-30 |
发明(设计)人: | 不公告发明人 | 申请(专利权)人: | 上海寒武纪信息科技有限公司 |
主分类号: | G06N3/04 | 分类号: | G06N3/04;G06N3/063 |
代理公司: | 中科专利商标代理有限责任公司 11021 | 代理人: | 任岩 |
地址: | 201203 上海市浦东*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 神经网络 运算 装置 方法 | ||
本披露提供了一种神经网络运算装置及方法。其中,神经网络运算装置包括子矩阵划分模块,用于将卷积核矩阵作为第一矩阵,将每个子矩阵作为第二矩阵;矩阵元素存储模块,含多存储空间,用于按规则接收第一矩阵中的矩阵元素转换后的二进制数;符号运算模块,用于确定运算结果符号位;数值运算模块,用于将相应位置的矩阵元素相加,将相加结果左移i‑j位,得到运算中间结果;累加模块,用于将第1~i‑1个存储空间中的运算中间结果相加,得到第一矩阵与第二矩阵的乘加运算结果;卷积结果获取模块,用于按照滑动顺序,将所述多个乘加运算结果组成矩阵,作为卷积运算结果。
技术领域
本披露涉及数据处理技术领域,具体涉及一种神经网络运算装置,以及神经网络运算方法。
背景技术
对于神经网络领域,需要做大量乘加运算的操作。卷积操作作为其中一个经常使用的重要操作,也存在着存储资源与运算资源需求大的问题。
矩阵运算在各个研究领域的数据处理中有着广泛的应用。当处理数据非常庞大时,矩阵的存储及运算需要占用大量的存储资源和运算资源。
发明内容
本披露第一方面,提供一种神经网络运算装置,包括:
子矩阵划分模块,用于以卷积核矩阵为滑动窗口在神经元矩阵上滑动,每滑动一次,得到一个神经元矩阵中与卷积核矩阵规模相同的子矩阵,将卷积核矩阵作为第一矩阵,将每个子矩阵作为第二矩阵;
矩阵元素存储模块,包含多个存储空间,该多个存储空间用于按规则接收第一矩阵中的M×N个矩阵元素的M×N个二进制数,该规则为:所述多个存储空间的编号依次为第0个至第i-1个存储空间,i为所述二进制数的位宽,每个存储空间大小为K比特,K等于第一矩阵中的矩阵元素的个数且K=M×N,其中,第0个存储空间用于存储K个二进制数的符号位,第j个存储空间用于存储每个二进制数中第i-j+1位的比特,所述i、j、k、M和N均为正整数,并且,i≥2,1≤j≤i;
符号运算模块,用于将所述第0个存储空间中每个比特所表示的符号分别与第二矩阵中对应元素的符号进行异或运算,并将运算结果作为第二矩阵中对应元素的符号位;
数值运算模块,包括至少一个移位运算器和至少一个加法器,用于根据第j个存储空间中比特值为1的位所对应矩阵元素在矩阵中的位置,从第二矩阵中提取相应位置的矩阵元素,将所述相应位置的矩阵元素相加,将相加结果左移或右移i-j位,得到运算中间结果;
累加模块,用于将第1~i-1个存储空间中的运算中间结果相加,得到第一矩阵与第二矩阵的乘加运算结果;
卷积结果获取模块,用于按照滑动顺序,将所述多个乘加运算结果组成矩阵,作为卷积运算结果。
在进一步的实施方案中,所述矩阵元素存储模块中,第一矩阵中矩阵元素与每个所述存储空间中各个比特位的对应关系为:每个存储空间中第k个比特位分别存储第一矩阵中第m行第n列的矩阵元素的比特,其中,1≤k≤K,并且,k=(m-1)×N+n,N为第一矩阵的总列数,1≤m≤M,1≤n≤N。
在进一步的实施方案中,所述第一矩阵中矩阵元素与每个存储空间中各个比特位的对应关系为:第k个比特位存储卷积核矩阵A中第m行第n列的矩阵元素的比特,其中,1≤k≤K,并且,k=m+(n-1)×M,M为第一矩阵的总行数,1≤m≤M,1≤n≤N。
在进一步的实施方案中,所述数值运算模块根据所述对应关系从第二矩阵中对应元素所在位置提取相应的矩阵元素。
在进一步的实施方案中,所述数值运算模块还用于:当根据存储空间获取中间结果时,如存在相同位置矩阵元素加法操作时,则调取已计算的结果。
在进一步的实施方案中,还包括中间存储模块,用于存储0~i-1个存储空间中具有至少两个相同位的比特值为1时对应的第二矩阵元素相加后的结果,以供所述数值运算模块调取。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海寒武纪信息科技有限公司,未经上海寒武纪信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711360244.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:生成用于神经网络输出层的输出
- 下一篇:一种执行卷积计算的系统及方法