一种模型压缩方法及装置制造方法及图纸

技术编号:31739709 阅读:66 留言:0更新日期:2022-01-05 16:17
本说明书公开了一种模型压缩方法及装置,可先获取已训练完成的神经网络模型,并针对该神经网络模型中的每个嵌入层,确定该嵌入层的嵌入矩阵以及该嵌入层的基准矩阵。之后,以该嵌入矩阵的行数与基准矩阵的行数为约束,构建索引矩阵,并基于该嵌入层的索引矩阵与基准矩阵,确定该嵌入层的重构矩阵。最后,以最小化该嵌入层的嵌入矩阵与重构矩阵之间的差异为目标,调整基准矩阵与索引矩阵中的参数,并基于调整后的各基准矩阵与各索引矩阵,确定压缩后的神经网络模型,用于部署至终端中执行业务。以模型中各嵌入层的嵌入矩阵与重构矩阵之间的差异为优化目标,得到各嵌入层压缩后的基准矩阵与索引矩阵,极大降低了模型压缩的数据量。量。量。

【技术实现步骤摘要】
一种模型压缩方法及装置


[0001]本申请涉及机器学习
,尤其涉及一种模型压缩方法及装置。

技术介绍

[0002]随着人工智能技术的发展,神经网络模型也越来越多的应用于各业务领域中,如信息推荐、视觉定位等。
[0003]但训练完成的模型往往复杂度较高、数据量较大,尽管复杂的模型能够带来更好的性能,但是高额的存储空间以及大量计算资源的消耗,致使训练完成的神经网络模型难以有效应用于各硬件平台中。因此还需对训练完成的神经网络模型进行压缩处理,以将压缩后的模型部署至各硬件平台中。
[0004]目前,常见的神经网络模型压缩框架有Tensorflow Lite、TensorRT以及神经网络智能工具(Neural Network Intelligence,NNI)等,在基于各压缩框架进行模型压缩时,可将离线训练完成的模型输入至压缩框架中,通过压缩算法得到压缩后的轻量模型。若压缩后的轻量模型符合预设的算法指标,则压缩完成,否则继续压缩直至符合预设的算法指标为止。其中,压缩算法可以包含低秩分解、网络量化以及剪枝等,预设的算法指标可以包含模型本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种模型压缩方法,其特征在于,包括:获取已训练完成的神经网络模型;针对所述神经网络模型中的每个嵌入层,根据该嵌入层的网络参数,构建该嵌入层的嵌入矩阵,并对所述嵌入矩阵进行低秩分解,确定该嵌入层的基准矩阵;以所述嵌入矩阵的行数与所述基准矩阵的行数为约束,构建索引矩阵,所述索引矩阵表征所述嵌入矩阵的各行参数与所述基准矩阵的各行参数之间的映射关系;根据所述基准矩阵以及所述索引矩阵,确定所述嵌入矩阵的重构矩阵;以最小化所述重构矩阵与所述嵌入矩阵之间的差异为目标,调整所述基准矩阵与所述索引矩阵,并根据调整后的各基准矩阵与各索引矩阵,确定压缩后的神经网络模型,所述压缩后的神经网络模型用于部署至终端中执行业务,实现与压缩前的神经网络模型相同的功能。2.如权利要求1所述的方法,其特征在于,以所述嵌入矩阵的行数与所述基准矩阵的行数为约束,构建索引矩阵,具体包括:根据所述嵌入矩阵的行数以及所述基准矩阵的行数,确定索引矩阵的行数与列数;其中,所述索引矩阵的行数与所述嵌入矩阵的行数相同,所述索引矩阵的列数不大于所述基准矩阵的行数;按照确定出的行数与列数,随机确定所述索引矩阵中的各参数。3.如权利要求1所述的方法,其特征在于,根据所述基准矩阵以及所述索引矩阵,确定所述嵌入矩阵的重构矩阵,具体包括:针对所述嵌入矩阵中的每行参数,从所述索引矩阵中确定对应该行参数的一行参数,作为该行参数的索引参数;根据所述嵌入矩阵中各行参数的索引参数,以及所述基准矩阵,确定所述嵌入矩阵的重构矩阵。4.如权利要求3所述的方法,其特征在于,根据所述嵌入矩阵中各行参数的索引参数,以及所述基准矩阵,确定所述嵌入矩阵的重构矩阵,具体包括:针对所述嵌入矩阵中的每行参数,根据该行参数的索引参数,从所述基准矩阵的各行参数中,确定与所述索引参数对应的若干行参数;根据确定出的若干行参数,确定该行参数的重构参数;根据所述嵌入矩阵的各行参数的重构参数,确定所述嵌入矩阵的重构矩阵。5.如权利要求1所述的方法,其特征在于,所述方法还包括:针对待部署的每种设备类型,根据该设备类型的设备参数,确定该设备类型对应的矩阵分解维度;其中,所述设备参数至少包含CPU,所述CPU性能越好,所述矩阵分解维度越大;根据该设备类型对应的矩阵分解维度,确定该设备类型对应的索引矩阵的标准维度;以最小化所述重构矩阵与所述嵌入矩阵之间的差异为目标,根据...

【专利技术属性】
技术研发人员:刘俊杰祝升陈晓涛柴振华刘哲魏晓林
申请(专利权)人:北京三快在线科技有限公司
类型:发明
国别省市:

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

1