一种模型训练方法及装置制造方法及图纸

技术编号:29615684 阅读:18 留言:0更新日期:2021-08-10 18:31
本申请公开了一种模型训练方法,可以应用于人工智能领域,方法包括:在根据训练样本对第一神经网络模型进行训练时,基于每个参数对所述数据处理精度的影响能力从第一神经网络模型的M个参数中确定N个参数,并对N个参数进行更新。本申请在保证模型的数据处理精度满足精度要求的前提下,由于更新后的第一神经网络模型中的M个参数中仅N个参数被更新了,可以降低由训练设备到终端设备的数据传输量。

【技术实现步骤摘要】
一种模型训练方法及装置
本申请涉及人工智能领域,尤其涉及一种模型训练方法及装置。
技术介绍
人工智能(artificialintelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个分支,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式作出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。近年来,神经网络在一系列机器学习的任务上,取得了优越的性能,具体可以应用在图像、语言、语音、视频等多个领域。服务器可以训练得到预训练模型(或者是对预训练模型进行至少一次微调和更新后得到的模型,为了方便描述,本实施例中将上述预训练模型以及称之为对预训练模型进行至少一次微调(fine-tune)后得到的模型称之为第一神经网络模型,或者待更新的神经网络模型),并将上述第一神经网络模型部署在终端设备等模型使用端上,但是在一些场景中,第一神经网络模型可能会因为存在安全问题或者需求的变化,需要进行更新,例如第一神经网络模型用于实现翻译任务,而当发现第一神经网络模型存在某种特定翻译错误时,则需要对第一神经网络模型进行修正,又例如,第一神经网络模型用于实现人脸识别任务,而当发现第一神经网络模型对特定人的面部识别错误,则需要对第一神经网络模型进行修正。此外,也可以基于模型使用端的私有数据对第一神经网络模型进行模型微调。但是,神经网络的参数量很大,微调的时候需要修改所有的参数,因此训练设备下发的补丁或者更新包的数据量很大。
技术实现思路
第一方面,本申请提供了一种模型训练方法,所述方法包括:获取第一神经网络模型以及训练样本,所述第一神经网络模型包括M个参数;第一神经网络模型可以包括M个参数,该M个参数可以为第一神经网络模型中需要更新的全部参数或者部分参数。应理解,M个参数可以为第一神经网络模型中需要更新的全部参数中占比超过百分之90的参数。应理解,除了M个参数,第一神经网络模型中还可以包括其他可能需要被更新的参数,这些参数即使对于第一神经网络模型针对于目标任务的数据处理精度的影响能力较小,但在模型训练时仍可以被更新,可选的,这部分参数在第一神经网络模型中的占比很小。根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新,直到所述第一神经网络模型的数据处理精度满足预设条件,得到第二神经网络模型;其中,所述N为小于M的正整数,所述N个参数为根据所述M个参数中每个参数对所述数据处理精度的影响能力确定的。从模型的推理侧来看,针对于要实现的目标任务,神经网络模型中仅仅有少量的参数起到重要作用,当这部分参数的数值发生改变或者从神经网络模型中剔除时,神经网络模型针对于目标任务的数据处理精度会出现大幅度下降。从模型的训练侧来看,针对于要实现的目标任务,神经网络模型中仅仅有少量的参数需要进行较大幅度的数值更新(或者称之为数值变化量较大),或者是神经网络模型中仅仅有少量的参数的更新梯度较大,或者是神经网络模型中仅仅有少量的参数对于模型训练所采用的损失函数减小的贡献能力较大。应理解,上述数值变化量可以理解为训练过程中的一次迭代训练过程中参数的数值变化幅度,或者是综合训练过程中的多次迭代训练过程中参数的数值变化幅度来确定的,或者是模型训练收敛后,相比训练前参数的数值变化幅度。应理解,上述更新梯度可以理解为训练过程中的一次迭代训练过程中参数的更新梯度,或者是综合训练过程中的多次迭代训练过程中参数的更新梯度来确定的。应理解,上述参数对于模型训练所采用的损失函数减小的贡献能力可以理解为训练过程中的一次迭代训练过程中参数对于模型训练所采用的损失函数减小的贡献能力,或者是综合训练过程中的多次迭代训练过程中参数对于模型训练所采用的损失函数减小的贡献能力来确定的。例如可以基于损失变化分配(losschangeallocation,LCA)指标来表示上述参数对于模型训练所采用的损失函数减小的贡献能力。本申请实施例在保证模型的数据处理精度满足精度要求的前提下,由于更新后的第一神经网络模型中的M个参数中仅N个参数被更新了,可以降低由训练设备到终端设备的数据传输量;此外,当第一神经网络模型为预训练模型,该模型具备所属领域的一些基础功能,或者是对预训练模型进行微调后得到的具有除上述基础功能之外的其他功能的模型时,由于本申请实施例中仅仅对第一神经网络模型中很小的一部分参数进行了更新,因此可以保证第一神经网络模型不会失去原有具有的能力,即可以保证第一神经网络模型在原有具有的任务处理能力上不会下降或者不会下降很多,也就是说保证第一神经网络模型不会出现灾难性遗忘的问题(后续实施例中用一致性(consistency)来量化第一神经网络模型保持原有具有能力)在一种可能的实现中,在所述第二神经网络模型中,所述M个参数中除了所述N个参数之外的参数未被更新。在一种可能的实现中,所述N个参数为所述M个参数中对所述第一神经网络模型的数据处理精度的影响能力最大的N个参数;或者,所述N个参数为所述M个参数中对所述第一神经网络模型的数据处理精度的影响能力大于阈值的N个参数。在一种可能的实现中,所述N与所述M的比值小于10%。应理解,N的数量可以是很小的,在一种实现中,所述N与所述M的比值小于10%。针对于不同的任务,N的数量可以不同,例如针对于图像分类任务,N与M的比值可以小于千分之1。在一种可能的实现中,在所述根据所述训练样本,对所述M个参数中的N个参数进行更新之前,所述方法还包括:接收到终端设备发送的模型更新指示,所述模型更新指示用于指示更新所述第一神经网络模型中数量为所述N的参数;或者,模型更新指示用于指示更新所述第一神经网络模型中目标比例的参数。在一种可能的实现中,N可以是部署有第一神经网络模型的终端设备来指定的。例如在对第一神经网络模型进行模型训练之前,用户可以选择第一神经网络模型中多少数量的参数需要被更新,用户可以通过终端设备将上述需要被更新的参数数量或者参数比例发送至训练设备,进训练设备可以从M个参数中选择N个参数。具体的,从训练设备的角度,可以接收到终端设备发送的模型更新指示,所述模型更新指示用于指示更新所述第一神经网络模型中数量为所述N的参数;或者,模型更新指示用于指示更新所述第一神经网络模型中目标比例的参数,其中,第一神经网络模型中的M个参数与目标比例的乘积为N。在一种可能的实现中,所述第二神经网络模型包括更新后的所述N个参数,在所述得到第二神经网络模型之后,所述方法还包括:获取模型更新信息;其中,所述模型更新信息包括所述第二神经网络模型中的所述M个参数中每个参数相比更新前的数值变化量;对所述模型更新信息进行压缩,以得到压缩后的模型更新信息;可选的,所述压缩可以用于对数值0进行去冗余;<本文档来自技高网
...

【技术保护点】
1.一种模型训练方法,其特征在于,所述方法包括:/n获取第一神经网络模型以及训练样本,所述第一神经网络模型包括M个参数;/n根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新,直到所述第一神经网络模型的数据处理精度满足预设条件,得到第二神经网络模型;其中,所述N为小于M的正整数,所述N个参数为根据所述M个参数中每个参数对所述数据处理精度的影响能力确定的。/n

【技术特征摘要】
1.一种模型训练方法,其特征在于,所述方法包括:
获取第一神经网络模型以及训练样本,所述第一神经网络模型包括M个参数;
根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新,直到所述第一神经网络模型的数据处理精度满足预设条件,得到第二神经网络模型;其中,所述N为小于M的正整数,所述N个参数为根据所述M个参数中每个参数对所述数据处理精度的影响能力确定的。


2.根据权利要求1所述的方法,其特征在于,在所述第二神经网络模型中,所述M个参数中除了所述N个参数之外的参数未被更新。


3.根据权利要求1或2所述的方法,其特征在于,所述N个参数为所述M个参数中对所述第一神经网络模型的数据处理精度的影响能力最大的N个参数;或者,
所述N个参数为所述M个参数中对所述第一神经网络模型的数据处理精度的影响能力大于阈值的N个参数。


4.根据权利要求1至3任一所述的方法,其特征在于,所述N与所述M的比值小于10%。


5.根据权利要求1至4任一所述的方法,其特征在于,在所述根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新之前,所述方法还包括:
接收到终端设备发送的模型更新指示,所述模型更新指示用于指示更新所述第一神经网络模型中数量为所述N的参数;或者,模型更新指示用于指示更新所述第一神经网络模型中目标比例的参数。


6.根据权利要求1至5任一所述的方法,其特征在于,所述第二神经网络模型包括更新后的所述N个参数,在所述得到第二神经网络模型之后,所述方法还包括:
获取模型更新信息;其中,所述模型更新信息包括所述第二神经网络模型中的所述M个参数中每个参数相比更新前的数值变化量;
对所述模型更新信息进行压缩,以得到压缩后的模型更新信息;
向终端设备发送所述压缩后的模型更新信息。


7.根据权利要求1至5任一所述的方法,其特征在于,在所述得到第二神经网络模型之后,所述方法还包括:
向终端设备发送模型更新信息;其中,所述模型更新信息包括更新后的所述N个参数,且所述模型更新信息不包括所述M个参数中除所述N个参数之外的参数。


8.根据权利要求1至7任一所述的方法,其特征在于,所述训练样本与目标任务相关,所述数据处理精度为所述第一神经网络模型针对于所述目标任务的数据处理精度,所述每个参数对所述数据处理精度的影响能力与如下的至少一种信息呈正相关:
在对所述第一神经网络模型进行针对于所述目标任务的训练过程中,所述每个参数对应的更新梯度;或者,
在对所述第一神经网络模型进行针对于所述目标任务的训练过程中,所述每个参数对应的数值变化量;或者,
在对所述第一神经网络模型进行针对于所述目标任务的训练过程中,所述每个参数对损失函数减小的贡献能力,所述损失函数为所述对所述M个参数进行更新时所采用的损失函数。


9.根据权利要求1至8任一所述的方法,其特征在于,在所述根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新之前,所述方法还包括:
根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数进行更新,并确定所述M个参数中每个参数对所述数据处理精度的影响能力;
根据所述M个参数中每个参数对所述数据处理精度的影响能力,从所述M个参数中确定N个参数。


10.根据权利要求1至8任一所述的方法,其特征在于,所述根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新,包括:
根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数进行更新,并确定所述M个参数中每个参数对所述数据处理精度的影响能力;
根据所述M个参数中每个参数对所述数据处理精度的影响能力,从所述M个参数中确定N个参数;
将更新后的所述M个参数中除所述N个参数之外的其他参数还原至所述第一神经网络模型中对应的参数数值。


11.根据权利要求1至10任一所述的方法,其特征在于,所述根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新,包括:
根据所述训练样本,通过预设的损失函数,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新;其中,所述预设的损失函数包括目标损失项,所述目标损失项用于约束参数的更新幅度。


12.根据权利要求1至11任一所述的方法,其特征在于,所述训练样本为文本数据、图像数据或音频数据。


13.根据权利要求1至12任一所述的方法,其特征在于,所述第二神经网络模型用于对待处理数据进行处理,以得到数据处理结果,所述待处理数据为文本数据、图像数据或音频数据。


14.一种模型更新时的参数配置方法,其特征在于,所述方法包括:
显示配置界面,所述配置界面包括第一控件,所述第一控件用于指示用户输入第一神经网络模型中需要被更新的参数的数量或者比例;
获取用户通过所述第一控件输入的目标数量或者目标比例;
向服务器发送模型更新指示,所述模型更新指示包括所述目标数量或者目标比例,所述目标数量或者目标比例用于指示在进行所述第一神经网络模型的训练时,更新所述第一神经网络模型中所述目标数量或者目标比例的参数。


15.根据权利要求14所述的方法,其特征在于,在所述向服务器发送模型更新指示之后,所述方法还包括:
接收所述服务器发送的压缩后的模型更新信息,并对所述压缩后的模型更新信息进行解压缩,以得到所述模型更新信息;其中,
所述模型更新信息包括多个参数,所述多个参数为对所述目标数量或者目标比例的参数进行更新得到的,且所述模型更新信息包括的参数数量与所述目标数量之间的差异在预设范围内;或者,所述模型更新信息包括的参数数量与所述第一神经网络模型包括的参数数量的比值与所述目标比例在预设范围内。


16.根据权利要求14所述的方法,其特征在于,在所述向服务器发送模型更新指示之后,所述方法还包括:
接收所述服务器发送的压缩后的模型更新信息,并对所述压缩后的模型更新信息进行解压缩,以得到所述模型更新信息;其中,
所述模型更新信息包括多个参数的数值变化量,所述多个参数的数值变化量为对所述第一神经网络模型中多个参数进行更新的数值变化量。


17.一种模型训练装置,其特征在于,所述装置包括:
获取模块,用于获取第一神经网络模型以及训练样本,所述第一神经网络模型包括M个参数;
模型更新模块,用于根据所述训练样本,对所述第一神经网络模型进行训练,以对所述M个参数中的N个参数进行更新,直到所述第一神经网络模型的数据处理精度满足预设条件,得到第二神经网络模型;其中,所述N为小于M的...

【专利技术属性】
技术研发人员:张之远任宣丞孙栩何彬钱莉
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

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

1