基于神经网络的数据处理方法和装置制造方法及图纸

技术编号:23191566 阅读:25 留言:0更新日期:2020-01-24 16:29
本说明书实施例提供一种基于神经网络的数据处理方法、装置、可读存储介质和计算机设备,所述方法包括:获取所述神经网络的网络参数的表达式,其中,所述表达式中包括至少一个移位参数,所述移位参数用于表示对输入所述神经网络的激活信号进行移位的移位量;根据所述移位参数对所述激活信号进行移位,得到移位激活信号;根据所述移位激活信号获取所述神经网络的输出信号。上述实施例的方法、装置、可读存储介质和计算机设备采用移位运算来代替神经网络的网络参数与激活信号之间的乘法运算。

Data processing method and device based on Neural Network

【技术实现步骤摘要】
基于神经网络的数据处理方法和装置
本公开涉及计算机视觉
,尤其涉及基于神经网络的数据处理方法和装置。
技术介绍
神经网络是一种模仿动物神经网络行为特征,进行分布式并行信息处理的算法数学模型。近年来,神经网络在各个领域的应用越来越广。神经网络所需的运算开销与神经网络的网络参数数量息息相关,当网络参数的数量较多时,花费的运算开销较大,在嵌入式设备等计算资源和算力有限的应用场景下可能导致神经网络的应用受到限制。
技术实现思路
本公开提供一种基于神经网络的数据处理方法和装置。具体地,本公开是通过如下技术方案实现的:根据本公开实施例的第一方面,提供一种基于神经网络的数据处理方法,所述方法包括:获取所述神经网络的网络参数的表达式,其中,所述表达式中包括至少一个移位参数,所述移位参数用于表示对输入所述神经网络的激活信号进行移位的移位量;根据所述移位参数对所述激活信号进行移位,得到移位激活信号;根据所述移位激活信号获取所述神经网络的输出信号。本公开实施例采用移位运算来代替神经网络的网络参数与激活信号之间的乘法运算,由于通用处理器上乘法运算的计算开销远远大于移位操作,因此,通过本公开实施例的方案能够有效降低神经网络的运算开销。可选地,根据所述移位激活信号获取所述神经网络的输出信号的步骤包括:若所述移位参数的数量大于1,对各个移位参数对应的移位激活信号进行求和,得到求和结果;根据所述求和结果获取所述神经网络的输出信号。本公开实施例在网络参数的表达式中所述移位参数的数量为多个时,通过求和运算和位移运算来代替神经网络的网络参数与激活信号之间的乘法运算,由于通用处理器上乘法运算的计算开销远远大于加减法运算和移位操作,因此能够有效降低神经网络的运算开销。可选地,获取所述神经网络的网络参数的表达式的步骤包括:根据预设的目标函数和第二约束条件从缓存中查找目标表达式;根据所述目标表达式获取所述神经网络的网络参数的表达式。本公开实施例通过目标表达式来获取所述多项式,可以直接将目标表达式与激活信号的运算结果应用到所述网络参数与激活信号的移位运算中,从而减少移位操作的次数,提高了运算效率。可选地,所述表达式为幂的多项式,所述多项式中各项幂底数为表示所述网络参数的进制数,所述移位参数为所述多项式的幂指数。本公开实施例通过幂的多项式来表示网络参数,可以直接根据所述多项式的幂指数将网络参数与激活信号的乘法运算替换为移位运算,降低了神经网络的运算开销。可选地,所述目标函数为所述多项式中非零项的数量最小化,和/或所述第二约束条件为查找所述目标表达式的时长小于预设的时长阈值。本公开实施例通过设置非零项的数量最小化的目标函数,使得运算次数最小化,进一步提高了运算效率。通过设置查找目标表达式的时长约束条件,可以限制查找目标表达式的时延,提高了运算实时性。可选地,从缓存中查找目标表达式的步骤包括:根据所述多项式中各项的系数构建所述网络参数的特征向量;根据所述特征向量将所述网络参数划分为多个群组;从所述群组对应的缓存中查找所述目标表达式。本公开实施例由于群组中各个网络参数具有相似的特征向量,从而群组内各个网络参数可复用的多项式可能较为接近,因此,通过划分群组,每个群组内的网络参数仅在该群组对应的缓存中查找目标表达式,可以提高查找目标表达式的效率,从而进一步提高运算效率。可选地,在获取所述神经网络的网络参数的表达式之前,所述方法还包括:对所述网络参数进行定点量化处理,所述移位参数的绝对值不大于定点量化处理后的量化位宽。由于定点型数据通常比浮点型数据的量化位宽要少,因此,本公开实施例通过定点量化处理,可以减少内存占用,数据传输带宽,加快运算速度。可选地,第一约束条件包括:所述表达式的复杂度约束条件;和通过所述表达式表示所述网络参数的精确度约束条件;所述方法还包括:根据以上至少一个所述第一约束条件确定所述量化位宽。由于量化位宽越大,通过表达式来表示网络参数的精确度越高,但相应的表达式复杂度也越高,本公开实施例通过设置表达式复杂度约束条件,限制了表达式的复杂度,有利于降低运算延时,提高运算效率;本公开实施例通过设置精确度约束条件,有利于提高运算精确度。可选地,在对所述网络参数进行定点量化处理之前,所述方法还包括:对所述网络参数进行数据归一化处理。本公开实施例通过归一化处理,便于采用预设的量化位宽对网络参数进行表示。根据本说明书实施例的第二方面,提供一种基于神经网络的数据处理装置,所述装置包括:第一获取模块,用于获取所述神经网络的网络参数的表达式,其中,所述表达式中包括至少一个移位参数,所述移位参数用于表示对输入所述神经网络的激活信号进行移位的移位量;移位模块,用于根据所述移位参数对所述激活信号进行移位,得到移位激活信号;第二获取模块,用于根据所述移位激活信号获取所述神经网络的输出信号。本公开实施例采用移位运算来代替神经网络的网络参数与激活信号之间的乘法运算,由于通用处理器上乘法运算的计算开销远远大于移位操作,因此,通过本公开实施例的方案能够有效降低神经网络的运算开销。可选地,所述第二获取模块包括:求和单元,用于若所述移位参数的数量大于1,对各个移位参数对应的移位激活信号进行求和,得到求和结果;第一获取单元,用于根据所述求和结果获取所述神经网络的输出信号。本公开实施例在网络参数的表达式中所述移位参数的数量为多个时,通过求和运算和位移运算来代替神经网络的网络参数与激活信号之间的乘法运算,由于通用处理器上乘法运算的计算开销远远大于加减法运算和移位操作,因此能够有效降低神经网络的运算开销。可选地,所述第一获取模块包括:查找单元,用于根据预设的目标函数和第二约束条件从缓存中查找目标表达式;第二获取单元,用于根据所述目标表达式获取所述神经网络的网络参数的表达式。本公开实施例通过目标表达式来获取所述表达式,可以直接将目标表达式与激活信号的运算结果应用到所述网络参数与激活信号的移位运算中,从而减少移位操作的次数,提高了运算效率。可选地,所述表达式为幂的多项式,所述多项式中各项幂底数为表示所述网络参数的进制数,所述移位参数为所述多项式的幂指数。本公开实施例通过幂的多项式来表示网络参数,可以直接根据所述多项式的幂指数将网络参数与激活信号的乘法运算替换为移位运算,降低了神经网络的运算开销。可选地,所述目标函数为所述多项式中非零项的数量最小化,和/或所述第二约束条件为查找所述目标表达式的时长小于预设的时长阈值。本公开实施例通过设置非零项的数量最小化的目标函数,使得运算次数最小化,进一步提高了运算效率。通过设置查找目标表达式的时长约束条件,可以限制查找目标表达式的时延,提高了运算实时性。...

【技术保护点】
1.一种基于神经网络的数据处理方法,其特征在于,所述方法包括:/n获取所述神经网络的网络参数的表达式,其中,所述表达式中包括至少一个移位参数,所述移位参数用于表示对输入所述神经网络的激活信号进行移位的移位量;/n根据所述移位参数对所述激活信号进行移位,得到移位激活信号;/n根据所述移位激活信号获取所述神经网络的输出信号。/n

【技术特征摘要】
1.一种基于神经网络的数据处理方法,其特征在于,所述方法包括:
获取所述神经网络的网络参数的表达式,其中,所述表达式中包括至少一个移位参数,所述移位参数用于表示对输入所述神经网络的激活信号进行移位的移位量;
根据所述移位参数对所述激活信号进行移位,得到移位激活信号;
根据所述移位激活信号获取所述神经网络的输出信号。


2.根据权利要求1所述的方法,其特征在于,根据所述移位激活信号获取所述神经网络的输出信号的步骤包括:
若所述移位参数的数量大于1,对各个移位参数对应的移位激活信号进行求和,得到求和结果;
根据所述求和结果获取所述神经网络的输出信号。


3.根据权利要求1或2所述的方法,其特征在于,获取所述神经网络的网络参数的表达式的步骤包括:
根据预设的目标函数和第二约束条件从缓存中查找目标表达式;
根据所述目标表达式获取所述神经网络的网络参数的表达式。


4.根据权利要求3所述的方法,其特征在于,所述表达式为幂的多项式,所述多项式中各项幂底数为表示所述网络参数的进制数,所述移位参数为所述多项式的幂指数。


5.根据权利要求4所述的方法,其特征在于,从缓存中查找目标表达式的步骤包括:
根据所述多项式中各项的系数构建所述网络参数的特征向量;
根据所述特征向量将所述网络参数划分为多个群组;
从所述群...

【专利技术属性】
技术研发人员:吴佳飞张帅张广程
申请(专利权)人:上海商汤智能科技有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1