神经网络模型量化方法技术

技术编号:39600686 阅读:9 留言:0更新日期:2023-12-03 20:00
本申请提供一种神经网络模型量化方法

【技术实现步骤摘要】
神经网络模型量化方法、装置、设备及介质


[0001]本申请涉及人工智能
,尤其涉及一种神经网络模型量化方法

装置

设备及介质


技术介绍

[0002]随着人工智能技术的发展,目标检测技术在计算机视觉(如人脸检测

行人检测)

自动驾驶

安防系统等领域得到广泛应用,而将神经网络模型部署在嵌入式等硬件平台,可以进一步降低成本

减少能源消耗

提高实时性

可扩展性等优势,为企业和组织提供更多的发展机遇

[0003]传统的神经网络部署方法普遍使用高精度浮点模型在
GPU
(英文全称为:
graphics processing unit
,中文为:图形处理器)上进行部署,上述方法需要消耗大量的算力

占用大量的存储资源,产生推理延迟高,内存

硬盘占用高等问题,使得神经网络难以部署在嵌入式设备上

[0004]因而,目前一般通过神经网络量化技术将高精度浮点模型转换为低精度定点模型后进行部署

由于使用低精度浮点数进行定点计算,模型本身的计算量显著降低,将会从根本上减少算力

降低内存

硬盘等资源的占用,为模型在嵌入式设备上部署打下了基础

[0005]然而,目前的神经网络量化技术,神经网络模型在量化后的精度损失不稳定,需要进一步优化


技术实现思路

[0006]本申请提供一种神经网络模型量化方法

装置

设备及介质,用以解决目前的神经网络量化技术,神经网络模型在量化后的精度损失不稳定,需要进一步优化的问题

[0007]本申请第一方面提供一种神经网络模型量化方法,包括:获取校准数据集和待量化的目标神经网络模型;根据所述校准数据集对所述目标神经网络模型进行量化处理,生成所述目标神经网络模型对应的初步量化模型;确定所述初步量化模型相对于所述目标神经网络模型的逐层精度损失和单层精度损失;所述逐层精度损失为所述初步量化模型中各神经网络层对应的逐层累积精度损失;所述单层精度损失为初步量化模型中各神经网络层对应的精度损失;若所述逐层精度损失和
/
或所述单层精度损失满足预设损失条件,则将所述初步量化模型中单层精度损失大于第一预设损失阈值的神经网络层进行反量化处理,生成最终量化模型

[0008]进一步地,如上所述的方法,所述获取校准数据集,包括:获取原始数据集和所述校准数据集对应的数据分布参数;所述原始数据集包括初始图片和初始图片对应的标签;根据所述标签以及所述数据分布参数对所述原始数据集中的初始图片进行筛选,
生成对应校准数据集

[0009]进一步地,如上所述的方法,所述根据所述标签以及所述数据分布参数对所述原始数据集中的初始图片进行筛选,生成对应校准数据集,包括:按照预设筛选条件基于所述标签对所述原始数据集中的初始图片进行初步筛选,生成对应初步筛选数据集;所述预设筛选条件如下:筛选后的图片中至多包含三种目标类别对应的目标;筛选后的图片中每个目标检测框的面积大于或等于图片总面积的预设面积百分比阈值;筛选后的图片中各目标检测框之间的交并比小于或等于预设比例阈值;选取筛选后的图片中面积最大的目标检测框所对应的标签作为此图片的类别;根据所述数据分布参数对初步筛选数据集进行再次筛选,生成对应校准数据集;所述数据分布参数包括:校准数据集中的图片总数

各图片对应的图片类别以及各图片类别对应的图片最大数量

[0010]进一步地,如上所述的方法,所述根据所述校准数据集对所述目标神经网络模型进行量化处理,生成所述目标神经网络模型对应的初步量化模型,包括:对所述目标神经网络模型插入量化节点和反量化节点,生成中间神经网络模型;基于所述校准数据集对所述中间神经网络模型进行量化过程中的校准训练,生成所述初步量化模型

[0011]进一步地,如上所述的方法,所述确定所述初步量化模型相对于所述目标神经网络模型的逐层精度损失,包括:对所述初步量化模型中除开第一层神经网络层之外的其他层神经网络层进行反量化处理,生成反量化后的初步量化模型;所述反量化处理为去除神经网络层中的量化节点和反量化节点;确定反量化后的初步量化模型相对于目标神经网络模型的精度损失,并将该精度损失作为第一层神经网络层对应的逐层精度损失;将反量化后的初步量化模型中第一层神经网络层的下一层神经网络层作为当前层,并对所述当前层进行量化处理,生成处理后的初步量化模型;确定处理后的初步量化模型相对于目标神经网络模型的精度损失,并将该精度损失作为当前层对应的逐层精度损失;将当前层的下一神经网络层确定为当前层,并执行对所述当前层进行量化处理,生成处理后的初步量化模型的步骤,直至完成对所有神经网络层的处理;将各神经网络层对应的逐层精度损失确定为所述初步量化模型相对于所述目标神经网络模型的逐层精度损失

[0012]进一步地,如上所述的方法,确定所述初步量化模型相对于所述目标神经网络模型的单层精度损失,包括:将所述初步量化模型中第一层神经网络层作为当前层,对除开所述当前层之外的其他层神经网络层进行反量化处理,生成反量化后的初步量化模型;确定反量化后的初步量化模型相对于目标神经网络模型的精度损失,并将该精度损失作为当前层对应的单层精度损失;
将当前层的下一神经网络层确定为当前层,并执行所述对除开所述当前层之外的其他层神经网络层进行反量化处理,生成反量化后的初步量化模型的步骤,直至完成对所有神经网络层的处理;将各神经网络层对应的单层精度损失确定为所述初步量化模型相对于所述目标神经网络模型的单层精度损失

[0013]进一步地,如上所述的方法,所述预设损失条件为所述单层精度损失大于第二预设损失阈值,或,所述预设损失条件为所述逐层精度损失大于第三预设损失阈值,或,所述单层精度损失大于第二预设损失阈值且所述逐层精度损失大于第三预设损失阈值;所述将所述初步量化模型中单层精度损失大于第一预设损失阈值的神经网络层进行反量化处理,生成最终量化模型,包括:去除所述初步量化模型中单层精度损失大于第一预设损失阈值的神经网络层中的量化节点和反量化节点,生成最终量化模型

[0014]本申请第二方面提供一种神经网络模型量化装置,包括:获取模块,用于获取校准数据集和待量化的目标神经网络模型;第一生成模块,用于根据所述校准数据集对所述目标神经网络模型进行量化处理,生成所述目标神经网络模型对应的初步量化模型;确定模块,用于确定所述初步量化模型相对于所述目标神经网络模型的逐层精度损失和单层精度损失;所述逐层精度损失为所述初步量化模型中各神经网络层对应的逐层累积精度损失;所述单层精度本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种神经网络模型量化方法,其特征在于,包括:获取校准数据集和待量化的目标神经网络模型;根据所述校准数据集对所述目标神经网络模型进行量化处理,生成所述目标神经网络模型对应的初步量化模型;确定所述初步量化模型相对于所述目标神经网络模型的逐层精度损失和单层精度损失;所述逐层精度损失为所述初步量化模型中各神经网络层对应的逐层累积精度损失;所述单层精度损失为初步量化模型中各神经网络层对应的精度损失;若所述逐层精度损失和
/
或所述单层精度损失满足预设损失条件,则将所述初步量化模型中单层精度损失大于第一预设损失阈值的神经网络层进行反量化处理,生成最终量化模型
。2.
根据权利要求1所述的方法,其特征在于,所述获取校准数据集,包括:获取原始数据集和所述校准数据集对应的数据分布参数;所述原始数据集包括初始图片和初始图片对应的标签;根据所述标签以及所述数据分布参数对所述原始数据集中的初始图片进行筛选,生成对应校准数据集
。3.
根据权利要求2所述的方法,其特征在于,所述根据所述标签以及所述数据分布参数对所述原始数据集中的初始图片进行筛选,生成对应校准数据集,包括:按照预设筛选条件基于所述标签对所述原始数据集中的初始图片进行初步筛选,生成对应初步筛选数据集;所述预设筛选条件如下:筛选后的图片中至多包含三种目标类别对应的目标;筛选后的图片中每个目标检测框的面积大于或等于图片总面积的预设面积百分比阈值;筛选后的图片中各目标检测框之间的交并比小于或等于预设比例阈值;选取筛选后的图片中面积最大的目标检测框所对应的标签作为此图片的类别;根据所述数据分布参数对初步筛选数据集进行再次筛选,生成对应校准数据集;所述数据分布参数包括:校准数据集中的图片总数

各图片对应的图片类别以及各图片类别对应的图片最大数量
。4.
根据权利要求1所述的方法,其特征在于,所述根据所述校准数据集对所述目标神经网络模型进行量化处理,生成所述目标神经网络模型对应的初步量化模型,包括:对所述目标神经网络模型插入量化节点和反量化节点,生成中间神经网络模型;基于所述校准数据集对所述中间神经网络模型进行量化过程中的校准训练,生成所述初步量化模型
。5.
根据权利要求4所述的方法,其特征在于,所述确定所述初步量化模型相对于所述目标神经网络模型的逐层精度损失,包括:对所述初步量化模型中除开第一层神经网络层之外的其他层神经网络层进行反量化处理,生成反量化后的初步量化模型;所述反量化处理为去除神经网络层中的量化节点和反量化节点;确定反量化后的初步量化模型相对于目标神经网络模型的精度损失,并将该精度损失作为第一层神经网络层对应的逐层精度损失;
将反量化后的初步量化模型中第一层神经网络层的下一层神经网络层作为当前层,并对所述当前层进行量化处理,生成处理后的初步量化模型;确定处理后的初步量化模型相对于目标神经...

【专利技术属性】
技术研发人员:邓意麒彭春晖陈泳源
申请(专利权)人:湖南苏科智能科技有限公司
类型:发明
国别省市:

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

1