[发明专利]一种数据处理方法、装置和存储介质有效
申请号: | 201811313447.9 | 申请日: | 2018-11-06 |
公开(公告)号: | CN109542512B | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 戴彦;蔡林金;丁缙;姚达;吴永坚 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F9/30 | 分类号: | G06F9/30;G06N3/04 |
代理公司: | 深圳翼盛智成知识产权事务所(普通合伙) 44300 | 代理人: | 黄威 |
地址: | 518057 广东省深圳*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据处理 方法 装置 存储 介质 | ||
本发明实施例公开了一种数据处理方法、装置和存储介质;本发明实施例在获取到预设卷积神经网络后,可以确定当前卷积层,并获取该当前卷积层的扩位通道值,然后,在利用该当前卷积层对输入数据进行特征提取和特征累加的过程中,对累加的通道数进行统计,并在累加的通道数达到该扩位通道值的整数倍时,对当前卷积层在寄存器中的运算位数进行扩展,以对累加过程产生的数据进行存储;该方案可以在避免溢出的同时,降低指令的数量和卷积运算复杂度,实现性能加速及计算资源消耗的减少。
技术领域
本发明涉及通信技术领域,具体涉及一种数据处理方法、装置和存储介质。
背景技术
随着卷积神经网络(CNN,Convolutional Neural Network)在数据处理(如图像处理)领域中的广泛应用,以及移动终端的普及,量化卷积神经网络也越来越受关注。所谓量化,指的是对模型进行压缩,即利用更少的运算位数表示权重值和特征值。通过量化,可以使得卷积神经网络更为轻型,进而可以部署在移动终端等硬件资源较为受限的平台中。
在对现有技术的研究和实践过程中,本发明的发明人发现,由于卷积运算主要是基于乘法和加法运算,因此,量化后随着运算位数的减少,多次乘法和累加操作极易导致产生溢出(即运算结果超过当前运算位数所能表示的范围)。为了避免溢出,往往需要频繁地将其在寄存器中的运算位数扩展为更高的位数,这不仅操作复杂,而且将增大量化后卷积运算的复杂度,产生更多额外的开销,加重了计算资源的消耗。
发明内容
本发明实施例提供一种数据处理方法、装置和存储介质;可以灵活简便地对运算位数进行扩位,在避免溢出的同时,降低量化后卷积运算的复杂度,减少计算资源的消耗。
本发明实施例提供一种数据处理方法,其特征在于,包括:
获取预设卷积神经网络,所述卷积神经网络包括多层卷积层;
确定当前卷积层,并获取所述当前卷积层的输入数据和扩位通道值;
采用当前卷积层对输入数据进行特征提取,得到多个通道对应的特征信息;
对所述多个通道对应的特征信息进行累加,并对累加的通道数进行统计;
若累加的通道数达到所述扩位通道值的整数倍,则对当前卷积层在寄存器中的运算位数进行扩展,以对累加过程产生的数据进行存储;
在所述多个通道对应的特征信息累加完毕后,返回执行确定当前卷积层的步骤,直至所有卷积层处理完毕。
相应的,本发明实施例提供一种数据处理装置,包括获取单元、确定单元、提取单元、累加单元和扩展单元,如下:
获取单元,用于获取预设卷积神经网络,所述卷积神经网络包括多层卷积层;
确定单元,用于确定当前卷积层,并获取所述当前卷积层的输入数据和扩位通道值;
提取单元,用于采用当前卷积层对输入数据进行特征提取,得到多个通道对应的特征信息;
累加单元,用于对所述多个通道对应的特征信息进行累加,并对累加的通道数进行统计,在所述多个通道对应的特征信息累加完毕后,触发确定单元执行确定当前卷积层的操作,直至所有卷积层处理完毕;
扩展单元,用于在累加的通道数达到所述扩位通道值的整数倍时,对当前卷积层在寄存器中的运算位数进行扩展,以对累加过程产生的数据进行存储。
可选的,在一些实施例中,所述扩展单元可以包括调用子单元和扩展子单元,如下:
所述调用子单元,用于在累加的通道数达到所述扩位通道值的整数倍时,调用扩位指令;
所述扩展子单元,用于根据所述扩位指令对当前卷积层在寄存器中的运算位数进行扩展,以对累加过程产生的数据进行存储。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811313447.9/2.html,转载请声明来源钻瓜专利网。