[发明专利]一种离线量化工具的精度提升方法有效
申请号: | 202010137113.1 | 申请日: | 2020-03-02 |
公开(公告)号: | CN111368978B | 公开(公告)日: | 2023-03-24 |
发明(设计)人: | 唐琦;黄明飞;王海涛 | 申请(专利权)人: | 开放智能机器(上海)有限公司 |
主分类号: | G06N3/0464 | 分类号: | G06N3/0464 |
代理公司: | 上海申新律师事务所 31272 | 代理人: | 吴轶淳 |
地址: | 200233 上海市徐汇区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 离线 量化 工具 精度 提升 方法 | ||
1.一种离线量化工具的精度提升方法,用于提高深度学习模型的精度,其特征在于,采用一处理单元将预先设置的训练数据输入一网络模型,所述网络模型中包括多个依次连接的卷积层,每个所述卷积层分别用于对输入至所述卷积层的所述训练数据进行处理并得到处理数据输出,每个所述卷积层的输出端还分别连接所述处理单元;
所述处理单元获取所有所述处理数据并分别提取所述处理数据中的量化转换因子并生成一量化转换因子集,每个所述量化转换因子分别对应于一所述卷积层,所述量化转换因子集中的所述量化转换因子依据对应的所述卷积层的顺序进行排序;
所述精度提升方法包括:
步骤S1,所述处理单元对每个所述量化转换因子进行线性处理,生成多个量化参数形成一量化参数集,每个所述量化参数集分别对应于一所述量化转换因子;
步骤S2,所述处理单元将所述训练数据输入所述网络模型,控制所述网络模型以第一工作模式运行,分别得到所有所述卷积层输出的第一处理数据;
步骤S3,所述处理单元分别根据所述量化参数,再次将所述训练数据输入所述网络模型,控制所述网络模型以第二工作模式运行,获得所述卷积层输出的第二处理数据;
步骤S4,根据所述第一处理数据和所述第二处理数据确定本次更新相关的所述量化参数,并将采用被确定的所述量化参数更新对应的所述量化转换因子;
步骤S5,判断所述量化转换因子集中是否存在尚未被更新的所述量化转换因子:
若是,则返回所述步骤S3;
若否,则将更新后的所述量化转换因子集作为精度提升结果输出,随后结束。
2.根据权利要求1所述的一种离线量化工具的精度提升方法,其特征在于,步骤S1采用下述公式实现:
Scalem=0.75·scale+0.01·scale·m
其中,
Scalem用于表示所述量化参数,m用于表示所述量化参数在所述量化参数集中的排序序号;
scale用于表示所述处理数据中的量化转换因子。
3.根据权利要求1所述的一种离线量化工具的精度提升方法,其特征在于,所述第一工作模式为Float32工作模式。
4.根据权利要求3所述的一种离线量化工具的精度提升方法,其特征在于,步骤S2采用下述公式实现:
OutputDatafp32′=Convolutio nfp32(InputDatafp32,Weightfp32)
其中,
OutputDatafp32′用于表示所述第一处理数据;
InputDatafp32用于表示所述训练数据;
Weightfp32用于表示所述网络模型以第一工作模式运行时的权值参数。
5.根据权利要求1所述的一种离线量化工具的精度提升方法,其特征在于,所述步骤S3中包括:
步骤S31,所述处理单元选取一所述卷积层作为当前的所述卷积层;
步骤S32,所述处理单元确定与当前的所述卷积层对应的所述第一处理数据和所述量化参数集;
步骤S33,所述处理单元于所述量化参数集内选取一所述量化参数作为当前的所述量化参数;
步骤S34,所述处理单元根据当前的所述量化参数对所述网络模型进行设置,随后再次将所述训练数据输入所述网络模型,控制所述网络模型以第二工作模式运行,得到所述卷积层输出的所述第二处理数据;
步骤S35,所述处理单元判断当前的所述卷积层对应的所述量化参数集中的所述量化参数是否均对所述网络模型进行设置:
若是,则转至步骤S4;
若否,则所述处理单元将未对所述网络模型进行设置的所述量化参数作为当前的所述量化参数,随后转至步骤S34。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于开放智能机器(上海)有限公司,未经开放智能机器(上海)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010137113.1/1.html,转载请声明来源钻瓜专利网。