[发明专利]一种量化推理超参数大于1时确保推理精度的方法在审

专利信息
申请号: 202011622526.5 申请日: 2020-12-31
公开(公告)号: CN114692877A 公开(公告)日: 2022-07-01
发明(设计)人: 周飞飞 申请(专利权)人: 合肥君正科技有限公司
主分类号: G06N5/04 分类号: G06N5/04;G06N3/04
代理公司: 北京嘉东律师事务所 11788 代理人: 田欣欣
地址: 230088 安徽省合肥市高新区望江*** 国省代码: 安徽;34
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 量化 推理 参数 大于 确保 精度 方法
【权利要求书】:

1.一种量化推理超参数大于1时确保推理精度的方法,其特征在于,所述方法包括:

假设第i层的量化计算如下所示:

Xq=scale(Qf*Qw+bias)

然后把scale进行31位定点化运算:

其中,增加scale大于1.0的定点化过程,即增加left_shift参数,所述left_shift参数为右移操作值,在对模型超参数量化移位过程中减去left_shift参数,确保网络在scale推理参数能够满足模型的定点化通用性。

2.根据权利要求1所述的一种量化推理超参数大于1时确保推理精度的方法,其特征在于,所述方法进一步包括以下步骤:

S1,初始化:其中包括:left_shift参数并赋值为0;

S2,对scale进行小于1.0的定点化;

S3,对scale进行大于1.0的定点化:

当scale值大于1.0时:即while(scale1.0f);

Scale值除以2并赋值给scale:scale=scale/2.0;

left_shift加1并赋值给left_shift:left_shift=left_shift+1;

定点化:int32_t mul=static_castint32_t(round(real_multiplier*(1llmax_precision)));

S4,进行超参数量化,增加scale大于1.0的超参数量化:

增加scale定点化过程中左移与右移的值,同时在定点化过程中减去对右移left_right的值:

使得网络的输入通过右移的形式还原到网络量化的结果,避免网络float的运算,同时由于scale大于1时求取得右移left_right,所以需要减去left_right值,确保量化结果一致性:int32_t ab=static_castint32_t((xw*mul)(max_precision-left_right)),左移:const int32_t mask=(1right_shift)-1;

const int32_t one=1;

通过ab和mask两者结果的与操作,确保量化输出的精度,决定0.5是向上保留还是向下:int32_t remainder=abmask;

const int32_t threshold=mask1;

int32_t temp3=abright_shift;

int temp4=0;

如果remainder大于阈值threshold:if(remainderthreshold);

则temp4=1;

res=temp3+temp4;

其中xw为网络输入,mul与right_shift为定点化时模型乘以2的31次方的超参数。

3.根据权利要求1所述的一种量化推理超参数大于1时确保推理精度的方法,其特征在于,所述31位定点化运算是通过对scale,scale值为小的全精度数,通过对scale移位,使得scale值保持在[0.5,1]之间,然后使得scale与2的31次方相乘取round操作,求取整数值。

4.根据权利要求1所述的一种量化推理超参数大于1时确保推理精度的方法,其特征在于,所述步骤S1具体包括以下表达式:

right_shift=0;

max_precision=31;

left_shift=0。

5.根据权利要求1所述的一种量化推理超参数大于1时确保推理精度的方法,其特征在于,所述步骤S2具体包括:

正常情况下对scale进行小于1.0的定点化,表达式如下:

当real_multiplier0.5f时:while(real_multiplier0.5f);

scale=scale*2.0;

right_shift=right_shift+1。

6.根据权利要求1所述的一种量化推理超参数大于1时确保推理精度的方法,其特征在于,所述步骤S2还可以包括:

scale小于1时对定点化数据进行量化的操作,表达式如下:

int32_t ab=static_castint32_t((xw*mul)max_precision);

const int32_t mask=(1right_shift)-1;

const int32_t one=1;

int32_t remainder=abmask;

const int32_t threshold=mask1;

int32_t temp3=abright_shift;

int temp4=0;

if(remainderthreshold)

temp4=1;

res=temp3+temp4;

其中xw为网络输入,mul与right_shift为定点化时模型乘以2的31次方的超参数。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于合肥君正科技有限公司,未经合肥君正科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202011622526.5/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top