买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
申请/专利权人:中科南京人工智能创新研究院;中国科学院自动化研究所
摘要:本发明公开了一种面向轻量卷积神经网络的训练后量化方法、装置,该方法包括读取图像数据;构建浮点模型和量化后模型,基于随机预处理和打乱顺序后的图像批次,逐块地对浮点模型和量化后模型中的每个模型块进行输出特征图的重建,并计算输出特征图重建的损失;基于特征图重建的损失,对量化后模型的每个模型块的批归一化参数和量化参数进行梯度更新和学习。本发明通过对图像数据进行逐块地预处理和随机打乱顺序,提高了模型对输入数据的泛化能力,避免了模型过拟合;通过逐块学习并更新批归一化层参数、权重缩放因子和激活缩放因子,可以在量化过程中细致调整模型参数,在低比特量化下仍保持较高的模型精度。
主权项:1.一种面向轻量卷积神经网络的训练后量化方法,其特征在于,包括如下步骤:S1、读取图像数据并归一化;构建图像变换集合并为每种图像变换设置变换参数;其中,图像预处理变换包括随机缩放裁剪和水平翻转;变换参数包括随机缩放的比例范围和随机翻转概率;S2、基于轻量卷积神经网络模型构建浮点模型和量化模型,并划分为N个模型块,将量化模型中的模型参数初始化为浮点模型的模型参数,模型权重的缩放因子和量化零点,激活的缩放因子和零点通过浮点权重和激活的最大值和最小值进行初始化;N为大于0的自然数;S3、针对每个模型块,逐块优化量化模型的批归一化层的参数、均值和方差、激活和权重的缩放因子;在优化每个模型块前,读取图像数据和图像变换集合,对图像数据进行随机预处理,得到处理后的图像批次,并随机打乱图像批次的顺序;基于打乱顺序后的图像批次,针对浮点模型和量化后模型中的当前处理模型块,重建输出特征图并计算输出特征图重建的损失;S4、基于特征图重建的损失,使用梯度下降法对量化后模型的当前模型块的批归一化参数、激活和权重的缩放因子进行梯度更新和学习;S5、判断所有模型块是否处理结束,若结束,对量化模型整体进行非对称张量级量化处理;步骤S3中对图像数据进行随机预处理,并随机打乱图像批次的顺序的过程,进一步为:S31、在预定范围内随机选择缩放比例,对图像数据进行缩放,形成预定个缩放图像批次;S32、随机选择裁剪坐标,将每个缩放图像批次中的图像裁剪为预定大小,形成预定个裁剪图像批次;S33、以预定概率对每个裁剪图像批次中的图像进行随机性的水平翻转,形成预定个水平翻转后的图像批次;S34、随机打乱预定个水平翻转后的图像批次的顺序;步骤S3中,重建输出特征图并计算输出特征图重建的损失的过程,进一步为:S35、针对浮点模型,读取随机预处理和随机选择打乱顺序后的图像批次,并将其输入浮点模型的每个模型块,获得每个模型块的浮点输出特征图;S36、针对量化后模型,读取随机预处理和随机选择打乱顺序后的图像批次,并将其输入量化后模型的当前第i个模型块,并进行前向传播,在前向传播过程中,在前向传播过程中更新批归一化层的均值和方差,基于打乱顺序后的图像批次,计算当前模型块中每个批归一化层的均值和方差,更新上述批归一化层的全局均值和方差;获得每个模型块的量化输出特征图;S37、将每个模型块的浮点输出特征图和量化输出特征图分别重塑成浮点输出向量和量化输出向量,计算每个模型块的浮点输出向量和量化输出向量的均方误差,均方误差即为特征图重建的损失;还包括步骤S38:S381、将每个模型块的浮点输出特征图和量化输出特征图分别通过1×1卷积,得到查询特征图和键特征图;S382、计算查询特征图和键特征图的内积并归一化,得到注意力权重矩阵;S383、根据注意力权重矩阵,对每个模型块的特征图重建的损失进行加权,得到加权重建损失;S384、将每个模型块的浮点输出特征图进行拼接,得到的总浮点输出,将每个模型块的量化输出特征图进行拼接,得到的总量化输出,基于总浮点输出和总量化输出,计算得到全局重建损失;S385、计算加权重建损失和全局重建损失的加权和,得到最终的特征图重建的损失;步骤S4进一步为:S41、基于特征图重建的损失,利用反向传播算法计算量化后模型每个模型块的批归一化参数、激活缩放因子和权重缩放因子的梯度,使用Adam优化器对批归一化参数进行更新,得到更新后的批归一化参数、权重缩放因子和激活缩放因子;S42、基于特征图重建的损失,采用非对称通道级量化技术,对量化后模型每个模型块的权重进行处理,得到处理后的权重,基于处理后的权重,使用自适应取整算法进行量化操作,得到权重量化参数;计算损失对权重量化参数的梯度,并使用Adam优化器更新权重量化参数,得到优化后的权重量化参数;S43、基于特征图重建的损失,采用非对称张量级量化技术,对量化后模型每个模型块的激活进行处理,得到处理后的激活,基于处理后的激活,使用可学习缩放因子算法进行量化操作,得到激活量化参数,计算损失对激活量化参数的梯度,并使用Adam优化器更新激活量化参数,得到优化后的激活量化参数;S44、将更新后的批归一化参数、全局均值和方差、优化后的权重量化参数以及激活量化参数应用于量化后模型,重新计算特征图重建的损失,如果损失未收敛且未达到预设的迭代次数,则返回步骤S41继续优化;如果损失收敛或达到预设的迭代次数,则进行下一个模型块的优化或结束整个优化过程;步骤S42进一步为:S421、对量化后模型每个模型块的权重,计算其各个通道的权重最大值和权重最小值,得到初始化的权重量化范围;S422、基于权重最大值和权重最小值,初始化各通道的权重量化参数,包括权重缩放因子和权重零点,得到初始化的权重量化参数;S423、基于权重量化参数,对权重数据进行量化操作,具体为将权重减去权重零点后除以权重缩放因子,再进行取整,最后乘以权重缩放因子加上权重零点,得到量化后的权重;S424、获取特征图重建的损失,计算该损失对权重量化参数的梯度,得到权重量化参数梯度;S425、基于权重量化参数梯度,采用Adam优化算法更新权重量化参数,得到优化后的权重量化参数;S426、使用优化后的权重量化参数,重新执行步骤S423的量化操作,得到更新后的量化权重;S427、将更新后的量化权重进行反量化操作,得到反量化后的权重,然后将反量化后的权重与浮点模型的权重进行比较,计算L1正则化损失,将L1正则化损失加入到总体优化目标中。
全文数据:
权利要求:
百度查询: 中科南京人工智能创新研究院 中国科学院自动化研究所 面向轻量卷积神经网络的训练后量化方法、装置
免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。