System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种基于参数截断定点化的神经网络轻量化方法技术_技高网

一种基于参数截断定点化的神经网络轻量化方法技术

技术编号:40503367 阅读:12 留言:0更新日期:2024-03-01 13:16
本发明专利技术公开了一种基于参数截断定点化的神经网络轻量化方法,包括:搭建智能算法神经网络模型;采用高精度数据类型对所述智能算法神经网络模型进行训练直至收敛;将训练收敛后获得的高精度网络参数截断成低精度网络参数;将低精度网络参数类型的网络参数存储为模型计算调用参数,生成截断后的神经网络模型;测试截断后的神经网络模型的性能。将高精度网络参数截断成低精度网络参数,存储低精度网络参数并用于网络模型计算。利用低精度网络参数所具有的高效时效性、低计算开销、小存储规模进行全网络整体参数的存储,能够应用于解决训练网络计算开销过大的问题。

【技术实现步骤摘要】

本专利技术涉及相控阵,特别是一种基于参数截断定点化的神经网络轻量化方法


技术介绍

1、自2012年alexnet以来,卷积神经网络在图像分类,图像分割,目标检测领域获得广泛认可。随着性能要求越来越高,神经网络的层数也逐步递增,而算法的效率也成为了阻碍神经网络走出试验室的主要问题。卷积网络权值参数数量大,对存储空间具有很高要求。通常的方法是进行模型压缩(model compression),即在已经训练好的模型上进行压缩加速,使得网络携带更少的权值参数,从而解决内存问题和运算速度问题。卷积神经网络的加速主要包括两类,硬件加速和软件加速。软件加速又分为压缩结构和压缩参数两种。压缩参数包括网络剪枝,低秩估计,参数量化和模型蒸馏等技术,通过在已训练完成模型的基础上对参数进行筛选,转换来达到降低参数量。

2、定点化技术又名为参数量化技术,是一种使用较低位宽来表示单精度浮点网络参数的方法。定点化技术可以给深度神经网络模型带来两个方面的提升,一是减少参数存储和内存占用的开销,二是加快运算速度。

3、早期的定点化技术追求极致的量化效果,典型代表为二值化和三值化方案。二值化是指限制网络参数取值为1或者-1,从而极大降低了模型对存储空间和内存空间的需求。二值化通过将原始的附带你乘法操作转化为加法和移位运算以显著提高运算速度。训练难度的增加和精度的下降是二值化面临的严重问题。三值化在二值化的基础上引入了0作为第三阈值以提高精度,减少量化误差。考虑到二值和三值网络会降低模型的表达能力,有学者提出了混合位宽的方案,即根据经验手工选定最优的网络参数位宽组合,为不同类型的网络权重分配不同精度的位宽。但由于手工确定网络参数位宽存在一定局限性,可设计一定的策略让网络自动学习合适的位宽组合。除了二值化和三值化这种低比特量化思路,也有学者提出了聚类量化的方案。当参数数量庞大时,可利用聚类方式进行权重量化。

4、定点化神经网络模型的主要核心问题是对各神经元节点的加权系数存储方式和数据格式进行压缩和截断处理。简单来说,就是将算法设计与开发阶段各神经元节点浮点型的加权系数变成单精度型或更低的数据类型,但存在的问题是网络的性能会出现恶化,主要问题是各神经元节点加权系数进行截断取舍后会造成加权后的误差传播,误差随着各层卷积网络的乘法和加法运算会逐渐累加和积累,导致最终目标检测识别与关键参数的提取出现偏差,所以智能化网络模型与算法进行定点化的核心问题是在模型参数截断位数与模型检测识别性能之间的折中。


技术实现思路

1、针对现有技术中存在的上述不足,本专利技术实施例提供一种基于参数截断定点化的神经网络轻量化方法。

2、本专利技术实施例提供一种基于参数截断定点化的神经网络轻量化方法,包括:

3、搭建智能算法神经网络模型;

4、采用高精度数据类型对所述智能算法神经网络模型进行训练直至收敛;

5、将训练收敛后获得的高精度网络参数截断成低精度网络参数;

6、将低精度网络参数类型的网络参数存储为模型计算调用参数,生成截断后的神经网络模型;

7、测试截断后的神经网络模型的性能。

8、在一些实施例中,搭建智能算法神经网络模型,包括:

9、设计训练参数、适用于当前任务的网络训练优化器以及适用于特定任务场景以及网络模型结构的损失函数表达形式,通过卷积、池化、全连接层搭建智能算法神经网络模型。

10、在一些实施例中,所述训练参数,包括:数据批量设置、学习率、梯度更新策略设置、迭代次数。

11、在一些实施例中,所述适用于当前任务的网络训练优化器包括adam优化器、sgd优化器、rmsprop优化器。

12、在一些实施例中,

13、适用于特定任务场景以及网络模型结构的损失函数表达形式,包括采用单一l1范数、l2范数、均方误差mse、交叉熵损失,及单一l1范数、l2范数、均方误差mse、交叉熵损失的复合形式。

14、在一些实施例中,采用高精度数据类型对所述智能算法神经网络模型进行训练直至收敛,包括:

15、采用高精度数据类型float32对网络模型进行训练直至收敛。

16、在一些实施例中,将训练收敛后获得的高精度网络参数截断成低精度网络参数,包括:

17、将训练收敛后获得的高精度float32网络参数截断成float16低精度网络参数。

18、在一些实施例中,将训练收敛后获得的高精度float32网络参数截断成float16低精度网络参数,包括:

19、通过将网络处理流程中的关键部分等价转换为八位等效版本而得到,其中网络处理的关键部分包括卷积操作、矩阵乘法、激活函数、池化操作以及卷积层与全连接层之间的矩阵重构与拼接,具体操作为将脚本在每个操作前通过转换函数替换为等价的量化版本,其后再通过转换函数将数据在浮点数与八位数之间进行去量化。

20、在一些实施例中,将低精度网络参数类型的网络参数存储为模型计算调用参数包括:

21、将低精度float16参数类型的网络参数进行量化,所述量化包括二值化。

22、在一些实施例中,测试截断后的神经网络模型的性能,包括:

23、若验证出截断后的神经网络模型内卷积操作、矩阵乘法、激活函数、池化操作以及卷积层与全连接层之间的矩阵重构与拼接能够维持原有的性能,则确定所述基于参数截断定点化的神经网络轻量化方法符合实际应用需求。

24、本专利技术中,采用高精度网络参数进行常规网络参数训练,通过高精度网络数据在训练过程中的快收敛步长进行迭代更新,将高精度网络参数截断成低精度网络参数,存储低精度网络参数并用于网络模型计算。利用低精度网络参数所具有的高效时效性、低计算开销、小存储规模进行全网络整体参数的存储,能够应用于解决训练网络计算开销过大的问题。

本文档来自技高网...

【技术保护点】

1.一种基于参数截断定点化的神经网络轻量化方法,其特征在于,包括:

2.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,搭建智能算法神经网络模型,包括:

3.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,所述训练参数,包括:数据批量设置、学习率、梯度更新策略设置、迭代次数。

4.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,所述适用于当前任务的网络训练优化器包括ADAM优化器、SGD优化器、RMSprop优化器。

5.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,

6.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,采用高精度数据类型对所述智能算法神经网络模型进行训练直至收敛,包括:

7.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,将训练收敛后获得的高精度网络参数截断成低精度网络参数,包括:

8.根据权利要求7所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,将训练收敛后获得的高精度float32网络参数截断成float16低精度网络参数,包括:

9.根据权利要求7所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,将低精度网络参数类型的网络参数存储为模型计算调用参数包括:

10.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,测试截断后的神经网络模型的性能,包括:

...

【技术特征摘要】

1.一种基于参数截断定点化的神经网络轻量化方法,其特征在于,包括:

2.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,搭建智能算法神经网络模型,包括:

3.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,所述训练参数,包括:数据批量设置、学习率、梯度更新策略设置、迭代次数。

4.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,所述适用于当前任务的网络训练优化器包括adam优化器、sgd优化器、rmsprop优化器。

5.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方法,其特征在于,

6.根据权利要求1所述的基于参数截断定点化的神经网络轻量化方...

【专利技术属性】
技术研发人员:赵青于沐尧董胜波苏琪雅蔺震
申请(专利权)人:北京遥感设备研究所
类型:发明
国别省市:

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

1