【技术实现步骤摘要】
神经网络模型的压缩方法、训练方法、处理方法和装置
[0001]本公开涉及人工智能领域,尤其涉及深度学习、自然语言处理(natural language processing,NLP)、计算机视觉和语音处理等
技术介绍
[0002]随着计算机技术和电子技术的发展,深度学习技术在计算机视觉、自然语言处理和智能语音等多个领域得到了广泛应用。预训练模型从大规模数据学习普适性的表征,可以在应用于不同下游应用时仅进行微调,而无需大量训练,提高了深度学习技术的应用便利性。
[0003]预训练模型的尺寸通常较大,应用时需要占用大量内容,且具有庞大的计算开销。因此,限制了预训练模型在计算能力有限的设备上的应用。
技术实现思路
[0004]本公开提供了一种神经网络模型的压缩方法、压缩模型的训练方法、多媒体数据的处理方法、装置、设备、存储介质以及程序产品。
[0005]根据本公开的一方面,提供了一种神经网络模型的压缩方法,包括:通过处理器分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组,多个平滑参数组中每个平滑参数组包括与多个初始参数对应的多个平滑参数,多个平滑参数组分别与多个缩放值一一对应;通过处理器分别对多个平滑参数组进行量化,得到多个压缩后的神经网络模型;通过将多媒体数据作为待处理数据输入多个压缩后的神经网络模型,确定多个压缩后的神经网络模型的多个量化损失;以及根据多个量化损失,更新多个缩放值,并返回通过处理器分别利用多个缩放值对神经网络模型中的多个初始参数进行平 ...
【技术保护点】
【技术特征摘要】
1.一种神经网络模型的压缩方法,包括:通过处理器分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组,所述多个平滑参数组中每个平滑参数组包括与所述多个初始参数对应的多个平滑参数,所述多个平滑参数组分别与所述多个缩放值一一对应;通过处理器分别对所述多个平滑参数组进行量化,得到多个压缩后的神经网络模型;通过将多媒体数据作为待处理数据输入所述多个压缩后的神经网络模型,确定所述多个压缩后的神经网络模型的多个量化损失;以及根据所述多个量化损失,更新所述多个缩放值,并返回所述通过处理器分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组的操作,直到确定目标神经网络模型;其中,更新所述目标神经网络模型对应的缩放值,并返回所述通过处理器分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组的操作得到的神经网络模型的量化损失大于所述目标神经网络模型的量化损失。2.根据权利要求1所述的方法,其中,每个所述缩放值为张量,所述张量包括多个元素;所述更新所述多个缩放值包括:对于所述多个缩放值中的每个所述缩放值,分别通过执行以下操作中的至少一种对所述缩放值进行更新:将所述多个元素中位于所述张量的多个第一预设位置的多个第一目标元素进行交换;以及修改所述多个元素中位于所述张量的第二预设位置的第二目标元素的值。3.根据权利要求1所述的方法,其中,所述根据所述多个量化损失,更新所述多个缩放值包括:根据所述多个量化损失的从小到大顺序,从所述多个量化损失中确定前K个量化损失,所述K为预设值,K为正整数;以及对所述前K个量化损失对应的K个缩放值进行更新,得到K个更新缩放值。4.根据权利要求3所述的方法,其中,所述根据所述多个量化损失,更新所述多个缩放值还包括:在确定基于所述K个更新缩放值得到的K个更新量化损失均小于所述K个量化损失的情况下,根据所述K个更新量化损失的从小到大顺序,对所述K个更新量化损失中的前N个更新量化损失对应的N个更新缩放值进行更新,N为预设值,N为正整数,N≤K。5.根据权利要求3所述的方法,其中,所述根据所述多个量化损失,更新所述多个缩放值还包括:根据所述K个量化损失和基于所述K个更新缩放值得到的K个更新量化损失,从所述K个更新量化损失中确定M个更新量化损失,所述M个更新量化损失均小于所述K个量化损失中与所述M个更新量化损失对应的M个量化损失,M为正整数,M≤K;以及更新所述M个更新量化损失。6.根据权利要求1所述的方法,其中,所述通过将多媒体数据作为待处理数据输入所述多个压缩后的神经网络模型,确定所述多个压缩后的神经网络模型的多个量化损失包括:通过将多媒体数据作为待处理数据输入所述多个压缩后的神经网络模型,利用所述多
个压缩后的神经网络模型对所述待处理数据进行数据处理运算,得到多个量化输出结果;通过将所述待处理数据输入所述神经网络模型,利用所述神经网络模型对所述待处理数据进行数据处理运算,得到初始输出结果;以及根据所述多个量化输出结果和所述初始输出结果,确定所述多个量化损失。7.根据权利要求1所述的方法,还包括:在确定所述多个量化损失中的最小量化损失小于或等于预设量化损失的情况下,确定所述最小量化损失对应的压缩后的神经网络模型为所述目标神经网络模型;以及在确定所述多个量化损失中的最小量化损失大于预设量化损失的情况下根据所述多个量化损失,更新所述多个缩放值,并返回所述分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组的操作。8.根据权利要求1所述的方法,还包括:在确定基于更新后的多个缩放值得到的多个更新量化损失均大于所述多个量化损失的情况下,重新更新所述多个缩放值,并返回所述分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组的操作。9.根据权利要求1所述的方法,还包括:在确定基于更新后的多个缩放值得到的多个更新量化损失均大于所述多个量化损失的情况下,从所述多个压缩后的神经网络模型中确定目标神经网络模型。10.根据权利要求1所述的方法,其中,所述多个初始参数包括多个激活值和与所述多个激活值分别对应的多个权重值;所述分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组包括:分别利用所述多个缩放值,缩小所述多个激活值,得到与所述多个缩放值对应的多个平滑激活值组,所述多个平滑激活值组的每个平滑激活值组包括与所述多个激活值对应的多个平滑激活值;以及分别利用所述多个缩放值,放大所述多个权重值,得到与所述多个缩放值对应的多个平滑权重值组,所述多个平滑权重值组的每个平滑权重值组包括与所述多个权重值对应的多个平滑权重值;其中,所述多个平滑参数组的每个平滑参数组包括平滑激活值组和对应的平滑权重值组。11.一种压缩模型的训练方法,包括:将作为样本数据的多媒体数据输入压缩模型,得到针对多个预定类别的概率向量,所述多媒体数据标注有类别信息;根据所述类别信息和所述概率向量,确定所述压缩模型的损失值;以及根据所述损失值,对所述压缩模型进行训练;其中,所述压缩模型是采用权利要求1~10中任一项所述的方法得到的压缩后的神经网络模型。12.一种多媒体数据的处理方法,包括:将待处理的多媒体数据输入压缩模型,得到表示所述多媒体数据所属类别的概率向量,所述概率向量包括所述多媒体数据属于多个预定类别中每个预定类别的概率值;以及根据所述概率向量,确定所述多个预定类别中所述多媒体数据所属的目标类别;
其中,所述压缩模型包括采用权利要求11所述的方法训练得到的模型。13.一种神经网络模型的压缩装置,包括:平滑模块,用于通过处理器分别利用多个缩放值对神经网络模型中的多个初始参数进行平滑,得到多个平滑参数组,所述多个平滑参数组中每个平滑参数组包括与所述多个初始参数对应的多个平滑参数,所述多个平滑参数组分别与所述多个缩放值一一对应...
【专利技术属性】
技术研发人员:徐畅,李明昊,于广华,王豪爽,沙燕霖,于佃海,马艳军,
申请(专利权)人:北京百度网讯科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。