[发明专利]一种基于{-1,+1}编码的神经网络模型压缩与加速方法在审
申请号: | 201810866365.0 | 申请日: | 2018-08-01 |
公开(公告)号: | CN109190759A | 公开(公告)日: | 2019-01-11 |
发明(设计)人: | 孙其功;焦李成;杨康;尚凡华;李秀芳;侯彪;杨淑媛;李玲玲;郭雨薇;唐旭;冯志玺 | 申请(专利权)人: | 西安电子科技大学 |
主分类号: | G06N3/08 | 分类号: | G06N3/08 |
代理公司: | 西安通大专利代理有限责任公司 61200 | 代理人: | 高博 |
地址: | 710065 陕*** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 神经网络模型 模型参数 神经网络 小型嵌入式设备 量化 神经网络参数 训练神经网络 矩阵 编码位数 储存空间 模型计算 向量乘法 压缩 编码层 位运算 构建 手机 替换 激活 分解 | ||
1.一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,首先构建神经网络模型;然后根据具体任务要求的精度对[-1,1]进行分段处理,根据分段数确定对模型参数与激活值重新进行{-1,1}编码的位数M;对神经网络模型进行初始化并对模型参数进行量化;对神经网络模型进行训练并在训练中根据{-1,1}编码的位数M对模型参数与激活值使用线性量化公式进行量化;对训练完成的量化神经网络模型参数进行M位数的{-1,1}编码;在神经网络模型的每个激活层后面加上一个用于对激活值进行重新M位{-1,1}编码的编码层;将神经网络内部矩阵或向量乘法操作替换成若干个二值位运算,从而实现模型压缩与加速。
2.根据权利要求1所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,神经网络模型的激活函数为激活函数HReLU,具体如下:
其中,HReLU(x)表示以x为输入得到的激活值。
3.根据权利要求1所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,分段处理具体为:将[-1,1]分成2M段,根据分段数2M确定后面对模型参数与激活值重新进行{-1,1}编码的位数M。
4.根据权利要求1所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,对神经网络模型均值为0方差为1的权值初始化,并根据{-1,1}编码的位数M对模型参数使用线性量化公式进行量化。
5.根据权利要求4所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,线性量化公式如下:
其中,qM(x)表示在M位{-1,1}编码下得到的量化参数值,x表示全精度参数值,M表示{-1,1}编码的位数,<·>表示舍入操作。
6.根据权利要求1所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,对训练完成的量化神经网络模型参数采用编码公式MBitEncoder进行M位数的{-1,1}编码,编码公式MBitEncoder如下:
其中,MBitEncoder(x)表示对x进行M位的{-1,1}编码,M表示{-1,1}编码的总位数,m表示M位{-1,1}编码中的第m位,表示M位{-1,1}编码中的第m位编码中的确定值并且
7.根据权利要求6所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,对量化后的量化值xq进行M位{-1,1}编码后可表示为:
xqm∈{-1,1}
其中,xqm表示xq的第m位的值,M表示编码的{-1,1}编码的总位数,xq每一位可以表示为:
xq→[xqMxq(M-1)xq(M-2)...xq1]
其中,[]表示xq的内部编码形式,xqM表示xq内部{-1,1}编码第M位的状态且xqM∈{-1,1}。
8.根据权利要求1所述的一种基于{-1,+1}编码的神经网络模型压缩与加速方法,其特征在于,将神经网络内部矩阵或向量乘法操作替换成若干个二值位运算操作,对编码后的参数与激活值的每一位进行分离,分离后模型参数与激活值之间的乘法运算被分解成若干个二值位运算的计算。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201810866365.0/1.html,转载请声明来源钻瓜专利网。