CN116977714A - 图像分类方法、装置、设备、存储介质和程序产品 - Google Patents

图像分类方法、装置、设备、存储介质和程序产品 Download PDF

Info

Publication number
CN116977714A
CN116977714A CN202310746237.3A CN202310746237A CN116977714A CN 116977714 A CN116977714 A CN 116977714A CN 202310746237 A CN202310746237 A CN 202310746237A CN 116977714 A CN116977714 A CN 116977714A
Authority
CN
China
Prior art keywords
image
sample
text
noise
diffusion model
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202310746237.3A
Other languages
English (en)
Inventor
朱城
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202310746237.3A priority Critical patent/CN116977714A/zh
Publication of CN116977714A publication Critical patent/CN116977714A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/30Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/774Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/153Segmentation of character regions using recognition of characters or words
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/16Image preprocessing
    • G06V30/164Noise filtering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19147Obtaining sets of training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/19Recognition using electronic means
    • G06V30/191Design or setup of recognition systems or techniques; Extraction of features in feature space; Clustering techniques; Blind source separation
    • G06V30/19173Classification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Artificial Intelligence (AREA)
  • Image Analysis (AREA)

Abstract

本申请涉及一种图像分类方法、装置、设备、存储介质和程序产品。所述方法涉及人工智能技术,所述方法包括:获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据原始图像和随机噪声图像生成带噪图像,根据带噪图像与提示文本生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异;确定生成相应差异最小的预测噪声图像所依赖的提示文本;将所依赖的提示文本对应的图像标签,作为原始图像的图像标签。采用本方法能够降低标注工作量,减少大量的人工标注成本,提升了图像多标签分类效率。

Description

图像分类方法、装置、设备、存储介质和程序产品
技术领域
本申请涉及计算机技术领域,特别是涉及一种图像分类方法、装置、设备、存储介质和程序产品。
背景技术
随着人工智能技术与计算机技术的飞速发展,图像处理技术应用于各类业务场景中。其中,图像分类技术利用图像的特征对其进行定量分析,把图像或图像中的每个像元或区域划归为若干个类别中的某一种,以代替人的视觉判读。
目前,图像分类技术多是基于深度学习的,图像分类的准确性往往依赖于大量的人工标注的图像数据,而且分类效果往往随着人工标注图像数据量的增长才会有较为明显的提升。然而,人工标注的图像数据的质量良莠不齐,同时人工标注工作量极大,需要花费大量的人工标注成本,效率也非常低。
发明内容
基于此,有必要针对上述技术问题,提供一种图像分类方法、装置、设备、存储介质和程序产品,能够降低人工标注工作量,减少大量的人工标注成本,提高标注效率。
第一方面,本申请提供了一种图像分类方法。所述方法包括:
获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定生成相应差异最小的预测噪声图像所依赖的提示文本;
将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
第二方面,本申请还提供了一种图像分类装置。所述装置包括:
获取模块,用于获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
噪声预测模块,用于对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定模块,用于确定生成差异最小的预测噪声图像所依赖的提示文本;
标签分类模块,用于将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
在一个实施例中,所述噪声预测模块用于通过所述扩散模型的图像编码器,对所述原始图像进行图像编码,得到所述原始图像的图像编码表示;通过所述扩散模型的扩散器,将所述随机噪声图像对应的噪声信息叠加至所述图像编码信息,得到所述带噪图像。
在一个实施例中,所述噪声预测模块用于通过所述扩散模型的文本编码器,对所述提示文本进行语义编码,得到所述提示文本对应的文本语义表示;将所述带噪图像和所述文本语义表示输入至所述扩散模型的噪声预测器中,通过所述噪声预测器输出预测噪声图像。
在一个实施例中,所述噪声预测器包括多个交替连接的残差网络和注意力层;所述噪声预测模块用于将所述带噪图像和所述随机噪声图像所对应的随机噪声量编码信息输入第一个残差网络,通过所述第一个残差网络,输出预测噪声信息;将所述预测噪声信息和所述文本语义表示输入第一个注意力层,通过所述第一个注意力层,输出注意力信息;从第二个残差网络开始,依次地将下一个残差网络作为当前残差网络,将下一个注意力层作为当前注意力层,将与所述当前残差网络连接的上一个注意力层输出的上一个注意力信息以及所述随机噪声量编码信息输入所述当前残差网络,通过所述当前残差网络,输出预测噪声信息;将所述当前残差网络输出的预测噪声信息和所述文本语义表示输入所述当前注意力层,通过所述当前注意力层,输出注意力信息;将末尾注意力层输出的注意力信息作为所述预测噪声图像。
在一个实施例中,所述装置还包括第一训练模块,所述第一训练模块用于获取训练样本,所述训练样本包括样本文本、样本图像和用于表示所述样本文本和所述样本图像是否匹配的标注信息;通过初始图像编码器,对所述样本图像进行图像编码,得到所述样本图像的图像编码表示;通过初始文本编码器,对所述样本文本进行语义编码,得到所述样本文本对应的文本语义表示;计算所述图像编码表示与所述文本语义表示之间的相似度,根据所述相似度确定关于所述样本文本与所述样本图像是否匹配的预测结果;根据所述标注信息和所述预测结果的差异,构建样本损失,根据所述样本损失更新所述初始图像编码器和所述初始文本编码器后返回所述获取训练样本的步骤继续训练,得到所述扩散模型的图像编码器和所述扩散模型的文本编码器。
在一个实施例中,所述获取模块还用于获取提示文本模板与多个图像标签;将所述多个图像标签中的每个图像标签,分别填充至所述提示文本模板中,得到多个与相应的图像标签对应的提示文本。
在一个实施例中,所述获取模块还用于对所述原始图像进行划分,得到多个子图;所述噪声预测模块还用于对于每个子图,依次从所述多个提示文本中获取提示文本,对于每次获取的提示文本,将所述子图、获取的提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述子图和所述随机噪声图像生成带噪子图,根据所述带噪子图与所述提示文本生成子预测噪声图像,计算生成的所述子预测噪声图像与所述随机噪声图像的差异;
所述确定模块还用于确定生成差异最小的子预测噪声图像所依赖的提示文本;
所述标签分类模块还用于将所述所依赖的提示文本对应的图像标签,作为所述子图的图像标签;将所述多个子图各自的图像标签,作为所述原始图像的图像标签。
在一个实施例中,所述装置还包括第二训练模块,所述第二训练模块用于获取训练样本,所述训练样本包括通用图像和业务图像,多个第一样本图像均来源于通用图像,多个第二样本图像均来源于业务图像,所述多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与所述多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同;在第一训练阶段,使用所述多个第一样本图像和所述多个第二样本图像,对初始扩散模型进行第一阶段的模型训练,得到第一阶段训练好的扩散模型;在第二训练阶段,使用所述通用图像,对所述第一阶段训练好的扩散模型继续进行第二阶段的模型训练,得到第二阶段训练好的扩散模型;将所述第二阶段训练好的扩散模型,作为所述已训练好的扩散模型。
在一个实施例中,所述第二训练模块还用于对于每个样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型。
第三方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定生成相应差异最小的预测噪声图像所依赖的提示文本;
将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
第四方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定生成相应差异最小的预测噪声图像所依赖的提示文本;
将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
第五方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定生成相应差异最小的预测噪声图像所依赖的提示文本;
将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
上述图像分类方法、装置、设备、存储介质和程序产品,获取多个提示文本,每个提示文本根据不同的图像标签生成;对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异,即每个提示文本对应一个随机噪声图像,将生成相应差异最小的预测噪声图像所依赖的提示文本对应的图像标签,作为原始图像的图像标签。上述方法可以在扩散模型生成图像的过程中,将扩散模型的能力直接迁移至多标签分类任务,降低人工标注工作量,减少大量的人工标注成本,提升了图像多标签分类效率。
第六方面,本申请还提供了一种扩散模型的处理方法,所述方法包括:
获取多个样本图像,每个样本图像对应有图像标签;
对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
第七方面,本申请还提供了一种扩散模型的处理装置,所述装置包括:样本获取模块、样本训练模块和模型更新模块,其中:
样本获取模块,用于获取多个样本图像,每个样本图像对应有图像标签;
样本训练模块,用于对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
模型更新模块,用于根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
第八方面,本申请还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
获取多个样本图像,每个样本图像对应有图像标签;
对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
第九方面,本申请还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
获取多个样本图像,每个样本图像对应有图像标签;
对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
第十方面,本申请还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:
获取多个样本图像,每个样本图像对应有图像标签;
对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
上述扩散模型的处理方法、装置、设备、存储介质和程序产品,对于每个样本图像,根据样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成预测噪声图像,根据预测噪声图像对带噪图像进行去噪处理,得到预测图像;根据预测图像与样本图像之间的差异,构建样本损失,根据样本损失更新初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。通过上述方法获得的扩散模型可以应用在图像分类中,通过扩散模型自动进行图像分类,以得到图像的标签,无需人工进行标注,可以降低标注工作量,减少大量的人工标注成本,提升了图像多标签分类效率。
附图说明
图1为一个实施例中图像分类方法的应用环境图;
图2为一个实施例中图像分类方法的流程示意图;
图3为扩散模型的结构示意图;
图4为图像分类方法的整体框架示意图;
图5为一个实施例中噪声预测器的结构示意图;
图6为一个实施例中CLIP模型的训练过程示意图;
图7为一个实施例中扩散模型中用于训练的数据集格式示意图;
图8为一个实施例中初始扩散图像的第一训练阶段的训练过程示意图;
图9为初始扩散图像的第二训练阶段的训练过程示意图;
图10为一个实施例中图像分类装置的结构框图;
图11为一个实施例中扩散模型的处理装置的结构框图;
图12为一个实施例中服务器的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的图像分类方法、扩散模型的处理方法,涉及人工智能(ArtificialIntelligence,AI)技术,人工智能技术是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
其中,计算机视觉技术(Computer Vision,CV)计算机视觉是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括图像处理、图像识别、图像语义理解、图像检索、OCR、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3D技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
扩散模型(Diffusion Model)是一种依赖先验的条件模型,在图像生成任务中,先验通常是文本、图像或语义图,即扩散模型根据输入的文本、图像或语义图生成相应的图像。
本申请实施例提供的图像分类方法,可以应用于如图1所示的应用环境中。其中,服务器104从终端102获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;服务器104对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据原始图像和随机噪声图像生成带噪图像,根据带噪图像与提示文本生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异;服务器104确定生成相应差异最小的预测噪声图像所依赖的提示文本;服务器104将所依赖的提示文本对应的图像标签,作为原始图像的图像标签。数据存储系统可以存储服务器104需要处理的多个提示文本。数据存储系统可以集成在服务器104上,也可以放在云上或其他服务器上。
在其它实施例中,上述图像分类方法也可以由终端102执行,终端102获取原始图像和多个提示文本,对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,继而确定原始图像的图像标签。
其中,终端102可以但不限于是各种台式计算机、笔记本电脑、智能手机、平板电脑、物联网设备和便携式可穿戴设备,物联网设备可为智能车载设备等。便携式可穿戴设备可为智能手表、智能手环、头戴设备等。服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种图像分类方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤202,获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成。
其中,提示文本是扩散模型生成图像的先验内容,即扩散模型基于提示文本生成图像,提示文本包括图像标签,图像标签是预设图像分类类别,例如,图像标签可以是风景、美食、建筑、动物,人物,等等。多标签图像分类是将图像归类为多个图像标签中的一个或多个的过程。本实施例中,通过对图像标签设置不同的权重,或者通过混合图像标签的方法,根据不同的图像标签生成提示文本,每个提示文本均不相同。提示文本的格式一般为Aphoto of a{class}。
在一些实施例中,原始图像可以是商品图像,图像标签可以是商品类别,例如,商品类别可以是生活用品、母婴用品、服饰用品、彩妆用品等等。多标签图像分类是对商品图像进行商品分类。
在一些实施例中,原始图像可以是视频封面,图像标签可以是视频类别,例如,视频类别可以是喜剧类别、动作类别、恐怖类别、科幻类别等等。多标签图像分类是对视频封面进行视频分类。
步骤204,对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据原始图像和随机噪声图像生成带噪图像,根据带噪图像与提示文本生成预测噪声图像,计算生成的预测噪声图像与随机噪声的差异。
其中,随机噪声图像是用于表示高斯噪声即随机噪声的图像,随机噪声可以通过高斯分布随机确定;随机噪声图像记为sampleε~N(0,1),N(0,1)表示高斯分布,ε表示随机噪声图像。随机噪声图像的生成与随机噪声量相关,随机噪声量记为t。随机噪声量t用于模拟一个随时间逐渐增强的扰动过程。每个随机噪声量代表一个扰动过程,从初始状态开始,通过多次应用噪声来逐渐改变图像的分布。因此,较小的随机噪声量代表较弱的噪声扰动,而较大的随机噪声量代表更强的噪声扰动。
扩散模型用于基于提示文本生成图像。图3为扩散模型的结构示意图,如图3所示,扩散模型包括CLIP(Contrastive Language-Image Pre-training)模型、扩散器、噪声预测器和图像解码器,其中,CLIP模型包括图像编码器和文本编码器。扩散模型生成预测图像的过程为:原始图像X经过图像编码器进行编码后,得到原始图像在隐空间的图像编码表示,记为Z;图像编码表示Z输入扩散器,通过扩散器将图像编码表示Z与随机噪声图像sampleε~N(0,1)进行叠加处理,产生带噪图像ZT;此时,通过文本编码器对提示文本进行语义编码,得到提示文本对应的文本语义表示,记为τθ;将带噪图像ZT、文本语义表示τθ和随机噪声量t的编码信息输入噪声预测器,通过噪声预测器生成预测噪声图像;按照预设公式对带噪图像ZT与预测噪声图像进行相减,得到随机噪声量t的前一步所对应的预测带噪图,记为ZT-1;将预测带噪图ZT-1、文本语义表示τθ和随机噪声量t-1的编码信息输入噪声预测器,通过噪声预测器生成预测带噪图ZT-2;依次类推,直至噪声预测器生成预测带噪图Z0,即得到未叠加随机噪声图像状态是对应的图像编码表示Z。通过图像解码器对预测带噪图Z0进行解码处理,得到预测图像
本实施例对于每个提示文本的处理方式均相同,即将原始图像、一个提示文本与随机噪声图像输入已训练好的扩散模型,扩散模型输出预测噪声图像后,再将原始图像、下一个提示文本与随机噪声图像输入已训练好的扩散模型,依次循环,直至将原始图像、最后一个提示文本与随机噪声图像输入已训练好的扩散模型中。在每个提示文本依次输入至扩散模型时,扩散模型每轮基于提示文本生成预测噪声图像的过程中,所使用的随机噪声图像可以相同,也可以不相同。
具体地,服务器从多个提示文本读取一个提示文本,并将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过图像编码器对原始图像进行编码后,得到原始图像在隐空间的图像编码表示;将图像编码表示和随机噪声图像输入扩散器,通过扩散器将图像编码表示与随机噪声图像进行叠加处理,产生带噪图像;通过文本编码器对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪图像、文本语义表示和随机噪声量的编码信息输入噪声预测器,通过噪声预测器生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异。服务器从多个提示文本再次提取一个未输入扩散模型的提示文本,并返回执行将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型的步骤,并继续执行,直至多个提示文本均输入扩散模型后,得到每个提示文本所对应的预测噪声图像与随机噪声图像之间的差异,该差异是两者噪声之间的差异。
步骤206,确定生成相应差异最小的预测噪声图像所依赖的提示文本。
其中,差异最小的预测噪声图像指预测噪声图与随机噪声图像之间的差异最小时,所对应的预测噪声图像。差异最小的预测噪声图像所依赖的提示文本指的是生成预测噪声图像所需的提示文本。例如,提示文本有M个,M个提示文本对应生成有M个预测噪声图像,M个预测噪声图像与随机噪声图像之间的差异最小的预测噪声图像所依赖的提示文本为Mi,Mi表示第i个提示文本,将提示文本Mi对应的图像标签,作为原始图像的图像标签。
在一些实施例中,还可以确定多个生成相应差异相对较小的预测噪声图像所依赖的提示文本,并将所依赖的提示文本对应的图像标签,作为原始图像的图像标签,即该原始图像对应有多个图像标签。
其中,差异相对较小指的是按照从小到大的顺序排列各预测噪声图与随机噪声图像之间的差异,按照差异从小到大的顺序选取多个差异相对较小的预测噪声图像所依赖的提示文本,并将所依赖的提示文本对应的图像标签,作为原始图像的图像标签。
在一些实施例中,图4为图像分类方法的整体框架示意图,参照图4可知:经过步骤204后,可以选用如下所示的计算公式得到每个提示文本所对应的预测噪声图像与随机噪声图像之间的差异,并选取差异最小的预测噪声图像所依赖的提示文本,对应的计算公式如下:
其中,ε表示随机噪声图像;εθ表示预测噪声图像;xt表示带噪图像;Et表示预测图像;t表示随机噪声量。
具体地,服务器计算预测噪声图像εθ与随机噪声图像ε之差,确定预测噪声图像εθ与随机噪声图像ε之间差异最小的预测噪声图像所依赖的提示文本。
步骤208,将所依赖的提示文本对应的图像标签,作为原始图像的图像标签。
具体地,服务器确定生成相应差异最小的预测噪声图像所依赖的提示文本后,基于所依赖的提示文本对应的图像标签作为原始图像的图像标签。
上述图像分类方法中,获取多个提示文本,每个提示文本根据不同的图像标签生成;对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异,即每个提示文本对应一个随机噪声图像,将生成相应差异最小的预测噪声图像所依赖的提示文本对应的图像标签,作为原始图像的图像标签。上述方法可以在扩散模型生成图像的过程中,将扩散模型的能力直接迁移至多标签分类任务,降低人工标注工作量,减少大量的人工标注成本,提升了图像多标签分类效率。
在一个实施例中,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据原始图像和随机噪声图像生成带噪图像,包括以下步骤:
通过扩散模型的图像编码器,对原始图像进行图像编码,得到原始图像的图像编码表示;通过扩散模型的扩散器,将随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
其中,图像编码器为CLIP模型中的图像编码器,用于对原始图像进行编码处理,使得原始图像可以在隐空间中表示,得到的图像编码表示为图像嵌入向量。隐空间是生成领域常见的术语,代表图片的高维信息,一般用于生成结果的特征对齐。
将随机噪声图像对应的噪声信息叠加至图像编码信息是为了破坏原始图像,得到带噪图像,在带噪图像的去噪过程中重新生成预测图像。
具体地,服务器通过CLIP模型中的图像编码器对原始图像进行图像编码,得到原始图像的图像编码表示,原始图像的图像编码表示即为原始图像在隐空间中的图像表示;服务器通过扩散模型的扩散器,将随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
本实施例中,通过CLIP模型中的图像编码器对原始图像进行图像编码,使得原始图像可以在隐空间中表示,并且随机噪声图像对应的噪声信息叠加至图像编码信息也在隐空间中进行,通过在隐空间进行扩散,既能保持较高的生成质量又能减少计算的资源消耗。
在一个实施例中,根据带噪图像与提示文本生成预测噪声图像,包括以下步骤:
通过扩散模型的文本编码器,对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪图像和文本语义表示输入至扩散模型的噪声预测器中,通过噪声预测器输出预测噪声图像。
其中,扩散模型的文本编码器为CLIP模型的文本编码器。通过文本编码器对提示文本进行语义编码是为了使得提示文本可以在隐空间中表示。文本语义表示一般为文本嵌入向量。
具体地,服务器通过扩散器中CLIP模型的文本编码器,对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪图像、文本语义表示和随机噪声量编码信息输入至扩散模型的噪声预测器中,通过噪声预测器输出预测噪声图像,其中,随机噪声量编码信息指对随机噪声量进行编码得到的向量表示。
在一个实施例中,噪声预测器包括多个交替连接的残差网络和注意力层;将带噪图像和文本语义表示输入至扩散模型的噪声预测器中,通过噪声预测器输出预测噪声图像,包括:
一、将带噪图像和随机噪声图像所对应的随机噪声量编码信息输入第一个残差网络,通过第一个残差网络,输出预测噪声信息;将预测噪声信息和文本语义表示输入第一个注意力层,通过第一个注意力层,输出注意力信息。
其中,噪声预测器可以选用UNet模型,为了使文本语义表示添加至噪声预测过程中,本实施例的噪声预测器的结构示意图如图5所示,参照图5可知,对于一个提示文本,先用CLIP模型的文本编码器将提示文本压缩成文本语义表达,文本语义表达可以是文本嵌入向量。在UNet模型的去噪过程中,不断地用注意力机制给去噪的过程注入文本嵌入向量,每个残差网络不再和相邻的残差网络直接连接,而是在中间新增了注意力层。CLIP模型中文本编码器得到的文本嵌入向量就用这个注意力层来处理,通过这种方式就可以不断注入文本语义表达了。
随机噪声量编码信息指对随机噪声量进行编码得到的向量表示。预测噪声信息和注意力信息分别表示不同维度的多维度数组,通过UNet模型中多个交替连接的残差网络和注意力层依次处理,可以得到预测噪声图像。
具体地,服务器通过编码器对随机噪声图像的随机噪声量进行编码,得到随机噪声量编码信息,将带噪图像和随机噪声量编码信息输入第一个残差网络,通过第一个残差网络,输出预测噪声信息;将预测噪声信息和文本语义表示输入第一个注意力层,通过第一个注意力层,输出注意力信息。
二、从第二个残差网络开始,依次地将下一个残差网络作为当前残差网络,将下一个注意力层作为当前注意力层,将与当前残差网络连接的上一个注意力层输出的上一个注意力信息以及随机噪声量编码信息输入当前残差网络,通过当前残差网络,输出预测噪声信息;将当前残差网络输出的预测噪声信息和文本语义表示输入当前注意力层,通过当前注意力层,输出注意力信息。
具体地,从第二个残差网络开始,服务器将第二残差网络作为当前残差网络,将第二个注意力层作为当前注意力层,将与当前残差网络连接的上一个注意力层输出的上一个注意力信息以及随机噪声量编码信息输入当前残差网络,通过当前残差网络,输出预测噪声信息;将当前残差网络输出的预测噪声信息和文本语义表示输入当前注意力层,通过当前注意力层,输出注意力信息;将与当前注意力层连接的下一个残差网络作为当前残差网络,将下一个注意力层作为当前注意力层,并返回执行将与当前残差网络连接的上一个注意力层输出的上一个注意力信息以及随机噪声量编码信息输入当前残差网络的步骤,并继续执行,直至当前残差网络为最后一个残差网络,当前注意力层为最后一个注意力层。
三、将末尾注意力层输出的注意力信息作为预测噪声图像。
其中,末尾注意力层输出的注意力信息也是噪声预测器的输出,因此,末尾注意力层输出的注意力信息作为预测噪声图像。
本实施例中,根据带噪图像与提示文本生成预测噪声图像的过程中,在噪声预测器中引入多个注意力层,通过注意力层将文本语义表达添加至残差网络输出的预测噪声信息,可以不断注入文本语义表达至噪声预测器中,使得噪声预测器输出的预测噪声图像与原始图像的匹配度更高。
在一个实施例中,CLIP模型的训练过程具体包括以下步骤:
一、获取训练样本,训练样本包括样本文本、样本图像和用于表示样本文本和样本图像是否匹配的标注信息。
其中,样本文本是扩散模型生成图像的先验内容,即扩散模型基于样本文本生成图像,样本文本包括图像标签,图像标签是预设图像分类类别。
需要说明的是:随机抽取的样本文本和样本图像不一定匹配,因此,CLIP模型的任务就是预测样本文本和样本图像是否匹配。
标注信息包括匹配和不匹配两种信息。标注信息是匹配信息时,表示样本文本和样本图像匹配;标注信息是不匹配信息时,表示样本文本和样本图像不匹配。
具体地,服务器从训练集中随机选取一个样本文本和一个样本图像,并人工为样本文本和样本图像添加表示样本文本和样本图像是否匹配的标注信息。
二、通过初始图像编码器,对样本图像进行图像编码,得到样本图像的图像编码表示。
其中,初始图像编码器为CLIP模型中初始状态的图像编码器。通过初始图像编码器对样本图像进行图像编码后,得到的图像编码表示为图像嵌入向量。
三、通过初始文本编码器,对样本文本进行语义编码,得到样本文本对应的文本语义表示。
其中,初始文本编码器为CLIP模型中初始状态的文本编码器。通过初始文本编码器对样本文本进行语义编码后,得到的文本语义表示为文本嵌入向量。
四、计算图像编码表示与文本语义表示之间的相似度,根据相似度确定关于样本文本与样本图像是否匹配的预测结果。
其中,本实施例通过余弦相似度来计算图像编码表示与文本语义表示之间的相似度,比如,若相似度大于预设阈值(例如0.8),则样本文本与样本图像匹配;若相似度小于或等于预设阈值(例如0.8就是),则样本文本与样本图像不匹配。通过相似度判断随机抽取的样本文本和样本图像是否匹配。
五、根据标注信息和预测结果的差异,构建样本损失,根据样本损失更新初始图像编码器和初始文本编码器后返回获取训练样本的步骤继续训练,得到扩散模型的图像编码器和扩散模型的文本编码器。
其中,CLIP模型在开始训练时,就算样本文本和样本图像是匹配的,但是由于CLIP模型中的初始图像编码器和初始文本编码器刚刚初始化,参数都是混乱的,因此,图像编码表示与文本语义表示一定也是混乱的,计算出来的相似度往往会接近于0。这就会出现如图6所示的状况,明明样本文本和样本图像是一对,他们的标注信息是匹配信息,但是余弦相似度算出来的预测结果却表示样本文本和样本图像不匹配,此时,标注信息和预测结果不相同,需要根据标注信息和预测结果的比对结果去反向更新初始图像编码器和初始文本编码器的参数。
通过不断地重复上述反向传播的过程,就能够训练好初始图像编码器和初始文本编码器,得到扩散模型的图像编码器和扩散模型的文本编码器。对于配对的样本图片和样本文字,扩散模型的图像编码器和扩散模型的文本编码器最后就可以输出相似的嵌入向量,计算余弦相似度就可以得到接近1的结果。而对于不匹配的样本图片和样本文字,扩散模型的图像编码器和扩散模型的文本编码器就会输出很不一样的嵌入向量,使得余弦相似度计算出来接近0。此时,将一张小狗的图片输入CLIP模型的图像编码器,同时将文字描述:“小狗照片”输入CLIP模型的文本编码器,CLIP模型就会生成两个相似的嵌入向量,从而判断出样本文字和样本图片是匹配的。此时,计算机视觉和人类语言这两个原本不相干的信息就通过CLIP模型联系到了一块,二者就拥有了统一的数学表示了。可以将提示文本通过一个文本编码器转换成图像表示,也可以将提示文本通过图像编码器转换成语义表示,二者就能够相互作用了。这也是扩散模型中可以通过文字生图片的秘密所在。
构建样本损失可通过损失函数计算标注信息和预测结果之间的相对距离,若相对距离小于预设值,则停止更新CLIP模型的参数,得到训练好的扩散模型的图像编码器和扩散模型的文本编码器。
具体地,服务器根据标注信息和预测结果的差异,构建样本损失,并更新初始图像编码器和初始文本编码器的参数,并返回获取训练样本的步骤继续训练,直至样本损失小于预设值,停止CLIP模型的训练,得到扩散模型的图像编码器和扩散模型的文本编码器。
本实施例中,通过训练CLIP模型,使得计算机视觉和人类语言这两个原本不相干的信息就通过CLIP模型联系到了一块,二者就拥有了统一的数学表示了;可以将提示文本通过一个文本编码器转换成图像表示,也可以将提示文本通过图像编码器转换成语义表示,二者就能够相互作用了,为扩散模型通过提示文本生预测图片提供基础。
在一个实施例中,获取多个提示文本,包括以下步骤:
获取提示文本模板与多个图像标签;将多个图像标签中的每个图像标签,分别填充至提示文本模板中,得到多个与相应的图像标签对应的提示文本。
其中,提示文本模板可以采用提示通用模板。本实施例包括第一图像标签集合和第二图像标签集合,将第一图像标签集合内的第一图像标签,以及第二图像标签集合内的第二图像标签进行组合,得到多个图像标签,得到的每个图像标签包括至少一个第一图像标签或第二图像标签,其中,第一图像标签集合中的第一图像标签与第二图像标签集合中的第二图像标签,来源于不同图像应用场景。例如,第一图像标签来源于扩散模型的原始训练数据中训练样本的图像标签,第二图像标签来源于业务所述的业务图像的图像标签。其中,业务指不同领域中的特定应用场景。
提示文本的一般格式为a photo of{class},对于M个图像标签对应的提示文本,分别表示为:Aphoto of class1,Aphot of class2,......,Aphoto of classM。图7为扩散模型中用于训练的数据集格式,图7中提示文本一栏所示的文本记为提示文本。
具体地,服务器从预先存储的第一图像标签集合读取多个第一图像标签,从预先存储的第二图像标签集合读取多个第二图像标签,将多个第一图像标签和多个第二图像标签分别填充至提示文本模板中,得到多个与相应的图像标签对应的提示文本。
本实施例中,将来源于不同图像应用场景的图像标签进行混合,得到本实施例所需的多个图像标签,使得扩散模型在基于提示文本生成预测图像的过程中,确定的生成相应差异最小的预测噪声图像所依赖的提示文本包括本业务的图像标签,进而保证为原始图像分配的图像标签包括本业务的图像标签,提高原始图像的标签标注精度。
在一个实施例中,由于原始图像上的特征在原始图像的尺寸范围内,所占范围比较小,因此,为了对特征进行精准的图像标签分类,本实施例中,所述方法还包括:
一、对原始图像进行划分,得到多个子图。
具体地,如图4所示,服务器将原始图像按照N*N网格划分,例如,N可以取3,将原始图像划分为9个子图。
其中,对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据原始图像和随机噪声图像生成带噪图像,根据带噪图像与提示文本生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异,确定生成相应差异最小的预测噪声图像所依赖的提示文本;将所依赖的提示文本对应的图像标签,作为原始图像的图像标签,包括:
二、对于每个子图,依次从多个提示文本中获取提示文本,对于每次获取的提示文本,将子图、获取的提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据子图和随机噪声图像生成带噪子图,根据带噪子图与提示文本生成子预测噪声图像,计算生成的子预测噪声图像与随机噪声图像的差异。
其中,对于每个子图的处理方式均相同,即将一个目标子图、一个提示文本与随机噪声图像输入已训练好的扩散模型,扩散模型输出子预测噪声图像后,再将该目标子图、下一个提示文本与随机噪声图像输入已训练好的扩散模型,依次循环,直至将该目标子图、最后一个提示文本与随机噪声图像输入已训练好的扩散模型中,得到目标子图所对应的多个子预测噪声图像。将下一个子图作为目标子图,并返回将一个目标子图、一个提示文本与随机噪声图像输入已训练好的扩散模型的步骤并继续执行,直至得到所有子图所对应的多个子预测噪声图像。
需要说明的是,对于每个子图,对应的随机噪声图像的尺寸大小与子图尺寸应当相同,对于原始图像,对应的随机噪声图像的尺寸大小与原始图像应当相同。
具体地,服务器从多个子图中提取一个目标子图,从多个提示文本读取一个提示文本,并将目标子图、提示文本与随机噪声图像输入已训练好的扩散模型,通过图像编码器对目标子图进行编码后,得到目标子图在隐空间的图像编码表示;将图像编码表示和随机噪声图像输入扩散器,通过扩散器将图像编码表示与随机噪声图像进行叠加处理,产生带噪子图;通过文本编码器对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪子图、文本语义表示和随机噪声量的编码信息输入噪声预测器,通过噪声预测器生成子预测噪声图像,计算生成的子预测噪声图像与随机噪声图像的差异。服务器从多个提示文本再次提取一个未输入扩散模型的提示文本,并返回执行将目标子图、提示文本与随机噪声图像输入已训练好的扩散模型的步骤,并继续执行,直至多个提示文本均输入扩散模型后,得到目标子图的每个提示文本所对应的子预测噪声图像与随机噪声图像之间的差异,该差异是两者噪声之间的差异。
服务器从多个子图中再次提取一个未输入扩散模型的目标子图,并返回执行将目标子图、提示文本与随机噪声图像输入已训练好的扩散模型的步骤,并继续执行,直至得到所有子图对应的每个提示文本所对应的子预测噪声图像与随机噪声图像之间的差异,该差异是两者噪声之间的差异。
在一些实施例中,将子图、获取的提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据子图和随机噪声图像生成带噪子图,包括:
通过扩散模型的图像编码器,对子图进行图像编码,得到子图的图像编码表示;通过扩散模型的扩散器,将随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪子图。
其中,图像编码器为CLIP模型中的图像编码器,用于对子图进行编码处理,使得子图可以在隐空间中表示,得到的图像编码表示为图像嵌入向量。隐空间是生成领域常见的术语,代表图片的高维信息,一般用于生成结果的特征对齐。
将随机噪声图像对应的噪声信息叠加至图像编码信息是为了破坏原始图像,得到带噪子图,在带噪子图的去噪过程中重新生成预测子图。
具体地,服务器通过CLIP模型中的图像编码器对子图进行图像编码,得到子图的图像编码表示,子图的图像编码表示即为子图在隐空间中的图像表示;服务器通过扩散模型的扩散器,将随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
本实施例中,通过CLIP模型中的图像编码器对子图进行图像编码,使得子图可以在隐空间中表示,并且随机噪声图像对应的噪声信息叠加至图像编码信息也在隐空间中进行,通过在隐空间进行扩散,既能保持较高的生成质量又能减少计算的资源消耗。
在一些实施例中,根据带噪子图与提示文本生成子预测噪声图像,包括:
通过扩散模型的文本编码器,对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪子图和文本语义表示输入至扩散模型的噪声预测器中,通过噪声预测器输出子预测噪声图像。
其中,扩散模型的文本编码器为CLIP模型的文本编码器。通过文本编码器对提示文本进行语义编码是为了使得提示文本可以在隐空间中表示。文本语义表示一般为文本嵌入向量。
具体地,服务器通过扩散器中CLIP模型的文本编码器,对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪子图、文本语义表示和随机噪声量编码信息输入至扩散模型的噪声预测器中,通过噪声预测器输出子预测噪声图像,其中,随机噪声量编码信息指对随机噪声量进行编码得到的向量表示。
三、确定生成差异最小的子预测噪声图像所依赖的提示文本。
其中,服务器得到所有子图对应的每个提示文本所对应的子预测噪声图像与随机噪声图像之间的差异后,确定每个子图中生成差异最小的子预测噪声图像所依赖的提示文本。
例如,如图4所示,有9个子图,9个提示文本,对于子图1,基于子图1、9个提示文本生成的9个子预测噪声图像,9个子预测噪声图像中与随机噪声图像差异最小的子预测噪声图像所依赖的提示文本为提示文本3,则将提示文本3对应的图像标签,作为子图1的图像标签。对于子图2,基于子图2、9个提示文本生成的9个子预测噪声图像,9个子预测噪声图像中与随机噪声图像差异最小的子预测噪声图像所依赖的提示文本为提示文本7,则将提示文本7对应的图像标签,作为子图2的图像标签。按照相同的处理方式处理剩余子图,确定每个子图中生成差异最小的子预测噪声图像所依赖的提示文本,将每个子图所依赖的提示文本对应的图像标签,作为各子图的图像标签。
四、将所依赖的提示文本对应的图像标签,作为子图的图像标签。
具体地,对于每个子图,服务器确定各子图中生成相应差异最小的子预测噪声图像所依赖的提示文本后,基于所依赖的提示文本对应的图像标签作为各子图的图像标签。
五、将多个子图各自的图像标签,作为原始图像的多个图像标签。
本实施例中,将原始图像划分为多个子图,对于每个子图,基于多个提示文本和扩散模型,生成多个提示文本对应的子预测噪声图像,确定生成差异最小的子预测噪声图像所依赖的提示文本;将所依赖的提示文本对应的图像标签,作为子图的图像标签;将多个子图各自的图像标签,作为原始图像的图像标签,可以对原始图像各区域中图像特征分配图像标签,增加原始图像的图像标签,使得原始图像的图像标签的类别更多、对原始图像的标注精度更高。
在一个实施例中,本实施例提供一种图像分类方法的详细步骤,具体包括以下步骤:
一、获取提示文本模板与多个图像标签。
二、将多个图像标签中的每个图像标签,分别填充至提示文本模板中,得到多个与相应的图像标签对应的提示文本。
三、对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型的图像编码器,对原始图像进行图像编码,得到原始图像的图像编码表示。
四、通过扩散模型的扩散器,将随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
五、通过扩散模型的文本编码器,对提示文本进行语义编码,得到提示文本对应的文本语义表示。
六、将带噪图像和随机噪声图像所对应的随机噪声量编码信息输入噪声预测器的第一个残差网络,通过第一个残差网络,输出预测噪声信息;将预测噪声信息和文本语义表示输入噪声预测器的第一个注意力层,通过第一个注意力层,输出注意力信息。
七、从噪声预测器的第二个残差网络开始,依次地将下一个残差网络作为当前残差网络,将噪声预测器的下一个注意力层作为当前注意力层,将与当前残差网络连接的上一个注意力层输出的上一个注意力信息以及随机噪声量编码信息输入当前残差网络,通过当前残差网络,输出预测噪声信息;将当前残差网络输出的预测噪声信息和文本语义表示输入当前注意力层,通过当前注意力层,输出注意力信息。
八、将噪声预测器的末尾注意力层输出的注意力信息作为预测噪声图像。
九、计算生成的预测噪声图像与随机噪声图像的差异。
十、确定生成相应差异最小的预测噪声图像所依赖的提示文本。
十一、将所依赖的提示文本对应的图像标签,作为原始图像的图像标签。
本实施例中,获取多个提示文本,每个提示文本根据不同的图像标签生成;对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异,即每个提示文本对应一个随机噪声图像,将生成相应差异最小的预测噪声图像所依赖的提示文本对应的图像标签,作为原始图像的图像标签。上述方法可以在扩散模型生成图像的过程中,将扩散模型的能力直接迁移至多标签分类工作,在降低标注量的同时,不用重新训练扩散模型,直接使用现有扩散模型来得到原始图像的最终标签,极大地降低工作量。
在一个实施例中,本实施例提供一种扩散模型的处理方法,可以应用于如图1所示的应用环境中。其中,服务器104从终端102或者数据存储系统中获取多个样本图像,每个样本图像对应有图像标签;对于每个样本图像,服务器104根据样本图像的图像标签生成相应样本提示文本,服务器104通过初始扩散模型根据样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成预测噪声图像,根据预测噪声图像对带噪图像进行去噪处理,得到预测图像;服务器104根据预测图像与样本图像之间的差异,构建样本损失,服务器104根据样本损失更新初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
在一个实施例中,提供了一种扩散模型的处理方法,以该方法应用于图1中的服务器为例进行说明,具体包括以下步骤:
一、获取多个样本图像,每个样本图像对应有图像标签。
其中,目前扩散模型所使用的训练数据和应用场景的业务数据之间存在较大的领域差异,导致扩散模型对图像标签分类精度较低,因此,为解决上述问题,本实施例在进行图像分类之前需要获取一个适合本应用场景所需的扩散模型。为获得适用于本业务的扩散模型,本实施例的样本图像包括应用场景所需的业务图像以及扩散模型所使用的通用图像,采用业务图像和通用图像一起训练扩散模型,可以将扩散模型的能力迁移至本业务的多标签分类工作中。其中,通用图像指扩散模型的通用训练样本集中的样本图像,其中,通过图像涉及各领域的样本图像。例如,通用图像包括食品领域的样本图像、动物领域的样本图像、风景领域的样本图像。业务图像指本申请的具体应用场景所涉及的图像,如商品图像分类场景、视频封面图像分类场景。
具体地,服务器从扩散模型所使用的原始训练样本集中提取多个通用图像,从应用场景所需的业务数据中提取多个业务图像,将通用图像和业务图像作为训练适用于本业务的扩散模型所需的样本图像。
二、对于每个样本图像,根据样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成预测噪声图像,根据预测噪声图像对带噪图像进行去噪处理,得到预测图像。
在一些实施例中,根据样本图像的图像标签生成相应样本提示文本,包括:
获取样本提示文本模板与样本图像的多个图像标签;将多个图像标签中的每个图像标签,分别填充至样本提示文本模板中,得到多个与相应的图像标签对应的样本提示文本。
其中,样本提示文本模板可以采用提示通用模板。本实施例包括第一图像标签集合和第二图像标签集合,将第一图像标签集合内的第一图像标签,以及第二图像标签集合内的第二图像标签进行组合,得到多个图像标签,得到的每个图像标签包括至少一个第一图像标签或第二图像标签,其中,第一图像标签集合中的第一图像标签与第二图像标签集合中的第二图像标签,来源于不同图像应用场景。例如,第一图像标签来源于扩散模型的原始训练数据中训练样本的图像标签,第二图像标签来源于业务所述的业务图像的图像标签。其中,业务指不同领域中的特定应用场景。
样本提示文本的一般格式为a photo of{class},对于M个图像标签对应的提示文本,分别表示为:Aphoto of class1,Aphot of class2,......,Aphoto of classM。
具体地,服务器从预先存储的第一图像标签集合读取多个第一图像标签,从预先存储的第二图像标签集合读取多个第二图像标签,将多个第一图像标签和多个第二图像标签分别填充至样本提示文本模板中,得到多个与相应的图像标签对应的样本提示文本。
在一些实施例中,通过初始扩散模型根据样本图像和样本随机噪声图像生成带噪图像,包括:
通过初始扩散模型的图像编码器,对样本图像进行图像编码,得到样本图像的图像编码表示;通过初始扩散模型的扩散器,将样本随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
其中,图像编码器为CLIP模型中的图像编码器,用于对样本图像进行编码处理,使得样本图像可以在隐空间中表示,得到的图像编码表示为图像嵌入向量。隐空间是生成领域常见的术语,代表图片的高维信息,一般用于生成结果的特征对齐。
将样本随机噪声图像对应的噪声信息叠加至图像编码信息是为了破坏样本图像,得到带噪图像,在带噪图像的去噪过程中重新生成预测图像。
需要说明的是:图像编码器为CLIP模型中的图像编码器,在训练初始扩散模型时,CLIP模型的图像编码器冻结,即在训练扩散模型时,CLIP模型的图像编码器已训练好,在更新初始扩散模型的参数时,不更新CLIP模型的参数。
具体地,服务器通过CLIP模型中的图像编码器对样本图像进行图像编码,得到样本图像的图像编码表示,样本图像的图像编码表示即为样本图像在隐空间中的图像表示;服务器通过初始扩散模型的扩散器,将样本随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
在一些实施例中,根据带噪图像与样本提示文本生成预测噪声图像,包括:
通过初始扩散模型的文本编码器,对样本提示文本进行语义编码,得到样本提示文本对应的样本文本语义表示;将带噪图像和样本文本语义表示输入至初始扩散模型的噪声预测器中,通过噪声预测器输出预测噪声图像。
其中,初始扩散模型的文本编码器为CLIP模型的文本编码器。通过文本编码器对样本提示文本进行语义编码是为了使得样本提示文本可以在隐空间中表示。样本文本语义表示一般为文本嵌入向量。
需要说明的是:文本编码器为CLIP模型中的图像编码器,在训练初始扩散模型时,CLIP模型的文本编码器冻结,即在训练扩散模型时,CLIP模型的文本编码器已训练好,在更新初始扩散模型的参数时,不更新CLIP模型的参数。
具体地,服务器通过初始扩散器中CLIP模型的文本编码器,对样本提示文本进行语义编码,得到样本提示文本对应的样本文本语义表示;将带噪图像、样本文本语义表示和样本随机噪声量编码信息输入至初始扩散模型的噪声预测器中,通过噪声预测器输出预测噪声图像,其中,样本随机噪声量编码信息指对样本随机噪声量进行编码得到的向量表示。
在一些实施例中,根据预测噪声图像对带噪图像进行去噪处理,得到预测图像,包括:
按照预设公式对带噪图像与预测噪声图像进行相减,得到随机噪声量t的前一步所对应的预测带噪图ZT-1;将前一步所对应的预测带噪图、样本文本语义表示和随机噪声量t-1的编码信息输入噪声预测器,通过噪声预测器生成预测带噪图ZT-2;依次类推,直至噪声预测器生成预测带噪图Z0,通过图像解码器对预测带噪图Z0进行解码处理,得到预测图像。
三、根据预测图像与样本图像之间的差异,构建样本损失,根据样本损失更新初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
其中,样本损失保证预测图像与样本图像之间的像素点距离小于预设值,通过样本损失计算预测图像与样本图像之间的像素点距离,若像素点距离小于预设值,则停止更新初始扩散模型的参数,得到训练好的扩散模型。样本损失可以采用以下计算公式计算:
式中,lg为样本损失;N为样本图像的像素点个数;Gi为预测图像中第i个像素点;Ji为样本图像中第i个像素点。
具体地,服务器根据预测图像与样本图像之间的像素点距离,构建样本损失,并更新初始扩散模型的参数,并返回获取多个样本图像的步骤继续训练,直至样本损失小于预设值,停止初始扩散模型的训练,得到已训练好的扩散模型。
本实施例中,通过训练一个适合本应用场景所需的扩散模型,避免目前所使用的扩散模型所使用的训练数据和应用场景所需的业务数据之间存在较大的领域差异,导致扩散模型对图像标签分类精度较低的问题,提高图像标签分类的精度。
在一个实施例中,为了将扩散模型的能力迁移至本业务的多标签分类工作中,在样本图像中增加来源于业务图像的第二样本图像,使用第二样本图像训练扩散模型,可以使扩散模型具有本业务的识别能力。具体地,扩散模型的训练步骤包括:
一、获取训练样本,训练样本包括通用图像和业务图像,多个第一样本图像均来源于通用图像,多个第二样本图像均来源于业务图像,多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同。
其中,目前所使用的扩散模型所使用的训练数据和应用场景所需的业务数据之间存在较大的领域差异,导致扩散模型对图像标签分类精度较低,因此,为解决上述问题,本实施例在进行图像分类之前需要将扩散模型的能力迁移至本业务的多标签分类工作中。
本实施例的训练样本包括通用图像和业务图像,多个第一样本图像来源于通用图像,多个第二样本图像来源于业务图像,该多个第一样本图像和该多个第二样本图像均对应有各自的多个图像标签,多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同。采用业务图像和通用图像一起训练扩散模型,可以将扩散模型的能力迁移至本业务的多标签分类工作中。
具体地,服务器可以先从业务图像中选出一些图像,作为第二样本图像,根据第二样本图像所具有的图像标签,从通用图像中选出一些具备上述图像标签中的任意一个或多个图像标签的若干图像,作为第一样本图像,根据第一样本图像和第二样本图像,得到训练样本。
通过上述方法确定的第一样本图像所属领域更贴近第二样本图像所属领域,通过上述方法确定第一样本图像,是为了减小目前所使用的扩散模型所使用的训练数据和应用场景所需的业务数据之间的领域差异。在样本图像中增加来源于业务图像的第二样本图像,使用第二样本图像训练扩散模型,可以将扩散模型的能力迁移至本业务的多标签分类工作中,使扩散模型具有本业务的识别能力。
二、在第一训练阶段,使用多个第一样本图像和多个第二样本图像,对初始扩散模型进行第一阶段的模型训练,得到第一阶段训练好的扩散模型。
其中,在第一训练阶段,使用来源于通用图像的第一样本图像,以及来源于业务图像的第二样本图像共同训练初始扩散模型,得到的第一阶段训练好的扩散模型具备识别本业务的业务图像的能力。
图8为初始扩散图像的第一训练阶段的训练过程示意图,参照图8可知,通过初始扩散模型的图像编码器,对第一样本图像和第二样本图像进行图像编码,得到第一样本图像的图像编码表示如图8中eopt所示,得到第二样本图像的图像编码表示如图8中etpt所示。在初始扩散模型的第一训练阶段中,通过重建损失保证etpt尽可能靠近eopt,使得第一阶段训练好的扩散模型具备识别本业务的业务图像的能力。
具体地,对于每个第一样本图像,服务器根据第一样本图像的图像标签生成相应样本提示文本,服务器将第一样本图像、样本提示文本与样本随机噪声图像输入初始扩散模型中,服务器通过初始扩散模型根据第一样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第一预测噪声图像,根据第一预测噪声图像对带噪图像进行去噪处理,得到第一预测图像;服务器根据第一预测图像与第一样本图像之间的差异,构建样本损失,服务器根据样本损失更新初始扩散模型;对于每个第二样本图像,服务器根据第二样本图像的图像标签生成相应样本提示文本,将第二样本图像、样本提示文本与样本随机噪声图像输入更新的初始扩散模型中,服务器通过更新的初始扩散模型根据第二样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第二预测噪声图像,服务器根据第二预测噪声图像对带噪图像进行去噪处理,得到第二预测图像;服务器根据第二预测图像与第二样本图像之间的差异,构建样本损失,服务器根据样本损失继续更新初始扩散模型,直至满足训练停止条件时,得到第一阶段训练好的扩散模型。其中,训练停止条件可以是样本损伤小于预设值,也可以是迭代次数达到预设次数。每个第二样本图像的训练方法采用上述实施例中样本图像的训练方法,因此,在此不再累述第二样本图像的具体训练过程。
三、在第二训练阶段,使用通用图像,对第一阶段训练好的扩散模型继续进行第二阶段的模型训练,得到第二阶段训练好的扩散模型。
其中,图9为初始扩散图像的第二训练阶段的训练过程示意图,参照图9可知,在第二训练阶段,剔除来源于业务图像的第二样本图像,仅使用来源于通用图像的第一样本图像训练第一阶段训练好的扩散模型,是为了避免引入过多的业务图像导致过拟合的情况,进而保证扩散模型的泛化性。其中,泛化性指模型经过训练后,应用到新数据并做出准确预测的能力。在第二训练阶段中,通过重建损失是使用eopt直接达到原有扩散模型的能力,以避免每次都需要再次输入业务图像的图像标签进行对齐。
具体地,对于每个通用图像,服务器根据通用图像的图像标签生成相应样本提示文本,服务器将通用图像、样本提示文本与样本随机噪声图像输入初始扩散模型中,服务器通过初始扩散模型根据通用图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第一预测噪声图像,服务器根据第一预测噪声图像对带噪图像进行去噪处理,得到第一预测图像;服务器根据第一预测图像与通用图像之间的差异,构建样本损失,根据样本损失更新第二阶段训练好的扩散模型。
四、将第二阶段训练好的扩散模型,作为已训练好的扩散模型。
本实施例中,通过在第一训练阶段中使用来源于通用图像的第一样本图像,以及来源于业务图像的第二样本图像共同训练初始扩散模型,得到的第一阶段训练好的扩散模型具备识别本业务的业务图像的能力;在第二训练阶段中剔除来源于业务图像的第二样本图像,仅使用来源于通用图像的第一样本图像训练第一阶段训练好的扩散模型,是为了避免引入过多的业务图像导致过拟合的情况,进而保证扩散模型的泛化性。通过上述方法训练得到的扩散模型,可以避免目前扩散模型所使用的训练数据和应用场景的业务数据之间存在较大的领域差异,导致扩散模型对图像标签分类精度较低的问题,提高图像标签分类的精度。
在一个实施例中,提供扩散模型的处理方法的详细步骤,具体包括以下步骤:
一、获取训练样本,训练样本包括通用图像和业务图像,多个第一样本图像均来源于通用图像,多个第二样本图像均来源于业务图像,多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同。
二、在第一训练阶段,对于每个第一样本图像,根据第一样本图像的图像标签生成相应样本提示文本,将第一样本图像、样本提示文本与样本随机噪声图像输入初始扩散模型中,通过初始扩散模型根据第一样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第一预测噪声图像,根据第一预测噪声图像对带噪图像进行去噪处理,得到第一预测图像;根据第一预测图像与第一样本图像之间的差异,构建样本损失,根据样本损失更新初始扩散模型。
三、对于每个第二样本图像,根据第二样本图像的图像标签生成相应样本提示文本,将第二样本图像、样本提示文本与样本随机噪声图像输入更新的初始扩散模型中,通过更新的初始扩散模型根据第二样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第二预测噪声图像,根据第二预测噪声图像对带噪图像进行去噪处理,得到第二预测图像;根据第二预测图像与第二样本图像之间的差异,构建样本损失,根据样本损失继续更新初始扩散模型,直至满足训练停止条件时,得到第一阶段训练好的扩散模型。
四、在第二训练阶段,剔除来源于业务图像的第二样本图像,仅使用来源于通用图像的第一样本图像训练初始扩散模型,对于每个第一样本图像,根据第一样本图像的图像标签生成相应样本提示文本,将第一样本图像、样本提示文本与样本随机噪声图像输入初始扩散模型中,通过初始扩散模型根据第一样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第一预测噪声图像,根据第一预测噪声图像对带噪图像进行去噪处理,得到第一预测图像;根据第一预测图像与第一样本图像之间的差异,构建样本损失,根据样本损失更新第一阶段训练好的扩散模型,将第二阶段训练好的扩散模型,作为已训练好的扩散模型,已训练好的扩散模型用于图像分类。
本实施例中,通过在第一训练阶段中使用来源于通用图像的第一样本图像,以及来源于业务图像的第二样本图像共同训练初始扩散模型,得到的第一阶段训练好的扩散模型具备识别本业务的业务图像的能力;在第二训练阶段中剔除来源于业务图像的第二样本图像,仅使用来源于通用图像的第一样本图像训练第一阶段训练好的扩散模型,是为了避免引入过多的业务图像导致过拟合的情况,进而保证扩散模型的泛化性。
应该理解的是,虽然如上所述的各实施例所涉及的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,如上所述的各实施例所涉及的流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的图像分类方法的图像分类装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个图像分类装置实施例中的具体限定可以参见上文中对于图像分类方法的限定,在此不再赘述。
在一个实施例中,如图10所示,提供了一种图像分类装置,包括:获取模块1001、噪声预测模块1002、确定模块1003和标签分类模块1004,其中:
获取模块1001,用于获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成。
噪声预测模块1002,用于对于每个提示文本,将原始图像、提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据原始图像和随机噪声图像生成带噪图像,根据带噪图像与提示文本生成预测噪声图像,计算生成的预测噪声图像与随机噪声图像的差异。
确定模块1003,用于确定生成相应差异最小的预测噪声图像所依赖的提示文本。
标签分类模块1004,用于将所依赖的提示文本对应的图像标签,作为原始图像的图像标签。
在一个实施例中,噪声预测模块1002还用于通过扩散模型的图像编码器,对原始图像进行图像编码,得到原始图像的图像编码表示;通过扩散模型的扩散器,将随机噪声图像对应的噪声信息叠加至图像编码信息,得到带噪图像。
在一个实施例中,噪声预测模块1002还用于通过扩散模型的文本编码器,对提示文本进行语义编码,得到提示文本对应的文本语义表示;将带噪图像和文本语义表示输入至扩散模型的噪声预测器中,通过噪声预测器输出预测噪声图像。
在一个实施例中,噪声预测器包括多个交替连接的残差网络和注意力层;噪声预测模块1002还用于将带噪图像和随机噪声图像所对应的随机噪声量编码信息输入第一个残差网络,通过第一个残差网络,输出预测噪声信息;将预测噪声信息和文本语义表示输入第一个注意力层,通过第一个注意力层,输出注意力信息;从第二个残差网络开始,依次地将下一个残差网络作为当前残差网络,将下一个注意力层作为当前注意力层,将与当前残差网络连接的上一个注意力层输出的上一个注意力信息以及随机噪声量编码信息输入当前残差网络,通过当前残差网络,输出预测噪声信息;将当前残差网络输出的预测噪声信息和文本语义表示输入当前注意力层,通过当前注意力层,输出注意力信息;将末尾注意力层输出的注意力信息作为预测噪声图像。
在一个实施例中,获取模块1001还用于获取提示文本模板与多个图像标签;多个图像标签中的每个图像标签,分别填充至提示文本模板中,得到多个与相应的图像标签对应的提示文本。
在一个实施例中,获取模块1001还用于对原始图像进行划分,得到多个子图;噪声预测模块1002还用于对于每个子图,依次从多个提示文本中获取提示文本,对于每次获取的提示文本,将子图、获取的提示文本与随机噪声图像输入已训练好的扩散模型,通过扩散模型根据子图和随机噪声图像生成带噪子图,根据带噪子图与提示文本生成子预测噪声图像,计算生成的子预测噪声图像与随机噪声图像的差异;确定模块1003还用于确定生成差异最小的子预测噪声图像所依赖的提示文本;标签分类模块1004还用于将所依赖的提示文本对应的图像标签,作为子图的图像标签;将多个子图各自的图像标签,作为原始图像的图像标签。
在一个实施例中,所述装置还包括:第一训练模块1005;
第一训练模块1005用于获取训练样本,训练样本包括样本文本、样本图像和用于表示样本文本和样本图像是否匹配的标注信息;通过初始图像编码器,对样本图像进行图像编码,得到样本图像的图像编码表示;通过初始文本编码器,对样本文本进行语义编码,得到样本文本对应的文本语义表示;计算图像编码表示与文本语义表示之间的相似度,根据相似度确定关于样本文本与样本图像是否匹配的预测结果;根据标注信息和预测结果的差异,构建样本损失,根据样本损失更新初始图像编码器和初始文本编码器后返回获取训练样本的步骤继续训练,得到扩散模型的图像编码器和扩散模型的文本编码器。
在一个实施例中,所述装置还包括:第二训练模块1006;
第二训练模块1006用于获取训练样本,训练样本包括通用图像和业务图像,多个第一样本图像均来源于通用图像,多个第二样本图像均来源于业务图像,多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同;在第一训练阶段,使用多个第一样本图像和多个第二样本图像,对初始扩散模型进行第一阶段的模型训练,得到第一阶段训练好的扩散模型;在第二训练阶段,使用通用图像,对第一阶段训练好的扩散模型继续进行第二阶段的模型训练,得到第二阶段训练好的扩散模型;将第二阶段训练好的扩散模型,作为已训练好的扩散模型。
在一个实施例中,第二训练模块1006还用于对于每个样本图像,根据样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成预测噪声图像,根据预测噪声图像对带噪图像进行去噪处理,得到预测图像;根据预测图像与样本图像之间的差异,构建样本损失,根据样本损失更新初始扩散模型。
上述图像分类装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
基于同样的发明构思,本申请实施例还提供了一种用于实现上述所涉及的扩散模型的处理方法的扩散模型的处理装置。该装置所提供的解决问题的实现方案与上述方法中所记载的实现方案相似,故下面所提供的一个或多个扩散模型的处理装置实施例中的具体限定可以参见上文中对于扩散模型的方法的限定,在此不再赘述。
在一个实施例中,如图11所示,提供了一种扩散模型的处理装置,包括:样本获取模块1101、样本训练模块1102和模型更新模块1103,其中:
样本获取模块1101用于获取多个样本图像,每个样本图像对应有图像标签;
样本训练模块1102用于对于每个样本图像,根据样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成预测噪声图像,根据预测噪声图像对带噪图像进行去噪处理,得到预测图像;
模型更新模块1103用于根据预测图像与样本图像之间的差异,构建样本损失,根据样本损失更新初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
在一个实施例中,样本图像包括多个第一样本图像和多个第二样本图像,第一样本图像来源于通用图像,第二样本图像来源于业务图像,多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同;样本训练模块1102还用于在第一训练阶段,使用多个第一样本图像和多个第二样本图像,对初始扩散模型进行第一阶段的模型训练,得到第一阶段训练好的扩散模型;在第二训练阶段,使用多个第一样本图像,对第一阶段训练好的扩散模型继续进行第二阶段的模型训练,得到第二阶段训练好的扩散模型;
模型更新模块1103还用于将第二阶段训练好的扩散模型,作为已训练好的扩散模型。
在一个实施例中,样本训练模块1102还用于对于每个第一样本图像,根据第一样本图像的图像标签生成相应样本提示文本,将第一样本图像、样本提示文本与样本随机噪声图像输入初始扩散模型中,通过初始扩散模型根据第一样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第一预测噪声图像,根据第一预测噪声图像对带噪图像进行去噪处理,得到第一预测图像;根据第一预测图像与第一样本图像之间的差异,构建样本损失,根据样本损失更新初始扩散模型;对于每个第二样本图像,根据第二样本图像的图像标签生成相应样本提示文本,将第二样本图像、样本提示文本与样本随机噪声图像输入更新的初始扩散模型中,通过更新的初始扩散模型根据第二样本图像和样本随机噪声图像生成带噪图像,根据带噪图像与样本提示文本生成第二预测噪声图像,根据第二预测噪声图像对带噪图像进行去噪处理,得到第二预测图像;根据第二预测图像与第二样本图像之间的差异,构建样本损失,根据样本损失继续更新初始扩散模型,直至满足训练停止条件时,得到第一阶段训练好的扩散模型。
上述扩散模型的处理装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图12所示。该计算机设备包括处理器、存储器、输入/输出接口(Input/Output,简称I/O)和通信接口。其中,处理器、存储器和输入/输出接口通过系统总线连接,通信接口通过输入/输出接口连接到系统总线。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储提示文本。该计算机设备的输入/输出接口用于处理器与外部设备之间交换信息。该计算机设备的通信接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像分类方法。
本领域技术人员可以理解,图12中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述方法实施例中各步骤。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例中各步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述方法实施例中各步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。

Claims (15)

1.一种图像分类方法,其特征在于,所述方法包括:
获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定生成相应差异最小的预测噪声图像所依赖的提示文本;
将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
2.根据权利要求1所述的方法,其特征在于,所述将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,包括:
通过所述扩散模型的图像编码器,对所述原始图像进行图像编码,得到所述原始图像的图像编码表示;
通过所述扩散模型的扩散器,将所述随机噪声图像对应的噪声信息叠加至所述图像编码信息,得到所述带噪图像。
3.根据权利要求2所述的方法,其特征在于,所述根据所述带噪图像与所述提示文本生成预测噪声图像,包括:
通过所述扩散模型的文本编码器,对所述提示文本进行语义编码,得到所述提示文本对应的文本语义表示;
将所述带噪图像和所述文本语义表示输入至所述扩散模型的噪声预测器中,通过所述噪声预测器输出预测噪声图像。
4.根据权利要求3所述的方法,其特征在于,所述噪声预测器包括多个交替连接的残差网络和注意力层;所述将所述带噪图像和所述文本语义表示输入至所述扩散模型的噪声预测器中,通过所述噪声预测器输出预测噪声图像,包括:
将所述带噪图像和所述随机噪声图像所对应的随机噪声量编码信息输入第一个残差网络,通过所述第一个残差网络,输出预测噪声信息;将所述预测噪声信息和所述文本语义表示输入第一个注意力层,通过所述第一个注意力层,输出注意力信息;
从第二个残差网络开始,依次地将下一个残差网络作为当前残差网络,将下一个注意力层作为当前注意力层,将与所述当前残差网络连接的上一个注意力层输出的上一个注意力信息以及所述随机噪声量编码信息输入所述当前残差网络,通过所述当前残差网络,输出预测噪声信息;将所述当前残差网络输出的预测噪声信息和所述文本语义表示输入所述当前注意力层,通过所述当前注意力层,输出注意力信息;
将末尾注意力层输出的注意力信息作为所述预测噪声图像。
5.根据权利要求3所述的方法,其特征在于,所述方法还包括:
获取训练样本,所述训练样本包括样本文本、样本图像和用于表示所述样本文本和所述样本图像是否匹配的标注信息;
通过初始图像编码器,对所述样本图像进行图像编码,得到所述样本图像的图像编码表示;
通过初始文本编码器,对所述样本文本进行语义编码,得到所述样本文本对应的文本语义表示;
计算所述图像编码表示与所述文本语义表示之间的相似度,根据所述相似度确定关于所述样本文本与所述样本图像是否匹配的预测结果;
根据所述标注信息和所述预测结果的差异,构建样本损失,根据所述样本损失更新所述初始图像编码器和所述初始文本编码器后返回所述获取训练样本的步骤继续训练,得到所述扩散模型的图像编码器和所述扩散模型的文本编码器。
6.根据权利要求1所述的方法,其特征在于,所述获取多个提示文本,包括:
获取提示文本模板与多个图像标签;
将所述多个图像标签中的每个图像标签,分别填充至所述提示文本模板中,得到多个与相应的图像标签对应的提示文本。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
对所述原始图像进行划分,得到多个子图;
所述对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异,确定生成相应差异最小的预测噪声图像所依赖的提示文本;将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签,包括:
对于每个子图,依次从所述多个提示文本中获取提示文本,对于每次获取的提示文本,将所述子图、获取的提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述子图和所述随机噪声图像生成带噪子图,根据所述带噪子图与所述提示文本生成子预测噪声图像,计算生成的所述子预测噪声图像与所述随机噪声图像的差异;
确定生成差异最小的子预测噪声图像所依赖的提示文本;
将所述所依赖的提示文本对应的图像标签,作为所述子图的图像标签;
将所述多个子图各自的图像标签,作为所述原始图像的图像标签。
8.根据权利要求1至7任一项所述的方法,其特征在于,所述扩散模型的训练步骤包括:
获取训练样本,所述训练样本包括通用图像和业务图像,多个第一样本图像均来源于通用图像,多个第二样本图像均来源于业务图像,所述多个第一样本图像中第一样本图像所具有的图像标签形成的图像标签集合,与所述多个第二样本图像中第二样本图像所具有的图像标签形成的图像标签集合相同;
在第一训练阶段,使用所述多个第一样本图像和所述多个第二样本图像,对初始扩散模型进行第一阶段的模型训练,得到第一阶段训练好的扩散模型;
在第二训练阶段,使用所述通用图像,对所述第一阶段训练好的扩散模型继续进行第二阶段的模型训练,得到第二阶段训练好的扩散模型;
将所述第二阶段训练好的扩散模型,作为所述已训练好的扩散模型。
9.根据权利要求8所述的方法,其特征在于,在每个训练阶段所述扩散模型的训练步骤包括:
对于每个样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型。
10.一种扩散模型的处理方法,其特征在于,所述方法包括:
获取多个样本图像,每个样本图像对应有图像标签;
对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
11.一种图像分类装置,其特征在于,所述装置包括:
获取模块,用于获取原始图像和多个提示文本,每个提示文本根据不同的图像标签生成;
噪声预测模块,用于对于每个提示文本,将所述原始图像、所述提示文本与随机噪声图像输入已训练好的扩散模型,通过所述扩散模型根据所述原始图像和所述随机噪声图像生成带噪图像,根据所述带噪图像与所述提示文本生成预测噪声图像,计算生成的所述预测噪声图像与所述随机噪声图像的差异;
确定模块,用于确定生成差异最小的预测噪声图像所依赖的提示文本;
标签分类模块,用于将所述所依赖的提示文本对应的图像标签,作为所述原始图像的图像标签。
12.一种扩散模型的处理装置,其特征在于,所述装置包括:
样本获取模块,用于获取多个样本图像,每个样本图像对应有图像标签;
样本训练模块,用于对于每个所述样本图像,根据所述样本图像的图像标签生成相应样本提示文本,通过初始扩散模型根据所述样本图像和样本随机噪声图像生成带噪图像,根据所述带噪图像与所述样本提示文本生成预测噪声图像,根据所述预测噪声图像对所述带噪图像进行去噪处理,得到预测图像;
模型更新模块,用于根据所述预测图像与所述样本图像之间的差异,构建样本损失,根据所述样本损失更新所述初始扩散模型,更新后得到的训练好的扩散模型用于图像分类。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至10中任一项所述的方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
15.一种计算机程序产品,包括计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至10中任一项所述的方法的步骤。
CN202310746237.3A 2023-06-21 2023-06-21 图像分类方法、装置、设备、存储介质和程序产品 Pending CN116977714A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310746237.3A CN116977714A (zh) 2023-06-21 2023-06-21 图像分类方法、装置、设备、存储介质和程序产品

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310746237.3A CN116977714A (zh) 2023-06-21 2023-06-21 图像分类方法、装置、设备、存储介质和程序产品

Publications (1)

Publication Number Publication Date
CN116977714A true CN116977714A (zh) 2023-10-31

Family

ID=88484066

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310746237.3A Pending CN116977714A (zh) 2023-06-21 2023-06-21 图像分类方法、装置、设备、存储介质和程序产品

Country Status (1)

Country Link
CN (1) CN116977714A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117593595A (zh) * 2024-01-18 2024-02-23 腾讯科技(深圳)有限公司 基于人工智能的样本增广方法、装置及电子设备

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117593595A (zh) * 2024-01-18 2024-02-23 腾讯科技(深圳)有限公司 基于人工智能的样本增广方法、装置及电子设备
CN117593595B (zh) * 2024-01-18 2024-04-23 腾讯科技(深圳)有限公司 基于人工智能的样本增广方法、装置及电子设备

Similar Documents

Publication Publication Date Title
CN111401216B (zh) 图像处理、模型训练方法、装置、计算机设备和存储介质
CN111553267B (zh) 图像处理方法、图像处理模型训练方法及设备
Messaoud et al. Structural consistency and controllability for diverse colorization
US11983903B2 (en) Processing images using self-attention based neural networks
CN112418292B (zh) 一种图像质量评价的方法、装置、计算机设备及存储介质
CN111325766B (zh) 三维边缘检测方法、装置、存储介质和计算机设备
CN113780249B (zh) 表情识别模型的处理方法、装置、设备、介质和程序产品
Yuan et al. Compositional scene representation learning via reconstruction: A survey
CN116977714A (zh) 图像分类方法、装置、设备、存储介质和程序产品
CN114330514B (zh) 一种基于深度特征与梯度信息的数据重建方法及系统
CN114972016A (zh) 图像处理方法、装置、计算机设备、存储介质及程序产品
CN114998583A (zh) 图像处理方法、图像处理装置、设备及存储介质
Pintelas et al. A multi-view-CNN framework for deep representation learning in image classification
CN113657272B (zh) 一种基于缺失数据补全的微视频分类方法及系统
Qin et al. Depth estimation by parameter transfer with a lightweight model for single still images
CN114529785A (zh) 模型的训练方法、视频生成方法和装置、设备、介质
CN113554549B (zh) 文本图像的生成方法、装置、计算机设备和存储介质
CN115115910A (zh) 图像处理模型的训练方法、使用方法、装置、设备及介质
CN113011320A (zh) 视频处理方法、装置、电子设备及存储介质
Fan et al. Facial expression animation through action units transfer in latent space
Pallavi Suggestive GAN for supporting Dysgraphic drawing skills
Li et al. Disentangled representation transformer network for 3D face reconstruction and robust dense alignment
CN116933854B (zh) 图像生成模型的处理方法、装置、设备和存储介质
CN117036554A (zh) 图像处理方法、装置、计算机设备、存储介质和程序产品
Robert Improving Latent Representations of ConvNets for Visual Understanding

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication