[发明专利]卷积神经网络的定点运算方法、装置、设备和存储介质在审
申请号: | 201811302449.8 | 申请日: | 2018-11-02 |
公开(公告)号: | CN109409514A | 公开(公告)日: | 2019-03-01 |
发明(设计)人: | 熊祎;易松松 | 申请(专利权)人: | 广州市百果园信息技术有限公司 |
主分类号: | G06N3/063 | 分类号: | G06N3/063 |
代理公司: | 北京品源专利代理有限公司 11332 | 代理人: | 孟金喆 |
地址: | 511442 广东省广州市番禺区南村镇万博*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 寄存器 卷积神经网络 权重 乘加运算 存储介质 定点运算 输入通道 累加 分组 卷积 激活 整体吞吐量 处理效率 应用操作 处理器 溢出 写入 指令 应用 保证 | ||
本发明实施例公开了卷积神经网络的定点运算方法、装置、设备和存储介质,所述卷积神经网络包括卷积层,所述方法包括:通过输入通道接收本层卷积层的输入激活值,所述输入通道具有对应的权重;对所述输入激活值进行定点化操作,获得第一特征值;将所述第一特征值与所述权重分别写入多个寄存器分组的寄存器中;针对所述多个寄存器分组,分别根据所述寄存器中的所述第一特征值与所述权重进行乘加运算,获得多个第二特征值。由于处理器中通常提供多个寄存器,可以通过将累加操作分散在多个寄存器中进行,即分组累加,以此减少均摊的乘加运算的数量,减少溢出风险,提高应用操作指令的处理效率,增大整体吞吐量,同时,保持了精确度,保证了应用范围。
技术领域
本发明实施例涉及深度学习的技术,尤其涉及卷积神经网络的定点运算方法、装置、设备和存储介质。
背景技术
近年来,深度学习广泛应用在视觉等领域,其中,以CNN(Convolutional NeuralNetwork,卷积神经网络)为核心的一系列算法,在图像分类、目标检测、像素级分割等应用具有较佳的效果。
然而,卷积神经网络CNN的运算量大,其90%以上的运算负载集中在卷积运算中,通常的实现会将卷积层转换为两个矩阵的相乘操作,而矩阵相乘中的核心部分如下所示:
其中,w是权重,a是输入激活值,O是输出激活值,N是w与a的公共边长度。
由于卷积运算的运算量大,因此,卷积运算在实际部署时通常需要GPU(GraphicsProcessing Unit,图形处理器)或FPGA(Field-Programmable Gate Array,现场可编程门阵列)之类的硬件进行加速,才能达到实时运行的要求。
为了将卷积神经网络CNN迁移到运算资源受限的设备上,如移动终端等嵌入式设备,目前是训练更小、更精简的模型,并辅以定点化、裁剪等方法,尝试在速度和准确率之间取得一个平衡。
其中,定点化(或称量化)方法因其不会改变网络结构,无需重新训练等优势,受到广泛关注。
定点化即把原先采用32bits浮点数表示的数值,通过映射方法转为固定bit的数值表示。以Q记法为例,U2Q6表示一个8bits的定点数,其整数部分2bit,小数部分6bits。在通用处理器中,定点运算通常比浮点运算有更少的时延和更大的吞吐量。8bits的定点运算与32bits的浮点运算相比,理论上可以为CNN带来4倍的性能提升。
然而,由于定点运算过程中位宽会增长,为了保证精度,需要采用更大的位宽去存储输出结果。例如,两个U2Q6的定点数相乘,其输出结果为S4Q12,即16bits。这种位宽的增加影响了指令吞吐量,最终导致实际定点运算性能远不及理论性能。
为了提升定点运算的性能,目前的做法有两种:
第一种方法是在定点运算结束后通过移位操作,丢弃低位以减少位宽。
例如,通过在激活层增加一个移位操作,移除一些不太重要的低位,来降低后续定点运算复杂度。
然而,这种方法需要特别设计的硬件支持,因为中间结果通常需要保存非二次幂位宽的结果,而通用处理单元通常只拥有二次幂位宽的运算指令,处理效率较低。
第二种方法是将乘法指令替换为其他溢出风险更低的指令,如移位指令。
例如,通过将权重量化为若干个稀疏的特定值,如{0.125,0.25,0.5}等,这些特定值的乘法运算可以转换为对应比特数的移位操作。
然而,这种方法的精确度较低,应用范围较小,仅适用于简单的图片分类任务。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州市百果园信息技术有限公司,未经广州市百果园信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811302449.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种基于神经网络的任务处理方法及相关设备
- 下一篇:运算装置和方法