技术新讯 > 计算推算,计数设备的制造及其应用技术 > 模型训练方法及装置与流程  >  正文

模型训练方法及装置与流程

  • 国知局
  • 2024-09-11 14:14:23

本公开涉及计算机领域,并且更具体地,涉及一种模型训练方法和装置、计算机可读存储介质、芯片以及计算机程序产品。

背景技术:

1、视觉应用在各行各业的领域中都起着关键作用。随着人工智能(artificialintelligence,ai)技术的发展,机器学习、深度学习等越来越广泛地被用于图像处理。图像处理可以涉及诸如图像分割、分类、识别等各种任务,并且可以使用训练好的神经网络模型来实现各种任务。

2、可以通过上游的预训练得到用于各种任务的初始模型,并且在下游可以针对不同的任务在初始模型的基础上进行训练,以得到与各个任务对应的神经网络模型。掩码图像模型(masked image model,mim)作为一种被广泛使用的自监督预训练方法,其预训练任务是从被掩码的一部分的图像中恢复原始图像。但是使用mim在预训练过程中,需要大量的计算来预训练解码器,而解码器并不会被用于下游的任务,这样造成了大量的计算资源浪费。

技术实现思路

1、本公开的示例实施例提供了一种模型训练方案,在自监督预训练过程中基于图像块冗余丢弃过程来确定重建目标,从而能够减小重建的计算量,减少计算资源。

2、在第一方面,提供了一种模型训练方法。该方法包括:获取与图像处理任务相关联的训练数据集;获取初始模型,初始模型包括经预训练的编码器,经预训练的编码器是基于图像块冗余丢弃过程而被预训练得到的;以及利用训练数据集在初始模型的基础上进行训练,以得到用于图像处理任务的经训练的神经网络模型。

3、以此方式,经预训练的编码器能够被用于与图像处理任务相关联的神经网络模型的初始模型,由于经训练的编码器基于图像块冗余丢弃过程得到,因此所消耗的计算资源少,效率高。

4、在第一方面的一些实现方式中,经预训练的编码器通过下述方式得到:获取预训练数据集中的预训练图像;将预训练图像进行分块处理,得到经分块的预训练图像;基于经分块的预训练图像生成第一预训练输入图像和第二预训练输入图像,其中第一预训练输入图像包括第一数量的图像块,第二预训练输入图像包括第二数量的图像块,且第一数量和第二数量之和等于经分块的预训练图像中的图像块的总数;将第二预训练输入图像输入到教师分支,通过图像块冗余丢弃过程得到用于学生分支的重建目标,重建目标包括预定数量的图像块,并且预定数量小于第二数量;以及将第一预训练输入图像输入到学生分支,基于重建目标进行预训练,以得到学生分支中的经预训练的编码器。可选地,第一数量的图像块与第二数量的图像块彼此不相交。

5、以此方式,教师分支基于图像块冗余丢弃过程来得到重建目标,重建目标仅包括整张图像的一部分,因此在学生分支处不再需要重建整张图像,减轻了预训练的计算量,提升了预训练的效率。

6、在第一方面的一些实现方式中,教师分支包括编码器和图像块丢弃模块,得到用于学生分支的重建目标包括:将第二预训练输入图像输入到教师分支的编码器,得到第二数量的经编码的图像块;以及将第二数量的经编码的图像块输入到图像块丢弃模块,得到重建目标。

7、在第一方面的一些实现方式中,图像块丢弃模块包括视觉变换器的多层,并且得到重建目标包括:获取预先设定的要执行图像块丢弃的多层中的第三数量的层;基于第二数量、预定数量和第三数量确定丢弃率,丢弃率表示在第三数量的层中的每一层要被丢弃的图像块的比例;针对第三数量的层中的每一层,基于丢弃率确定输入到下一层的图像块;以及获取多层的最后一层输出的重建目标。

8、以此方式,图像块丢弃模块基于视觉变换器来构建,由于变换器本身具有自注意力机制,能够使得各个图像块之间的信息充分交互,因此被丢弃的图像块的信息的一部分可以被保留在剩余的未被丢弃的图像块中,从而能够弥补因丢弃图像块而带来的信息损失。

9、在第一方面的一些实现方式中,基于丢弃率确定输入到下一层的图像块包括:针对第三数量的层中的每一层,确定每一层中的图像块的平均度量;基于丢弃率以及每一层中的各个图像块的度量与平均度量之间的相似度,来确定每一层中的各个图像块中要被丢弃的至少一个图像块;以及通过丢弃至少一个图像块,确定输入到下一层的图像块。

10、以此方式,可以基于平均度量来确定要被丢弃的图像块,由于丢弃与全局平均最接近的图像块之后,对于全局平均的影响是最小的,另外,全局平均对应于图像块序列中的低频成分,例如对应于图像中的背景或重复内容,因此移除与全局平均接近的图像块对于整体的性能影响较小。

11、在第一方面的一些实现方式中,基于丢弃率以及每一层中的各个图像块的度量与平均度量之间的相似度,来确定每一层中的各个图像块中要被丢弃的至少一个图像块包括:基于输入到每一层的图像块的数量以及丢弃率,来确定每一层中的要被丢弃的至少一个图像块的数量;以及基于每一层中的要被丢弃的至少一个图像块的数量,确定各个图像块的度量与平均度量之间的相似度最大的至少一个图像块。

12、以此方式,在图像块冗余丢弃过程中,可以将与平均度量接近的图像块丢弃,以降低对整体性能的影响。可见,本公开的实施例的方案能够在使重建目标中的图像块数量减小的同时,尽可能地使重建目标中保留对性能更重要的那些图像块,从而减少对性能的影响。

13、在第一方面的一些实现方式中,学生分支包括编码器和解码器,基于重建目标进行预训练包括:将第一预训练输入图像输入到学生分支的编码器,得到第一数量的经编码的图像块;将第一数量的经编码的图像块以及教师分支得到的重建目标的重建位置信息输入到学生分支的解码器,以得到重建结果;基于重建目标和重建结果构建预训练损失函数;以及基于预训练损失函数进行预训练,以得到经预训练的编码器。

14、以此方式,在学生分支预训练的过程中,可以基于解码器的重建结果与教师分支的重建目标来构建预训练损失函数,从而能够实现对学生分支的编码器的预训练过程。

15、在第一方面的一些实现方式中,初始模型还包括以下至少一项:图像块丢弃模块、全局池化层、或全连接层。

16、在第一方面的一些实现方式中,利用训练数据集在初始模型的基础上进行训练以得到用于图像处理任务的经训练的神经网络模型包括:将训练数据集中的训练图像输入到初始模型的编码器,以得到经编码的训练图像;将经编码的训练图像输入到初始模型的图像块丢弃模块,以得到经图像块丢弃后的图像;基于对经图像块丢弃后的图像的预测结果以及训练图像的真值构建训练损失函数;以及基于训练损失函数,更新编码器。

17、以此方式,在与图像处理任务关联的模型训练过程中,也可以包括图像块丢弃模块,以减小训练过程的计算量,提高训练的效率。

18、在第一方面的一些实现方式中,图像处理任务包括以下任一项:图像分割、图像分类、目标检测、或图像识别。

19、在第二方面,提供了一种自监督预训练方法。该方法包括:获取预训练数据集中的预训练图像;将预训练图像进行分块处理,得到经分块的预训练图像;基于预训练图像生成第一预训练输入图像和第二预训练输入图像,其中第一预训练输入图像包括第一数量的图像块,第二预训练输入图像包括第二数量的图像块,且第一数量和第二数量之和等于经分块的预训练图像中的图像块的总数;将第二预训练输入图像输入到教师分支,通过图像块冗余丢弃过程得到用于学生分支的重建目标,重建目标包括预定数量的图像块,并且预定数量小于第二数量;以及将第一预训练输入图像输入到学生分支,基于重建目标进行预训练,以得到学生分支中的经预训练的编码器。

20、在第二方面的一些实现方式中,教师分支包括编码器和图像块丢弃模块,得到用于学生分支的重建目标包括:将第二预训练输入图像输入到教师分支的编码器,得到第二数量的经编码的图像块;以及将第二数量的经编码的图像块输入到图像块丢弃模块,得到重建目标。

21、在第二方面的一些实现方式中,图像块丢弃模块包括视觉变换器的多层,并且得到重建目标包括:获取预先设定的要执行图像块丢弃的多层中的第三数量的层;基于第二数量、预定数量和第三数量确定丢弃率,丢弃率表示在第三数量的层中的每一层要被丢弃的图像块的比例;针对第三数量的层中的每一层,基于丢弃率确定输入到下一层的图像块;以及获取多层的最后一层输出的重建目标。

22、在第二方面的一些实现方式中,基于丢弃率确定输入到下一层的图像块包括:针对第三数量的层中的每一层,确定每一层中的图像块的平均度量;基于丢弃率以及每一层中的各个图像块的度量与平均度量之间的相似度,来确定每一层中的各个图像块中要被丢弃的至少一个图像块;以及通过丢弃至少一个图像块,确定输入到下一层的图像块。

23、在第二方面的一些实现方式中,基于丢弃率以及每一层中的各个图像块的度量与平均度量之间的相似度,来确定每一层中的各个图像块中要被丢弃的至少一个图像块包括:基于输入到每一层的图像块的数量以及丢弃率,来确定每一层中的要被丢弃的至少一个图像块的数量;以及基于每一层中的要被丢弃的至少一个图像块的数量,确定各个图像块的度量与平均度量之间的相似度最大的至少一个图像块。

24、在第二方面的一些实现方式中,学生分支包括编码器和解码器,基于重建目标进行预训练包括:将第一预训练输入图像输入到学生分支的编码器,得到第一数量的经编码的图像块;将第一数量的经编码的图像块以及教师分支得到的重建目标的重建位置信息输入到学生分支的解码器,以得到重建结果;基于重建目标和重建结果构建预训练损失函数;以及基于预训练损失函数进行预训练,以得到经预训练的编码器。

25、在第二方面的一些实现方式中,第一数量的图像块与第二数量的图像块彼此不相交。

26、在第三方面,提供了一种模型训练装置。该装置包括:数据集获取单元,被配置为获取与图像处理任务相关联的训练数据集;模型获取单元,被配置为获取初始模型,初始模型包括经预训练的编码器,经预训练的编码器是基于图像块冗余丢弃过程而被预训练得到的;以及训练单元,被配置为利用训练数据集在初始模型的基础上进行训练,以得到用于图像处理任务的经训练的神经网络模型。

27、在第三方面的一些实现方式中,装置还包括预训练单元,预训练单元包括:数据集获取子单元,被配置为获取预训练数据集中的预训练图像;分块子单元,被配置为将预训练图像进行分块处理,得到经分块的预训练图像;输入图像生成子单元,被配置为基于经分块的预训练图像生成第一预训练输入图像和第二预训练输入图像,其中第一预训练输入图像包括第一数量的图像块,第二预训练输入图像包括第二数量的图像块,且第一数量和第二数量之和等于经分块的预训练图像中的图像块的总数;重建目标确定子单元,被配置为将第二预训练输入图像输入到教师分支,通过图像块冗余丢弃过程得到用于学生分支的重建目标,重建目标包括预定数量的图像块,并且预定数量小于第二数量;以及预训练子单元,被配置为将第一预训练输入图像输入到学生分支,基于重建目标进行预训练,以得到学生分支中的经预训练的编码器。可选地,第一数量的图像块与第二数量的图像块彼此不相交。

28、在第三方面的一些实现方式中,教师分支包括编码器和图像块丢弃模块,重建目标确定子单元被配置为:将第二预训练输入图像输入到教师分支的编码器,得到第二数量的经编码的图像块;以及将第二数量的经编码的图像块输入到图像块丢弃模块,得到重建目标。

29、在第三方面的一些实现方式中,图像块丢弃模块包括视觉变换器的多层,并且重建目标确定子单元被配置为:获取预先设定的要执行图像块丢弃的多层中的第三数量的层;基于第二数量、预定数量和第三数量确定丢弃率,丢弃率表示在第三数量的层中的每一层要被丢弃的图像块的比例;针对第三数量的层中的每一层,基于丢弃率确定输入到下一层的图像块;以及获取多层的最后一层输出的重建目标。

30、在第三方面的一些实现方式中,重建目标确定子单元被配置为:针对第三数量的层中的每一层,确定每一层中的图像块的平均度量;基于丢弃率以及每一层中的各个图像块的度量与平均度量之间的相似度,来确定每一层中的各个图像块中要被丢弃的至少一个图像块;以及通过丢弃至少一个图像块,确定输入到下一层的图像块。

31、在第三方面的一些实现方式中,重建目标确定子单元被配置为:基于输入到每一层的图像块的数量以及丢弃率,来确定每一层中的要被丢弃的至少一个图像块的数量;以及基于每一层中的要被丢弃的至少一个图像块的数量,确定各个图像块的度量与平均度量之间的相似度最大的至少一个图像块。

32、在第三方面的一些实现方式中,学生分支包括编码器和解码器,预训练子单元被配置为:将第一预训练输入图像输入到学生分支的编码器,得到第一数量的经编码的图像块;将第一数量的经编码的图像块以及教师分支得到的重建目标的重建位置信息输入到学生分支的解码器,以得到重建结果;基于重建目标和重建结果构建预训练损失函数;以及基于预训练损失函数进行预训练,以得到经预训练的编码器。

33、在第三方面的一些实现方式中,初始模型还包括以下至少一项:图像块丢弃模块、全局池化层、或全连接层。

34、在第三方面的一些实现方式中,训练单元被配置为:将训练数据集中的训练图像输入到初始模型的编码器,以得到经编码的训练图像;将经编码的训练图像输入到初始模型的图像块丢弃模块,以得到经图像块丢弃后的图像;基于对经图像块丢弃后的图像的预测结果以及训练图像的真值构建训练损失函数;以及基于训练损失函数,更新编码器。

35、在第三方面的一些实现方式中,图像处理任务包括以下任一项:图像分割、图像分类、目标检测、或图像识别。

36、在第四方面,提供了一种自监督预训练装置。该装置包括:获取单元,被配置为获取预训练数据集中的预训练图像;分块单元,被配置为将预训练图像进行分块处理,得到经分块的预训练图像;图像块生成单元,被配置为基于预训练图像生成第一预训练输入图像和第二预训练输入图像,其中第一预训练输入图像包括第一数量的图像块,第二预训练输入图像包括第二数量的图像块,且第一数量和第二数量之和等于经分块的预训练图像中的图像块的总数;重建目标确定单元,被配置为将第二预训练输入图像输入到教师分支,通过图像块冗余丢弃过程得到用于学生分支的重建目标,重建目标包括预定数量的图像块,并且预定数量小于第二数量;以及预训练单元,被配置为将第一预训练输入图像输入到学生分支,基于重建目标进行预训练,以得到学生分支中的经预训练的编码器。

37、在第四方面的一些实现方式中,教师分支包括编码器和图像块丢弃模块,重建目标确定单元被配置为:将第二预训练输入图像输入到教师分支的编码器,得到第二数量的经编码的图像块;以及将第二数量的经编码的图像块输入到图像块丢弃模块,得到重建目标。

38、在第四方面的一些实现方式中,图像块丢弃模块包括视觉变换器的多层,并且重建目标确定单元被配置为:获取预先设定的要执行图像块丢弃的多层中的第三数量的层;基于第二数量、预定数量和第三数量确定丢弃率,丢弃率表示在第三数量的层中的每一层要被丢弃的图像块的比例;针对第三数量的层中的每一层,基于丢弃率确定输入到下一层的图像块;以及获取多层的最后一层输出的重建目标。

39、在第四方面的一些实现方式中,重建目标确定单元被配置为:针对第三数量的层中的每一层,确定每一层中的图像块的平均度量;基于丢弃率以及每一层中的各个图像块的度量与平均度量之间的相似度,来确定每一层中的各个图像块中要被丢弃的至少一个图像块;以及通过丢弃至少一个图像块,确定输入到下一层的图像块。

40、在第四方面的一些实现方式中,重建目标确定单元被配置为:基于输入到每一层的图像块的数量以及丢弃率,来确定每一层中的要被丢弃的至少一个图像块的数量;以及基于每一层中的要被丢弃的至少一个图像块的数量,确定各个图像块的度量与平均度量之间的相似度最大的至少一个图像块。

41、在第四方面的一些实现方式中,学生分支包括编码器和解码器,预训练单元被配置为:将第一预训练输入图像输入到学生分支的编码器,得到第一数量的经编码的图像块;将第一数量的经编码的图像块以及教师分支得到的重建目标的重建位置信息输入到学生分支的解码器,以得到重建结果;基于重建目标和重建结果构建预训练损失函数;以及基于预训练损失函数进行预训练,以得到经预训练的编码器。

42、在第四方面的一些实现方式中,第一数量的图像块与第二数量的图像块彼此不相交。

43、在第五方面,提供了一种计算设备,包括处理器以及存储器,存储器上存储有由处理器执行的指令,当指令被处理器执行时使得该计算设备实现上述第一方面、第二方面、或其任一实现方式中的方法的操作。

44、在第六方面,提供了一种计算设备集群,包括至少一个计算设备。至少一个计算设备中的每个计算设备包括处理器和存储器;至少一个计算设备的处理器用于执行至少一个计算设备的存储器中存储的指令,以使得计算设备集群实现上述第一方面、第二方面、或其任一实现方式中的方法的操作。

45、在第七方面,提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现根据上述第一方面、第二方面、或其任一实现方式中的方法的操作。

46、在第八方面,提供了一种芯片或芯片系统。该芯片或芯片系统包括处理电路,被配置为执行根据上述第一方面、第二方面、或其任一实现方式中的方法的操作。

47、在第九方面,提供了一种计算机程序或计算机程序产品。该计算机程序或计算机程序产品被有形地存储在计算机可读介质上并且包括计算机可执行指令,计算机可执行指令在被执行时使设备实现根据上述第一方面、第二方面、或其任一实现方式中的方法的操作。

本文地址:https://www.jishuxx.com/zhuanli/20240911/289717.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。