CN117173493B - 分类模型的训练方法、装置、设备、程序产品及存储介质 - Google Patents
分类模型的训练方法、装置、设备、程序产品及存储介质 Download PDFInfo
- Publication number
- CN117173493B CN117173493B CN202311445577.9A CN202311445577A CN117173493B CN 117173493 B CN117173493 B CN 117173493B CN 202311445577 A CN202311445577 A CN 202311445577A CN 117173493 B CN117173493 B CN 117173493B
- Authority
- CN
- China
- Prior art keywords
- classification
- sample
- feature
- target
- feature extraction
- 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.)
- Active
Links
- 238000013145 classification model Methods 0.000 title claims abstract description 256
- 238000012549 training Methods 0.000 title claims abstract description 182
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000000605 extraction Methods 0.000 claims abstract description 223
- 238000012360 testing method Methods 0.000 claims description 66
- 230000006870 function Effects 0.000 claims description 36
- 210000002569 neuron Anatomy 0.000 claims description 28
- 230000015654 memory Effects 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 15
- 238000005516 engineering process Methods 0.000 abstract description 22
- 238000013473 artificial intelligence Methods 0.000 abstract description 10
- 238000010586 diagram Methods 0.000 description 14
- 238000004422 calculation algorithm Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000009826 distribution Methods 0.000 description 5
- 238000012512 characterization method Methods 0.000 description 3
- 230000009849 deactivation Effects 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000003058 natural language processing Methods 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 230000004913 activation Effects 0.000 description 2
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013135 deep learning Methods 0.000 description 2
- 230000037213 diet Effects 0.000 description 2
- 235000005911 diet Nutrition 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000007635 classification algorithm Methods 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000007418 data mining Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000002779 inactivation Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000011218 segmentation Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种分类模型的训练方法、装置、设备、程序产品及存储介质,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景;方法包括:分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,通过分类模型的分类层,分别基于第一样本特征及第二样本对训练样本特征进行分类,得到第一分类结果及第二分类结果,基于第一分类结果及训练样本的样本标签,确定第一损失值,基于第一分类结果和第二分类结果,确定第二损失值,基于第一损失值和第二损失值,更新分类模型的参数,得到训练后的分类模型。通过本申请,能够提高分类模型输出的分类结果的准确率。
Description
技术领域
本申请涉及计算机技术,尤其涉及一种分类模型的训练方法、装置、设备、程序产品及存储介质。
背景技术
随着计算机技术的发展,分类模型被用于越来越多的场景中,例如,自然语言处理场景、图像识别场景等,而训练分类模型的方法往往是直接使用带标签的样本,对分类模型进行训练,这样虽然能够得到分类模型,但是得到的分类模型输出的分类结果的准确率较低。
发明内容
本申请实施例提供一种分类模型的训练方法、分类模型的训练装置、电子设备、计算机程序产品及计算机可读存储介质,能够提高分类模型输出的分类结果的准确率。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种分类模型的训练方法,所述方法包括:
分别通过所述分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,其中,所述第一样本特征不同于所述第二样本特征;
通过所述分类模型的分类层,分别基于所述第一样本特征及所述第二样本特征对所述训练样本进行分类,得到第一分类结果及第二分类结果;
基于所述第一分类结果及所述训练样本的样本标签,确定用于表征所述分类模型的分类损失的第一损失值;
基于所述第一分类结果和所述第二分类结果,确定用于表征所述分类模型的一致性损失的第二损失值;
基于所述第一损失值和所述第二损失值,更新所述分类模型的参数,得到训练后的分类模型。
本申请实施例提供一种分类方法,所述方法包括:
获取待分类对象;
调用分类模型,对所述待分类对象进行标签类别的分类预测,得到所述待分类对象在各标签类别中的预测概率,其中,所述分类模型是通过上述分类模型的训练方法训练得到的。
本申请实施例提供一种分类模型的训练装置,所述装置包括:
特征提取模块,用于分别通过所述分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,其中,所述第一样本特征不同于所述第二样本特征;
特征分类模块,用于通过所述分类模型的分类层,分别基于所述第一样本特征及所述第二样本特征对所述训练样本进行分类,得到第一分类结果及第二分类结果;
第一损失值确定模块,用于基于所述第一分类结果及所述训练样本的样本标签,确定用于表征所述分类模型的分类损失的第一损失值;
第二损失值确定模块,用于基于所述第一分类结果和所述第二分类结果,确定用于表征所述分类模型的一致性损失的第二损失值;
参数更新模块,用于基于所述第一损失值和所述第二损失值,更新所述分类模型的参数,得到训练后的分类模型。
上述特征提取模块,还用于获取两个初始特征提取层,所述两个初始特征提取层中包括数量相同且位置相同的处于激活态的神经元;对至少一个所述初始特征提取层中的神经元进行去激活,得到包括失活神经元的所述第一特征提取层和所述第二特征提取层。
上述特征提取模块,还用于分别通过所述分类模型的第一特征提取层及第二特征提取层,对所述正样本进行特征提取,得到第一样本特征和第二样本特征;通过所述第一特征提取层和所述第二特征提取层中至少之一,对所述负样本进行特征提取,得到第三样本特征;基于所述第一样本特征、所述第二样本特征及所述第三样本特征,确定用于表征对比学习损失的第三损失值;基于所述第一损失值、所述第二损失值和所述第三损失值,更新所述分类模型的参数,得到训练后的分类模型。
上述第二损失值确定模块,还用于确定所述第一样本特征和所述第二样本特征之间的第一相似度,及所述第一样本特征和所述第三样本特征之间的第二相似度;基于所述第一相似度和所述第二相似度,确定用于表征对比学习损失的第三损失值。
上述第一损失值确定模块,还用于以最小化所述分类模型的分类结果中各所述标签类别的预测概率与相应样本标签之间的差异的和为目标,构建用于表征所述分类模型的分类损失的第一损失函数;确定所述第一分类结果中各标签类别的预测概率与相应样本标签之间的差异,作为第一差异;基于所述第一差异和所述第一损失函数,确定用于表征所述分类模型的分类损失的第一损失值。
上述第二损失值确定模块,还用于确定所述第一分类结果中各所述预测概率与预设概率之间的差值的集合,作为第三分类结果;确定所述第二分类结果中各所述预测概率与所述预设概率之间的差值的集合,作为第四分类结果;基于所述第一分类结果、所述第二分类结果、所述第三分类结果和所述第四分类结果,确定用于表征分类模型的一致性损失的第二损失值。
上述第二损失值确定模块,还用于获取所述第一分类结果中的各所述预测概率与所述第三分类结果中相应的差值所组成的第一数据对;获取所述第二分类结果中的各所述预测概率与所述第四分类结果中相应的差值所组成的第二数据对;基于获取的所述第一数据对及所述第二数据对,确定表征所述分类模型的一致性损失的第二损失值。
上述参数更新模块,还用于通过训练后的所述分类模型的所述第一特征提取层和所述第二特征提取层至少之一,对多个训练样本进行特征提取,得到各训练样本的目标样本特征;通过所述训练后的分类模型的分类层,对所述各训练样本的目标样本特征进行分类,得到多个目标分类结果;通过训练后的所述分类模型的所述第一特征提取层和所述第二特征提取层至少之一,对测试样本进行特征提取,得到测试样本特征;通过训练后的所述分类模型的分类层,对所述测试样本特征进行分类,得到测试分类结果;基于所述测试分类结果和所述多个目标分类结果,确定所述测试样本在各标签类别中的预测概率。
上述参数更新模块,还用于针对每个目标样本特征,确定所述目标样本特征与所述测试样本特征之间的相似度,作为第三相似度;基于多个所述第三相似度,确定所述多个目标分类结果包括的k个目标样本特征对应的目标分类结果,并基于多个所述第三相似度,确定所述k个目标分类结果表征的预测概率所对应的权重;对所述k个目标分类结果表征的各所述预测概率进行加权求和,得到第一加和结果;基于所述第一加和结果表征的预测概率和所述测试分类结果,确定所述测试样本在各标签类别中的预测概率。
上述参数更新模块,还用于分别通过所述训练后的所述分类模型的所述第一特征提取层及所述第二特征提取层,对所述多个训练样本进行特征提取,得到各训练样本的目标样本特征,所述目标样本特征包括第一目标样本特征和多个第二目标样本特征,所述第一目标样本特征不同于所述第二目标样本特征;针对每个第一目标样本特征和每个第二目标样本特征,确定所述测试样本特征与所述第一目标样本特征之间的第四相似度,确定所述测试样本特征与所述第二目标样本特征之间的第五相似度;确定所述k个目标分类结果对应的所述第五相似度之和,作为第二加和结果;针对所述k个目标分类结果中的每一个目标分类结果,将所述目标分类结果对应的第四相似度与所述第二加和结果的比值,作为所述目标分类结果的权重。
上述参数更新模块,还用于获取待分类对象;调用所述训练后的分类模型,对所述待分类对象进行至少一个标签类别的分类预测,得到所述待分类对象的预测概率。
本申请实施例提供一种分类装置,所述装置包括:
对象获取模块,用于获取待分类对象;
对象分类模块,用于调用分类模型,对所述待分类对象进行标签类别的分类预测,得到所述待分类对象在各标签类别中的预测概率,其中,所述分类模型是通过上述分类模型的训练方法训练得到的。
上述对象分类模块,还用于通过所述分类模型的第一特征提取层和第二特征提取层至少之一,对多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征;通过所述分类模型的分类层,基于所述多个历史分类对象的目标特征,对所述多个历史分类对象进行分类,得到多个目标分类结果,所述目标分类结果指示所述目标分类结果对应的历史分类对象在各标签类别中的预测概率;基于所述待分类对象在各标签类别中的预测概率和所述多个目标分类结果,确定所述待分类对象在各标签类别中的综合预测概率。
上述对象分类模块,还用于针对每个所述历史分类对象的目标特征,确定所述目标特征与所述待分类对象的待分类对象特征之间的相似度,作为目标相似度;基于多个所述目标相似度,确定所述多个目标分类结果包括的k个目标特征对应的目标分类结果,并基于多个所述目标相似度,确定所述k个目标分类结果表征的预测概率所对应的权重;对所述k个目标分类结果表征的各所述预测概率进行加权求和,得到第一加和结果;基于所述待分类对象在各标签类别中的预测概率和所述第一加和结果表征的所述待分类对象在各标签类别中的预测概率,确定所述待分类对象在各标签类别中的综合预测概率。
上述对象分类模块,还用于分别通过所述分类模型的所述第一特征提取层及所述第二特征提取层,对所述多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征,每个所述目标特征包括第一目标特征和第二目标特征,所述第一目标特征不同于所述第二目标特征;针对每个第一目标特征和每个第二目标特征,确定所述待分类对象特征与所述第一目标特征之间的所述第三相似度,以及确定所述待分类对象特征与所述第二目标特征之间的所述第四相似度;确定所述k个目标分类结果对应的所述第四相似度之和,作为第一目标加和结果;针对所述k个目标分类结果中的每一个目标分类结果,将所述目标分类结果对应的所述第三相似度与所述第一目标加和结果的比值,作为所述目标分类结果的权重。
本申请实施例提供一种电子设备,所述电子设备包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述存储器中存储的计算机可执行指令时,实现本申请实施例提供的分类模型的训练方法,或实现本申请实施例提供的分类方法。
本申请实施例提供一种计算机可读存储介质,存储有计算机程序或计算机可执行指令,用于被处理器执行时实现本申请实施例提供的分类模型的训练方法,或实现本申请实施例提供的分类方法。
本申请实施例提供一种计算机程序产品,包括计算机程序或计算机可执行指令,述计算机程序或计算机可执行指令被处理器执行时,实现本申请实施例提供的分类模型的训练方法,或实现本申请实施例提供的分类方法。
本申请实施例具有以下有益效果:
获取训练样本后,分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,由于可以从同一训练样本中获取两个不同的样本特征,因此提高了训练样本的利用率。之后可以获取表征分类损失的第一损失值和表征一致性损失的第二损失值,基于第一损失值和第二损失值,更新分类模型的参数,得到训练后的分类模型。由于第一样本特征和第二样本特征是从同一训练样本中提取出的,因此分类模型分类第一样本特征和第二样本特征得到的第一分类结果和第二分类结果应当尽可能一致,基于此通过增加一致性损失更新分类模型的参数,提高了训练后的分类模型的分类性能,提升了分类模型输出的分类结果的准确性。
附图说明
图1是本申请实施例提供的分类模型的训练***的架构示意图;
图2A是本申请实施例提供的电子设备的结构示意图;
图2B是本申请实施例提供的电子设备的另一种结构示意图;
图3A是本申请实施例提供的分类模型的训练方法的流程示意图;
图3B是本申请实施例提供的分类模型的训练方法的流程详解图;
图4是本申请实施例提供的分类模型的结构示意图;
图5是本申请实施例提供的分类方法的流程示意图;
图6是本申请实施例提供的一种多标签样本的示意图;
图7是本申请实施例提供的分类模型的分类原理图;
图8是本申请实施例提供的结合KNN算法的分类流程示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
本申请实施例中相关数据收集处理在实例应用时应该严格根据相关国家法律法规的要求,获取个人信息主体的知情同意或单独同意,并在法律法规及个人信息主体的授权范围内,开展后续数据使用及处理行为。
除非另有定义,本申请实施例所使用的所有的技术和科学术语与所属技术领域的技术人员通常理解的含义相同。本申请实施例中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)BERT:基于Transformer的双向编码模型(Bidirectional EncoderRepresentation from Transformers,BERT),BERT的模型结构采用的是transformer的编码器,BERT是一个预训练模型,模型训练时的两个任务是预测句子中被掩盖的词以及判断输入的两个句子是不是上下句。在预训练好的BERT模型后面根据特定任务加上相应的网络,可以完成NLP的下游任务,比如文本分类、机器翻译等。
2)dropout机制:Dropout叫做随机失活,简单来说就是在模型训练阶段的前向传播过程中,让某些神经元的激活值以一定的概率停止工作,进而提升模型的泛化性。
3)ViT类模型:ViT (Vision Transformer)是一类基于Transformer架构的视觉模型。ViT模型框架包含三个关键模块:输入嵌入层、Transformer编码器和分类头。输入嵌入层将输入图像划分为一系列的图像块,并将每个图像块映射到一个特定的嵌入向量。Transformer编码器通过多层的自注意力机制和前馈神经网络对嵌入向量进行编码,从而捕捉图像的全局关系。最后,分类头将Transformer编码器的输出映射到不同的类别得分上。通过对大规模数据集进行预训练,ViT模型可以应用于图像分类、目标检测和图像生成等任务。
4)标签类别:标签类别为预先设置的可以被预测的类别,例如,标签类别可以包括:汉语、英语、购物、食物等。
5)KL散度:KL散度(Kullback–Leibler divergence)是衡量两个概率分布之间差异的一种量。它用于衡量一个概率分布P相对于另一个概率分布Q的不确定性。KL散度的值越小,表示两个分布越相似。
6)对比学习:对比学习是一种自监督学习方法,可以通过让模型学习哪些数据点相似或不同来学习数据集的一般特征。对比学习的本质是观察数据点之间的相似性和差异性,以便在执行分类、分割等任务之前获得数据的更高阶特征。在对比学习中,通常会使用一个正样本和若干个负样本来进行训练。正样本是与目标样本相似的样本,而负样本则是与目标样本不相似的样本。通过让模型学习区分正样本和负样本,模型可以学习到数据的特征。
7)sigmoid函数:Sigmoid函数是一个在生物学中常见的S型函数,也称为S型生长曲线。在深度学习中,Sigmoid函数常被用作神经网络的激活函数,将变量映射到[0,1]之间。
8)KNN:最邻近分类算法(K-Nearest Neighbor,KNN)是数据挖掘分类(classification)技术中的一种算法,KNN为了判断未知样本的类别,以所有已知类别的样本作为参照,计算未知样本与所有已知样本的距离,从中选取与未知样本距离最近的K个已知样本,根据少数服从多数的投票法则,将未知样本与K个最邻近样本中所属类别占比较多的归为一类。
本申请实施例提供一种分类模型的训练方法、分类模型的训练装置、电子设备、计算机可读存储介质和计算机程序产品,能够提高分类模型输出的分类结果的准确率。
参见图1,图1是本申请实施例提供的分类模型的训练***100的架构示意图,为实现支撑一个对象分类应用,终端(示例性示出了终端400-1和终端400-2)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。
服务器200用于,获取训练样本,将训练样本分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,其中,第一样本特征不同于第二样本特征。在得到第一样本特征和第二样本特征后,服务器200可以通过分类模型的分类层,分别对第一样本特征及第二样本特征进行分类,得到第一分类结果及第二分类结果。之后服务器200可以基于第一分类结果及训练样本的样本标签,确定用于表征分类模型的分类损失的第一损失值,服务器200可以基于第一分类结果和第二分类结果,确定用于表征分类模型的一致性损失的第二损失值,基于第一损失值和第二损失值,更新分类模型的参数,得到训练后的分类模型。服务器200在得到训练后的分类模型后,可以将分类模型部署于服务器200中,也可以将分类模型部署于终端中。
终端用于,通过设置于终端的在图形界面(示例性示出了图形界面410-1和图形界面410-2)向用户展示上传待分类对象的输入区域,以从该输入区域获取用户上传的待分类对象,将待分类对象输入部署于终端的训练后的分类模型,以获取分类模型对待分类对象进行至少一个标签类别的分类预测,得到待分类对象的预测概率。当分类模型部署于服务器200时,终端可以将待分类对象通过网络300,上传至服务器200,以使部署于服务器200的分类模型对待分类对象进行至少一个标签类别的分类预测,得到待分类对象的预测概率,终端获取服务器200通过网络300传输的待分类对象的预测概率。
需要说明的是,本申请实施例可以应用于购物消费、娱乐餐饮、热点话题、人脸识别和地图构建等场景中。
云技术是基于云计算商业模式应用的网络技术、信息技术、整合技术、管理平台技术、以及应用技术等的总称,可以组成资源池,按需所用,灵活便利。云计算技术将变成重要支撑。技术网络***的后台服务需要大量的计算、存储资源。
人工智能(Artificial Intelligence,AI)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用***。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、预训练模型技术、操作/交互***、机电一体化等。其中,预训练模型又称大模型、基础模型,经过微调后可以广泛应用于人工智能各大方向下游任务。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式***,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(Content DeliveryNetwork,CDN)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表、车载终端等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
下面说明本申请实施例提供的用于实施分类模型的训练方法的电子设备的示例性应用,本申请实施例中的电子设备可以为服务器或终端。下面,将说明用于实施分类模型的训练方法的电子设备实施为服务器时示例性应用。
参见图2A,图2A是本申请实施例提供的电子设备的结构示意图,图2A所示的电子设备500A可以是图1中的终端或者服务器200,电子设备500A包括:至少一个处理器410A、存储器450A、至少一个网络接口420A和用户接口430A。终端中的各个组件通过总线***440A耦合在一起。可理解,总线***440A用于实现这些组件之间的连接通信。总线***440A除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2A中将各种总线都标为总线***440A。
处理器410A可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(Digital Signal Processor,DSP),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430A包括使得能够呈现媒体内容的一个或多个输出装置431A,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430A还包括一个或多个输入装置432A,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450A可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450A可选地包括在物理位置上远离处理器410A的一个或多个存储设备。
存储器450A包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(Read Only Memory,ROM),易失性存储器可以是随机存取存储器(Random Access Memory,RAM)。本申请实施例描述的存储器450A旨在包括任意适合类型的存储器。
在一些实施例中,存储器450A能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作***451A,包括用于处理各种基本***服务和执行硬件相关任务的***程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452A,用于经由一个或多个(有线或无线)网络接口420A到达其他电子设备,示例性的网络接口420A包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(Universal Serial Bus,USB)等;
呈现模块453A,用于经由一个或多个与用户接口430A相关联的输出装置431A(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作***设备和显示内容和信息的用户接口);
输入处理模块454A,用于对一个或多个来自一个或多个输入装置432A之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的装置可以采用软件方式实现,图2A示出了存储在存储器450A中的分类模型的训练装置455A,其可以是程序和插件等形式的软件,包括以下软件模块:特征提取模块4551、特征分类模块4552、第一损失值确定模块4553、第二损失值确定模块4554和参数更新模块4555,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明各个模块的功能。
参见图2B,图2B是本申请实施例提供的电子设备的另一种结构示意图,图2B中的电子设备500B还包括分类装置455B,其可以是程序和插件等形式的软件,包括以下软件模块:对象获取模块4556和对象分类模块4557。图2B中包含的处理器410B、网络接口420B、用户接口430B、输出装置431B、输入装置432B、总线***440B、存储器450B、操作***451B、网络通信模块452B、呈现模块453B和输入处理模块454B均与图2A中包含的对应模块具有相同的结构和相同的功能。将在下文中说明各个模块的功能。
在另一些实施例中,本申请实施例提供的装置可以采用硬件方式实现,作为示例,本申请实施例提供的装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的分类模型的训练方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(Application Specific Integrated Circuit,ASIC)、数字信号处理器(Digital Signal Processor,DSP)、可编程逻辑器件(Programmable LogicDevice,PLD)、复杂可编程逻辑器件(Complex Programmable Logic Device,CPLD)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或其他电子元件。
在一些实施例中,终端或服务器可以通过运行计算机程序或计算机可执行指令来实现本申请实施例提供的分类模型的训练方法。举例来说,计算机程序可以是操作***中的原生程序(例如,专用的分类模型的训练程序)或软件模块,例如,可以嵌入到任意程序(如即时通信客户端、相册程序、电子地图客户端、导航客户端)中的分类模型的训练模块;例如可以是本地(Native)应用程序(APP,Application),即需要在操作***中安装才能运行的程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
将结合本申请实施例提供的电子设备的示例性应用和实施,说明本申请实施例提供的分类模型的分类方法。
参见图3A,图3A是本申请实施例提供的分类模型的训练方法的流程示意图,将结合图3A示出的步骤进行说明,本申请实施例提供的分类模型的训练方法可以由服务器或终端单独实施,或者由服务器及终端协同实施,下面将以服务器单独实施为例进行说明。
在步骤101中,分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,其中,第一样本特征不同于第二样本特征。
在一些实施例中,分类模型可以用于对文本进行至少一种类别的分类(如多标签分类),或对图像进行至少一种类别的分类(如多标签分类);相应的,在训练分类模型之前,服务器可以先获取训练样本,训练样本可以包括:文本样本、图像样本等。
当分类模型为用于对文本进行分类的分类模型时,训练样本可以为从服务器的数据库中获取到的文本样本,也可以为从其他分布式***中获取到的文本样本,也可以为由用户所使用的终端上传的文本样本,具体的获取文本样本的方式可以根据实际情况进行选择,在此不做具体限定。
当分类模型为用于对图像进行分类的分类模型时,训练样本可以为从服务器的数据库中获取到的图像样本,也可以为从其他分布式***中获取到的图像样本,也可以为由用户上传的通过图像采集设备采集到的图像样本。具体的获取图像样本的方式可以根据实际情况进行选择,在此不做具体限定。
下面介绍本申请实施例提供你的分类模型的结构。
参见图4,图4是本申请实施例提供的分类模型的结构示意图。
如图4所示,分类模型包括两个特征提取层,分别为第一特征提取层和第二特征提取层,用于对输入的训练样本进行特征提取,得到训练样本对应的样本特征。如图4所示,可以将训练样本分别输入第一特征提取层和第二特征提取层,分别得到第一样本特征和第二样本特征。
分类模型包括一个分类层,用于基于样本特征对训练样本进行分类,得到对应的分类结果。如图4所示,可以将第一样本特征和第二样本特征分别输入分类层中,得到基于第一样本特征确定的训练样本的第一分类结果,和基于第二样本特征确定的训练样本的第二分类结果。
在一些实施例中,在获取到训练样本后,可以分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,其中,第一样本特征不同于第二样本特征。即,将训练样本输入分类模型中的第一特征提取层和第二特征提取层,由第一特征提取层对训练样本进行特征提取,得到第一特征提取层的输出,作为第一样本特征。由第二特征提取层对训练样本进行特征提取,得到第二特征提取层的输出,作为第二样本特征。
例如,当训练样本为文本样本时,可以通过分类模型的第一特征提取层对文本样本进行特征提取,得到第一文本特征。同理,可以通过分类模型的第二特征提取层,对文本样本进行特征提取,得到第二文本特征。
在一些实施例中,第一特征提取层不同于第二特征提取层,例如第一特征提取层和第二特征提取层中所包括的处于激活态的神经元的数量或位置不同,第一特征提取层和第二特征提取层中至少之一包括失活神经元,其中,失活神经元是特征提取层在进行特征提取时,不进行特征提取的神经元。
在构建分类模型的过程中,第一特征提取层和第二特征提取层可以通过如下方式得到:
获取两个相同的初始特征提取层,两个初始特征提取层中包括数量相同且位置相同的处于激活态的神经元。
在一些实施例中,可以对两个初始特征提取层中至少之一的神经元进行去激活,得到包括失活神经元的第一特征提取层和第二特征提取层。在本申请实施例中,可以通过对两个初始特征提取层至少之一的神经元进行去激活,以实现第一特征提取层和第二特征提取层至少之一包括失活神经元,进而保证得到的第一样本特征不用于第二样本特征。在本申请实施例中去激活的方式可以为随机去激活,也可以为按照预设的去激活神经元占比,去激活两个初始特征提取层至少之一的神经元,例如,针对任一初始特征提取层,可以在每次输入训练样本时,去激活该初始特征提取层中一半的神经元。
在一些实施例中,第一特征提取层和第二特征提取层可以为不同的两个特征提取层,也可以为同一个特征提取层,例如,将训练样本重复两次输入第一特征提取层,在训练样本每次输入第一特征提取层时,可以设置第一特征提取层的去激活的神经元不同,以使得第一特征提取层输出的两次训练样本的样本特征不同,分别作为第一样本特征和第二样本特征。
下面介绍一种本申请实施例提供的在实际应用过程中通过第一特征提取层和第二特征提取层,获取训练样本的第一样本特征和第二样本特征的实施方式:
当训练样本为文本样本时,获取第一样本特征和第二样本特征的方式可以为,将两个相同的BERT模型作为初始特征提取层,利用BERT模型中的dropout机制,实现对两个初始特征提取层的去激活,得到第一特征提取层和第二特征提取层,将文本样本分别输入第一特征提取层和第二特征提取层,得到第一文本特征和第二文本特征。
当训练样本为图像样本时,获取第一样本特征和第二样本特征的方式可以为,将两个相同的ViT类模型作为初始特征提取层,利用ViT类模型中的dropout机制,实现对两个初始特征提取层的去激活,得到第一特征提取层和第二特征提取层,将图像样本分别输入第一特征提取层和第二特征提取层,得到第一图像特征和第二图像特征。
由此可知,本申请实施例可以通过设置两个特征提取层(第一特征提取层和第二特征提取层),重复提取同一训练样本的样本特征,得到针对同一样本的两个样本特征(第一样本特征和第二样本特征),充分挖掘了训练样本的训练价值,实现了提高训练样本的利用率的技术效果。
在步骤102中,通过分类模型的分类层,分别基于第一样本特征及第二样本特征对训练样本进行分类,得到第一分类结果及第二分类结果。
在一些实施例中,可以将第一样本特征和第二样本特征分别输入分类模型的分类层中,得到第一样本特征对应的第一分类结果和第二样本特征对应的第二分类结果,下面结合图4进行说明:
如图4所示,可以将第一样本特征输入分类模型的分类层中,得到第一样本特征对应的第一分类结果,同时可以将第二样本特征输入分类模型的分类层中,得到第二样本特征对应的第二分类结果。
在一些实施例中,第一分类结果可以包括分类模型根据第一样本特征,确定的训练样本在各标签类别中的预测概率,标签类别可以为预先设置的训练样本可以被预测的类别,该类别的数量可以为一个或多个(即至少两个);例如,训练样本为文本样本,该训练样本的文本样本的内容为“我今天要买一个书包”,该训练样本的第一分类结果可以为,汉语(0.85),购物(0.91),饮食(0.03),学习(0.6),其中,汉语、购物、饮食和学习为各标签类别,而各标签类别对应的“0.85”、“0.91”、“0.03”和“0.6”为分类模型预测的训练样本属于该标签类别的概率。
同理,第二分类结果可以包括分类模型根据第二样本特征,确定的训练样本在各标签类别中的预测概率。
在一些实施例中,分类层对第一样本特征及第二样本特征的分类可以通过对第一样本特征及第二样本特征的映射实现,如可以采用如下公式,获取训练样本的预测概率。
(1);
在公式(1)中,为样本集合中第个样本的预测概率,为sigmoid函数,
用于计算训练样本的预测概率,和为可调控参数,为样本集合中的第个样本,其中,
样本集合的中包括的样本数量可以为2N个,N可以为大于等于1的整数,可以为大于0且小
于2N的整数,和的值可以为根据经验设置的参数值。
在步骤103中,基于第一分类结果及训练样本的样本标签,确定用于表征分类模型的分类损失的第一损失值。
在一些实施例中,可以基于第一分类结果及训练样本的样本标签,以最小化分类结果和训练样本的样本标签之间的差异为目标构建损失函数,基于该损失函数和第一分类结果和训练样本的样本标签,得到第一损失值。
在一些实施例中,当训练样本包括单标签样本时,第一分类结果为单标签样本对应的标签的预测概率,例如,第一分类结果可以为:汉语(0.98)。单标签样本对应的样本标签为标记该单标签样本所属类别的标签,例如,样本标签可以为:汉语(1)。
当训练样本包括单标签样本时,可以以最小化第一分类结果和样本标签之间的差异为目标构建交叉熵损失函数的方式,反向梯度更新分类模型的参数,得到训练后的分类模型。
在一些实施例中,训练样本可以包括多标签样本,多标签样本携带多个样本标签,每个样本标签对应一个标签类别。
下面介绍一种本申请实施例中当训练样本包括多标签样本的具体实施方式。
图3B示出的步骤103中的“基于第一分类结果及训练样本的样本标签,确定用于表征分类模型的分类损失的第一损失值”可以通过以下步骤1031至步骤1033实现,下面具体说明。
在步骤1031中,以最小化分类模型的分类结果中各标签类别的预测概率与相应样本标签之间的差异的和为目标,构建用于表征分类模型的分类损失的第一损失函数。
在一些实施例中,分类模型的分类结果中各标签类别的预测概率可以表征分类模型预测的训练样本属于各标签类别的概率,样本标签为预先标注的训练样本属于各标签类别的概率;例如,分类结果可以为:汉语(0.7)、购物(0.65)、食物(0.73)、游戏(0.02),其中,“汉语”、“购物”、“食物”和“游戏”为标签类别,“0.7”、“0.65”、“0.73”和“0.02”为各标签类别对应的预测概率。样本标签为预先标注的训练样本属于各标签的类别的概率,例如,某一训练样本的样本标签可以为:汉语(1)、购物(1)、食物(1)、游戏(0),其中,“汉语”、“购物”、“食物”和“游戏”为标签类别,“1”、“1”、“1”和“0”为各标签类别对应的标注概率。
在一些实施例中,可以使用二元交叉熵损失函数(binary cross-entropy,BCE)构建的第一损失函数,具体可以参照如下公式:
(2);
在公式(2)中,为第一损失值,为标签类别的数量,为标签类别中的第个类
别,为第个类别中的第个样本特征的标签值,为第个类别中的第个样本特征的预
测值,其中,为大于0的正整数,为大于0且小于等于的整数,样本集合的中包括的样本
数量可以为2N个,N可以为大于等于1的整数,可以为大于0且小于等于2N的整数。
在步骤1032中,确定第一分类结果中各标签类别的预测概率与相应样本标签之间的差异,作为第一差异。
在一些实施例中,第一差异可以为各标签类别的预测概率与相应样本标签之间的差异的集合,例如,各标签类别的预测概率可以为汉语(0.7)、购物(0.65)、食物(0.73)、游戏(0.02),相应样本标签可以为汉语(1)、购物(1)、食物(1)、游戏(0),针对标签类别为“汉语”,该标签类别的预测概率与样本标签之间的差异为(0.3),同理,标签类别为“购物”、“食物”和“游戏”对应的预测概率与样本标签之间的差异分别为“0.35”、“0.27”和“0.02”,第一差异可以为:汉语(0.3)、购物(0.35)、食物(0.27)、游戏(0.02)。
在步骤1033中,基于第一差异和第一损失函数,确定用于表征分类模型的分类损失的第一损失值。
将第一差异作为第一损失函数的参数,即,将公式(1)中的作为第一差异中的样
本标签,将公式(1)中的作为第一差异中的预测概率,进而得到第一损失值。
在步骤104中,基于第一分类结果和第二分类结果,确定用于表征分类模型的一致性损失的第二损失值。
在一些实施例中,由于第一样本特征和第二样本特征为从同一训练样本中提取出的,因此经分类模型的分类层分类得到的第一分类结果和第二分类结果应当相似,基于此,在本申请实施例中,设置用于表征分类模型的一致性损失的第二损失值。
在一些实施例中,第一分类结果和第二分类结果分别包括训练样本在至少一个标签类别的预测概率。即,第一分类结果和第二分类结果包括训练样本的预测概率。例如,第一分类结果为:汉语(0.89),第二分类结果为:汉语(0.88),当分类模型用于进行多标签分类时,第一分类结果和第二分类结果分别包括训练样本在多个标签类别的预测概率,例如,第一分类结果可以为汉语(0.7)、购物(0.65)、食物(0.73)、游戏(0.02)。
在一些实施例中,可以确定第一分类结果中各预测概率与预设概率之间的差值的集合,作为第三分类结果,同时确定第二分类结果中各预测概率与预设概率之间的差值的集合,作为第四分类结果。需要说明的是,预设概率为训练样本属于某一标签类别的概率加不属于某一标签类别的概率,一般设置为1,由此可知,将第一分类结果中各预测概率与预设概率之间的差值的集合,作为第三分类结果,即第三分类结果为第一分类结果对应的训练样本不属于各标签类别的概率。同理,第四分类结果为第二分类结果对应的训练样本不属于各标签类别的概率。例如,预测概率为0.6,预设概率为1,则对应的第三分类结果为0.4,又例如,第一分类结果为汉语(0.7)、购物(0.65)、食物(0.73)、游戏(0.02),预设概率为1,则对应的第三分类结果可以为汉语(0.3)、购物(0.35)、食物(0.27)、游戏(0.98)。
在一些实施例中,可以获取第一分类结果中的各预测概率与第三分类结果中相应的差值所组成的第一数据对,同时,获取第二分类结果中的各预测概率与第四分类结果中相应的差值所组成的第二数据对。例如,第一分类结果中的预测概率为0.6,第三分类结果中相应的差值为0.4,则对应的第一数据对为(0.6,0.4),同时,第二分类结果中的预测概率为0.7,第四分类结果中相应的差值为0.3,则对应的第二数据对为(0.7,0.3)。需要说明的是,数据对的前者可以为第一分类结果中的预测概率,也可以为第三分类结果中相应的差值,只需要确定第一数据对和第二数据对对应位置的数据为同性质的数据即可(即,第一位同时为预测概率或同时为相应的差值)。
在一些实施例可以基于获取的第一数据对及第二数据对,确定表征分类模型的一致性损失的第二损失值。具体的,可以采用KL散度计算第二损失值,可以采用如下公式:
(3);
在公式(3)中,为第二损失值,为标签类别的数量,为标签类别中的第个类
别,为KL散度计算公式,为第个类别中的第个样本特征的预测值(第一分类结果
对应的预测结果),为第个类别中的第个样本特征的预测值(第二分类结果对应的预测
结果),其中,样本集合的中包括的样本数量可以为2N个,N可以为大于等于1的整数,可以
为大于0且小于等于2N的整数。
在一些实施例中,可以通过在分类模型中加入对比学习的损失函数,进一步提升分类模型的性能。下面介绍对比学习在本申请实施中的应用方式。
在一些实施例中,训练样本包括:正样本和负样本。需要说明的是,当训练样本包括正样本和负样本时,上述通过分类模型的第一特征提取层及第二特征提取层对训练样本进行特征提取时的训练样本为正样本,即,分别通过分类模型的第一特征提取层及第二特征提取层,对正样本进行特征提取,得到第一样本特征和第二样本特征,通过第一特征提取层和第二特征提取层中至少之一,对负样本进行特征提取,得到第三样本特征。需要说明的是,通过第一特征提取层和第二特征提取层获取第一样本特征、第二样本特征和第三样本特征的方式可以与上述,分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征的方式相同。
在一些实施例中,可以基于第一样本特征、第二样本特征及第三样本特征,确定用于表征对比学习损失的第三损失值。具体的,可以确定第一样本特征和第二样本特征之间的第一相似度,及第一样本特征和第三样本特征之间的第二相似度,基于第一相似度和第二相似度,确定由第一相似度与第二相似度构成的对数函数,通过由第一相似度与第二相似度构成的对数函数确定用于表征对比学习损失的第三损失值。需要说明的是,第一相似度为正样本对应的两个样本特征之间的相似度,因此第一相似度的值应当尽可能大,第二相似度为正样本与负样本对应的样本特征之间的相似度,因此第二相似度的值应该尽可能小。
在一些实施例中,可以基于对比学习损失函数,确定第三损失值,具体可以参照如下公式:
(4);
在公式(4)中,为第三损失值,为相似度确定函数(例如,余弦距离确定函
数和欧式距离确定函数等相似度确定函数),为样本集合中第个样本特征(第一样本特
征),正样本集合中第个样本特征(第二样本特征),为温度参数,为样本集合,表
示当时为1,当时为0,为样本集合中第个样本特征,其中,样本集合的中包括
的样本数量可以为2N个,N可以为大于等于1的整数,可以为大于0且小于等于2N的整数,
可以为大于0且小于等于2N的整数,可以为大于等于1且小于等于2N的整数。
在步骤105中,基于第一损失值和第二损失值,更新分类模型的参数,得到训练后的分类模型。
在一些实施例中,可以基于第一损失值和第二损失值,反向梯度更新分类模型的参数,得到训练后的分类模型。具体的可参照如下公式:
(5);
在公式(5)中为分类模型的总损失值,为第一损失值,为第二损失值。
当在本申请实施例中加入对比学习后,可以基于第一损失值、第二损失值和第三损失值,反向梯度更新分类模型的参数,得到训练后的分类模型。
具体可参照如下公式,反向梯度更新分类模型的参数:
(6);
在公式(6)中为分类模型的总损失值,为第一损失值,为第二损失值,为
第三损失值。
在一些实施例中,在得到训练后的分类模型后,可以通过训练后的分类模型的第一特征提取层和第二特征提取层至少之一,对多个训练样本进行特征提取,得到各训练样本的目标样本特征,需要说明的是,目标样本特征为通过训练后的分类模型获取到的,上述第一样本特征、第二样本特征和第三样本特征为通过训练前的分类模型获取到的。
在一些实施例中,可以通过训练后的分类模型的分类层,对各训练样本的目标样本特征进行分类,得到多个目标分类结果。同理,目标分类结果可以为通过训练后的分类模型获取到的,上述第一分类结果、第二分类结果和第三分类结果为通过训练前的分类模型获取到的。
在一些实施例中,可以通过训练后的分类模型的第一特征提取层和第二特征提取层至少之一,对测试样本进行特征提取,得到测试样本特征,其中,测试样本可以为文本样本也可以为图像样本,当测试样本为文本样本时,可以从服务器的数据库中获取到的文本样本,也可以为从其他分布式***中获取到的文本样本,也可以为由用户所使用的终端上传的文本样本,具体的获取文本样本的方式可以根据实际情况进行选择,在此不做具体限定。
当测试样本为图像样本时,可以为从服务器的数据库中获取到的图像样本,也可以为从其他分布式***中获取到的图像样本,也可以为由用户上传的通过图像采集设备采集到的图像样本。具体的获取图像样本的方式可以根据实际情况进行选择,在此不做具体限定。
在一些实施例中,通过训练后的分类模型的分类层,对测试样本特征进行分类,得到测试分类结果,即,将测试样本输入训练后的分类模型中,得到测试样本的分类结果(测试分类结果)。
针对每个目标样本特征,可以确定目标样本特征与测试样本特征之间的相似度,作为第三相似度,本申请实施例中,确定第三相似度的方式可以为采用余弦距离确定方式或欧式距离确定方式等相似度确定方式,具体的相似度确定方式可以根据实际情况进行设置,在此不做具体限定。
在一些实施例中,可以基于多个第三相似度,确定多个目标分类结果包括的k个目标样本特征对应的目标分类结果,并基于多个第三相似度,确定k个目标分类结果表征的预测概率所对应的权重,具体的,第三相似度数值越大的则该第三相似度对应的目标分类结果的权重的数值越大。
在一些实施例中,对k个目标分类结果表征的各预测概率进行加权求和,得到第一加和结果。例如,当k等2时,各预测概率分别为:0.5和0.6,对应的权重分别为0.6和0.4,则第一加和结果为0.54。
在一些实施例中,可以基于第一加和结果表征的预测概率和测试分类结果,确定测试样本在各标签类别中的预测概率,具体的,可以根据预设的预测概率和测试分类结果对应的权重,对预测概率和测试分类结果进行加权求和,得到测试样本在各标签类别中的预测概率。
在一些实施例中,可以分别通过训练后的分类模型的第一特征提取层及第二特征提取层,对多个训练样本进行特征提取,得到各训练样本的目标样本特征,目标样本特征包括第一目标样本特征和多个第二目标样本特征,第一目标样本特征不同于第二目标样本特征,需要说明的是,通过第一特征提取层和第二特征提取层获取第一目标样本特征和第二目标样本特征的方式可以与上述,分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征的方式相同。
在一些实施例中,可以针对每个第一目标样本特征和每个第二目标样本特征,确定测试样本特征与第一目标样本特征之间的第四相似度,确定测试样本特征与第二目标样本特征之间的第五相似度,之后可以确定k个目标分类结果对应的第五相似度之和,作为第二加和结果,例如,k为3,目标分类结果对应的第五相似度分别为:0.5、0.6和0.7,则第二加和结果为1.8。
需要说明的是,第二加和为k个目标分类结果对应的相似度之和,上述第一加和为加权求和的结果,第一加和与第二加和没有直接联系。
在一些实施例中,可以针对k个目标分类结果中的每一个目标分类结果,将目标分类结果对应的第四相似度与第二加和结果的比值,作为目标分类结果的权重。即,将该目标分类结果与测试样本之间的相似度在k个目标分类结果中的总相似度的占比,作为该目标分类结果的权重。
在一些实施例中,可以参照如下公式确定目标分类结果的权重:
(7);
在公式(7)中,为k个目标分类结果中第个目标分类结果的权重,为相似度
确定公式,为测试样本特征,为第个样本特征(第一目标样本特征),为第个样本特
征(第二目标样本特征),其中,样本集合的中包括的样本数量可以为2N个,N可以为大于等
于1的整数,可以为大于0且小于等于2N的整数,可以为大于0且小于等于2N的整数。
在一些实施例中,在确定出各目标分类结果的权重后,可以使用KNN算法,确定KNN的预测概率,具体可以参照如下公式:
(8);
在公式(8)中,为KNN的预测概率,为目标分类结果的数量,为为k个目标
分类结果中第个目标分类结果的权重,为k个目标分类结果中第个目标分类结果对应的
预测概率,其中,可以为大于1的整数,样本集合的中包括的样本数量可以为2N个,N可以
为大于等于1的整数,可以为大于0且小于等于2N的整数。
在一些实施例中,可以结合KNN的预测概率与测试分类结果,得到测试样本的分类结果,具体可以参照如下公式:
(9);
在公式(9)中,为测试样本的分类结果,为超参数,为KNN的预测概率,为训练后的分类模型输出的分类结果(测试分类结果)。
在测试完成本申请实施例提供的分类模型后,可以将该分类模型应用于各业务场景中,下面介绍本申请实施例提供的分类模型在实际应用场景中的应用方法。
参见图5,图5是本申请实施例提供的分类方法的流程示意图。
在步骤201中,获取待分类对象。
在实际应用中,服务器在进行分类之前,需要先获取到待分类对象,待分类对象可以为文本、图像等。获取待分类对象的方式可以为,由用户通过终端设备上传的待分类对象,也可以为通过采集装置采集到的待分类对象。
在步骤202中,调用分类模型,对待分类对象进行标签类别的分类预测,得到待分类对象在各标签类别中的预测概率,其中,分类模型是通过本申请实施例提供的分类模型的训练方法训练得到的。
在获取到待分类对象后,服务器可以调用分类模型,对待分类对象进行标签类别的分类预测,得到待分类对象在各标签类别中的预测概率,即,将待分类对象输入分类模型中,得到分类结果。
下面介绍服务器在得到分类模型输出的待分类对象对应的分类结果后的处理过程。
在一些实施例中,服务器在得到分类模型输出的待分类对象对应的分类结果后,可以通过分类模型的第一特征提取层和第二特征提取层至少之一,对多个历史分类对象进行特征提取,得到待分类对象的目标特征,需要说明的是,分类模型中的第一特征提取层和第二特征提取层为根据上述分类模型的训练方法训练得到的,历史分类对象可以为预先存储于数据库中的已经进行过分类的对象,或已经被标注过的对象。
在得到各历史分类对象的目标特征后,服务器可以通过分类模型的分类层,基于多个历史分类对象的目标特征,对多个历史分类对象进行分类,得到多个目标分类结果,同理,分类模型的分类层也是根据上述分类模型的训练方法训练得到的,需要说明的是,历史分类对象的目标特征可以为每次执行分类方法时,提取相应的历史分类对象的目标特征,也可以为在执行分类方法之前,预先提取多个历史分类对象的目标特征,将提取得到的多个历史分类对象的目标特征存储到服务器的数据库中,以在进行分类时,直接调用数据库中的历史分类对象的目标特征。
服务器可以基于待分类对象在各标签类别中的预测概率和多个目标分类结果,确定待分类对象在各标签类别中的综合预测概率,待分类对象在各标签类别中的综合预测概率为该待分类对象最终的分类结果。
在一些实施例中,针对服务器确定分类对象的综合预测概率的过程,本申请实施例提供一种具体的实施方式如下:
针对每个目标特征,确定目标特征与待分类对象的待分类对象特征之间的相似度,作为目标相似度,其中,待分类对象特征可以为通过分类模型的第一特征提取层和第二特征提取层至少之一,对待分类对象进行特征提取得到的。
基于多个目标相似度,确定多个目标分类结果包括的k个目标特征对应的目标分类结果,并基于多个目标相似度,确定k个目标分类结果表征的预测概率所对应的权重,即,先确定目标特征与待分类对象特征之间的相似度,之后可以选择目标相似度最大的k个目标特征对应的目标分类结果,k的数值可以为根据经验设置的数值。之后可以基于目标相似度,确定k个目标分类结果对应的权重,在本申请实施例中,目标相似度越大,对应的目标分类结果的权重就越大。
之后服务器可以对k个目标分类结果表征的各预测概率进行加权求和,得到第一加和结果,基于第一加和结果表征的预测概率和待分类对象在各标签类别中的预测概率,确定待分类对象在各标签类别中的综合预测概率。
下面介绍确定k个目标分类结果对应的权重的具体方式。
在一些实施例中,目标相似度可以包括第三相似度和第四相似度。服务器可以先分别通过分类模型的第一特征提取层及第二特征提取层,对历史分类对象进行特征提取,得到历史分类对象的目标特征,历史分类对象的目标特征包括第一目标特征和多个第二目标特征,第一目标特征不同于第二目标特征。
服务器可以针对每个第一目标特征和每个第二目标特征,确定待分类对象特征与第一目标特征之间的第三相似度,确定待分类对象特征与第二目标特征之间的第四相似度。即,确定待分类对象特征与通过第一特征提取层提取到的历史分类对象的目标特征之间的相似度,并确定待分类对象特征与通过第二特征提取层提取到的历史分类对象的第二目标特征之间的相似度。
确定k个目标分类结果对应的第四相似度之和,作为第一目标加和结果,针对k个
目标分类结果中的每一个目标分类结果,将目标分类结果对应的第三相似度与第一目标加
和结果的比值,作为目标分类结果的权重。即,参照上述公式(7),与上述公式(7)不同之处
在于,为待分类对象特征,为第个第一目标特征,为第个第二目标特征。
综上,在本申请实施例提供的分类方法中,可以先将待分类对象输入分类模型,得到分类模型输出的预测结果,之后可以确定数据库中与待分类对象特征相似的k个历史分类对象,之后基于对k个历史分类对象进行加权求和后,结合加权求和后对应的预测概率和分类模型输出的预测结果,得到待分类对象在各标签类别中的综合预测概率。
下面介绍本申请实施例提供的一种在预测多标签文本时的分类模型的训练过程。
首先,介绍本申请实施例中的多标签样本。
参见图6,图6是本申请实施例提供的一种多标签样本的示意图。
在图6中,样本内容为“关于事件A的数据请参见网站a”,该样本的标签为“事件A”和“网站a”,不包括“网站b”。由此可知,该样本包括两个标签,为多标签样本。
在一些实施例中,可以在传统分类损失的基础上,为了使分类模型能够更好地检索k近邻(KNN算法),本申请实施例在分类模型中增加对比学习损失和概率一致性损失来增强整个学习过程。
参见图7,图7是本申请实施例提供的分类模型的分类原理图。
在图7中,将同一份文档(多标签训练样本)提取为多个字向量(t1~tm),之后分别输入两个BERT模型(BERT Encoder)中,得到BERT输出的两个样本特征(第一样本特征和第二样本特征)。
对第一样本特征和第二样本特征进行对比学习和概率一致性损失计算,反向梯度更新整个模型的参数,得到训练后的模型。具体的,由于BERT自身内部的dropout机制的存在,因此两个BERT模型输出的两个样本特征(第一样本特征和第二样本特征)为不相同的两个样本特征,首先可以基于对比学习损失进行模型的训练,具体可以参见上述公式(4)提供的对比学习损失函数,确定第三损失值。
在一些实施例中,可以参见上述公式(1),获取该多标签训练样本在各标签类别中的预测概率,之后可以参见上述公式(2)提供的二元交叉熵损失函数,确定第一损失值。
在一些实施例中,由于第一样本特征和第二样本特征为从同一多标签训练样本中提取出的,因此分类模型的分类层分类得到的第一分类结果和第二分类结果应当相似,例如,对某个类的预测概率是0.6(第一分类结果),其相应的正样本的预测概率是0.7(第二分类结果),那么我们可以得到其相应的概率分布为(0.6,0.4)(第一数据对)和(0.7,0.3)(第二数据对)。之后可以通过KL散度计算这两个样本在该标签下概率一致性损失。
具体的可以参见上述公式(3)提供的一致性损失函数,确定第二损失值。
最后,确定分类模型的损失值为第一损失值、第二损失值和第三损失值之和。
在一些实施例中,在得到训练后的分类模型后,可以基于k近邻的推断算法(KNN算法),进一步提高分类结果的准确性。
参见图8,图8是本申请实施例提供的结合KNN算法的分类流程示意图。
在图8中,首先把训练集的所有样本输入训练后的分类模型(Model)中,并将分类模型输出的数据存储到数据库(Datastore)中,数据库中的每个样本是一个样本特征与其相应的标签组成的数据对(zi,yi)其中zi为该样本对应的样本特征,yi为该样本对应的标签。在测试时,可以将每个测试样本输入分类模型,得到每个测试样本的样本特征z和预测概率ymodel(Model Prediction)。之后根据测试样本的样本特征检索数据仓库中与该样本特征距离最近的K个训练样本(例如使用欧式距离和余弦距离等方式检索)(query),然后根据距离的大小,配置K个训练样本中包括的每个训练样本的权重(参见上述公式(7)),得到基于KNN的预测概率yKNN(kNN Prediction)(参见上述公式(8)),结合yKNN和ymodel,作为该测试样本的预测结果(Final Prediction)(参见上述公式(9))。
在一些实施例中,在得到训练后的分类模型后,在AAPD(Arxiv Academic PaperDataset)数据集中做多次测试,测试结果如下表所示:表1
在表1中,只使用BERT模型的测试结果的平均值为73.16,标准差为0.31,在结合BERT模型和KNN算法的测试结果的平均值为73.7,标准差0.41,在结合BERT模型、KNN算法以及使用BERT模型的dropout机制(dropout CL)构造样本后的测试结果的平均值为74.52,标准差为0.4,在结合BERT模型、KNN算法、使用BERT模型的dropout机制以及概率一致性损失(logits consistent)后测试结果的平均值为75.2,标准差0.39。由此可知,本申请实施例可以在已有技术的基础上,提高了分类结果的准确性。
下面继续说明本申请实施例提供的分类模型的训练装置455A的实施为软件模块的示例性结构,在一些实施例中,如图2A所示,存储在存储器450A的分类模型的训练装置455A中的软件模块可以包括:
特征提取模块4551,用于分别通过所述分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征,其中,所述第一样本特征不同于所述第二样本特征;
特征分类模块4552,用于通过所述分类模型的分类层,分别基于所述第一样本特征及所述第二样本特征对所述训练样本进行分类,得到第一分类结果及第二分类结果;
第一损失值确定模块4553,用于基于所述第一分类结果及所述训练样本的样本标签,确定用于表征所述分类模型的分类损失的第一损失值;
第二损失值确定模块4554,用于基于所述第一分类结果和所述第二分类结果,确定用于表征所述分类模型的一致性损失的第二损失值;
参数更新模块4555,用于基于所述第一损失值和所述第二损失值,更新所述分类模型的参数,得到训练后的分类模型。
在一些实施例中,所述第一特征提取层和所述第二特征提取层至少之一包括失活神经元,其中,所述失活神经元是特征提取层在进行特征提取时,不进行特征提取的神经元;
特征提取模块4551,还用于获取两个初始特征提取层,所述两个初始特征提取层中包括数量相同且位置相同的处于激活态的神经元;对至少一个所述初始特征提取层中的神经元进行去激活,得到包括失活神经元的所述第一特征提取层和所述第二特征提取层。
在一些实施例中,所述训练样本包括:正样本和负样本;
特征提取模块4551,还用于分别通过所述分类模型的第一特征提取层及第二特征提取层,对所述正样本进行特征提取,得到第一样本特征和第二样本特征;通过所述第一特征提取层和所述第二特征提取层中至少之一,对所述负样本进行特征提取,得到第三样本特征;基于所述第一样本特征、所述第二样本特征及所述第三样本特征,确定用于表征对比学习损失的第三损失值;基于所述第一损失值、所述第二损失值和所述第三损失值,更新所述分类模型的参数,得到训练后的分类模型。
在一些实施例中,第二损失值确定模块4554,还用于,确定所述第一样本特征和所述第二样本特征之间的第一相似度,及所述第一样本特征和所述第三样本特征之间的第二相似度;基于所述第一相似度和所述第二相似度,确定用于表征对比学习损失的第三损失值。
在一些实施例中,所述训练样本包括多标签样本,所述多标签样本携带多个样本标签,每个样本标签对应一个标签类别;
第一损失值确定模块4553,还用于以最小化所述分类模型的分类结果中各所述标签类别的预测概率与相应样本标签之间的差异的和为目标,构建用于表征所述分类模型的分类损失的第一损失函数;确定所述第一分类结果中各标签类别的预测概率与相应样本标签之间的差异,作为第一差异;基于所述第一差异和所述第一损失函数,确定用于表征所述分类模型的分类损失的第一损失值。
在一些实施例中,所述第一分类结果和所述第二分类结果分别包括所述训练样本在至少一个标签类别的预测概率;
第二损失值确定模块4554,还用于确定所述第一分类结果中各所述预测概率与预设概率之间的差值的集合,作为第三分类结果;确定所述第二分类结果中各所述预测概率与所述预设概率之间的差值的集合,作为第四分类结果;基于所述第一分类结果、所述第二分类结果、所述第三分类结果和所述第四分类结果,确定用于表征分类模型的一致性损失的第二损失值。
在一些实施例中,第二损失值确定模块4554,还用于获取所述第一分类结果中的各所述预测概率与所述第三分类结果中相应的差值所组成的第一数据对;获取所述第二分类结果中的各所述预测概率与所述第四分类结果中相应的差值所组成的第二数据对;基于获取的所述第一数据对及所述第二数据对,确定表征所述分类模型的一致性损失的第二损失值。
在一些实施例中,参数更新模块4555,还用于通过训练后的所述分类模型的所述第一特征提取层和所述第二特征提取层至少之一,对多个训练样本进行特征提取,得到各训练样本的目标样本特征;通过所述训练后的分类模型的分类层,对所述各训练样本的目标样本特征进行分类,得到多个目标分类结果;通过训练后的所述分类模型的所述第一特征提取层和所述第二特征提取层至少之一,对测试样本进行特征提取,得到测试样本特征;通过训练后的所述分类模型的分类层,对所述测试样本特征进行分类,得到测试分类结果;基于所述测试分类结果和所述多个目标分类结果,确定所述测试样本在各标签类别中的预测概率。
在一些实施例中,参数更新模块4555,还用于针对每个目标样本特征,确定所述目标样本特征与所述测试样本特征之间的相似度,作为第三相似度;基于多个所述第三相似度,确定所述多个目标分类结果包括的k个目标样本特征对应的目标分类结果,并基于多个所述第三相似度,确定所述k个目标分类结果表征的预测概率所对应的权重;对所述k个目标分类结果表征的各所述预测概率进行加权求和,得到第一加和结果;基于所述第一加和结果表征的预测概率和所述测试分类结果,确定所述测试样本在各标签类别中的预测概率。
在一些实施例中,参数更新模块4555,还用于分别通过所述训练后的所述分类模型的所述第一特征提取层及所述第二特征提取层,对所述多个训练样本进行特征提取,得到各训练样本的目标样本特征,所述目标样本特征包括第一目标样本特征和多个第二目标样本特征,所述第一目标样本特征不同于所述第二目标样本特征;针对每个第一目标样本特征和每个第二目标样本特征,确定所述测试样本特征与所述第一目标样本特征之间的第四相似度,确定所述测试样本特征与所述第二目标样本特征之间的第五相似度;确定所述k个目标分类结果对应的所述第五相似度之和,作为第二加和结果;针对所述k个目标分类结果中的每一个目标分类结果,将所述目标分类结果对应的第四相似度与所述第二加和结果的比值,作为所述目标分类结果的权重。
在一些实施例中,参数更新模块4555,还用于获取待分类对象;调用所述训练后的分类模型,对所述待分类对象进行至少一个标签类别的分类预测,得到所述待分类对象的预测概率。
下面继续说明本申请实施例提供的分类装置455B的实施为软件模块的示例性结构,在一些实施例中,如图2B所示,存储在存储器450B的分类装置455B中的软件模块可以包括:
对象获取模块4556,用于获取待分类对象;
对象分类模块4557,用于调用分类模型,对所述待分类对象进行至少一个标签类别的分类预测,得到所述待分类对象的预测概率,其中,所述分类模型是通过上述分类模型的训练方法训练得到的。
在一些实施例中,所述对象分类模块4557,还用于通过所述分类模型的第一特征提取层和第二特征提取层至少之一,对多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征;通过所述分类模型的分类层,基于所述多个历史分类对象的目标特征,对所述多个历史分类对象进行分类,得到多个目标分类结果,所述目标分类结果指示所述目标分类结果对应的历史分类对象在各标签类别中的预测概率;基于所述待分类对象在各标签类别中的预测概率和所述多个目标分类结果,确定所述待分类对象在各标签类别中的综合预测概率。
在一些实施例中,所述对象分类模块4557,还用于针对每个所述历史分类对象的目标特征,确定所述目标特征与所述待分类对象的待分类对象特征之间的相似度,作为目标相似度;基于多个所述目标相似度,确定所述多个目标分类结果包括的k个目标特征对应的目标分类结果,并基于多个所述目标相似度,确定所述k个目标分类结果表征的预测概率所对应的权重;对所述k个目标分类结果表征的各所述预测概率进行加权求和,得到第一加和结果;基于所述待分类对象在各标签类别中的预测概率和所述第一加和结果表征的所述待分类对象在各标签类别中的预测概率,确定所述待分类对象在各标签类别中的综合预测概率。
在一些实施例中,所述对象分类模块4557,还用于分别通过所述分类模型的所述第一特征提取层及所述第二特征提取层,对所述多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征,每个所述目标特征包括第一目标特征和第二目标特征,所述第一目标特征不同于所述第二目标特征;针对每个第一目标特征和每个第二目标特征,确定所述待分类对象特征与所述第一目标特征之间的所述第三相似度,以及确定所述待分类对象特征与所述第二目标特征之间的所述第四相似度;确定所述k个目标分类结果对应的所述第四相似度之和,作为第一目标加和结果;针对所述k个目标分类结果中的每一个目标分类结果,将所述目标分类结果对应的所述第三相似度与所述第一目标加和结果的比值,作为所述目标分类结果的权重。
本申请实施例提供了一种计算机程序产品,该计算机程序产品包括计算机程序或计算机可执行指令,该计算机程序或计算机可执行指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机可执行指令,处理器执行该计算机可执行指令,使得该电子设备执行本申请实施例上述的分类模型的训练方法。
本申请实施例提供一种存储有计算机可执行指令的计算机可读存储介质,其中存储有计算机可执行指令或者计算机程序,当计算机可执行指令或者计算机程序被处理器执行时,将引起处理器执行本申请实施例提供的分类模型的训练方法,例如,如图3A示出的分类模型的训练方法。
在一些实施例中,计算机可读存储介质可以是RAM、ROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,计算机可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,计算机可执行指令可以但不一定对应于文件***中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(Hyper TextMarkup Language,HTML)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,计算机可执行指令可被部署为在一个电子设备上执行,或者在位于一个地点的多个电子设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个电子设备上执行。
综上所述,通过本申请实施例能够提高分类模型输出的分类结果的准确率。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (15)
1.一种分类模型的训练方法,其特征在于,所述方法包括:
分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本中的正样本进行特征提取,得到第一样本特征和第二样本特征;
其中,所述第一样本特征不同于所述第二样本特征,所述训练样本为文本样本,所述训练样本包括:所述正样本和负样本;
通过所述分类模型的分类层,分别基于所述第一样本特征及所述第二样本特征对所述训练样本进行分类,得到第一分类结果及第二分类结果;
基于所述第一分类结果及所述训练样本的样本标签,确定用于表征所述分类模型的分类损失的第一损失值;
基于所述第一分类结果和所述第二分类结果,确定用于表征所述分类模型的一致性损失的第二损失值;
通过所述第一特征提取层和所述第二特征提取层中至少之一,对所述负样本进行特征提取,得到第三样本特征;
基于所述第一样本特征、所述第二样本特征及所述第三样本特征,确定用于表征对比学习损失的第三损失值;
基于所述第一损失值、所述第二损失值和所述第三损失值,更新所述分类模型的参数,得到训练后的分类模型;
其中,所述训练后的分类模型用于对待分类的文本进行分类。
2.根据权利要求1所述的方法,其特征在于,所述第一特征提取层和所述第二特征提取层至少之一包括失活神经元,其中,所述失活神经元是特征提取层在进行特征提取时,不进行特征提取的神经元;
在所述分别通过所述分类模型的第一特征提取层及第二特征提取层,对训练样本进行特征提取,得到第一样本特征和第二样本特征之前,所述方法还包括:
获取两个初始特征提取层,所述两个初始特征提取层中包括数量相同且位置相同的处于激活态的神经元;
对至少一个所述初始特征提取层中的神经元进行去激活,得到包括失活神经元的所述第一特征提取层和所述第二特征提取层。
3.根据权利要求1所述的方法,其特征在于,所述基于所述第一样本特征、所述第二样本特征及所述第三样本特征,确定用于表征对比学习损失的第三损失值,包括:
确定所述第一样本特征和所述第二样本特征之间的第一相似度,及所述第一样本特征和所述第三样本特征之间的第二相似度;
基于所述第一相似度和所述第二相似度,确定用于表征对比学习损失的第三损失值。
4.根据权利要求1所述的方法,其特征在于,所述训练样本包括多标签样本,所述多标签样本携带多个样本标签,每个样本标签对应一个标签类别;
所述基于所述第一分类结果及所述训练样本的样本标签,确定用于表征所述分类模型的分类损失的第一损失值,包括:
以最小化所述分类模型的分类结果中各所述标签类别的预测概率与相应样本标签之间的差异的和为目标,构建用于表征所述分类模型的分类损失的第一损失函数;
确定所述第一分类结果中各标签类别的预测概率与相应样本标签之间的差异,作为第一差异;
基于所述第一差异和所述第一损失函数,确定用于表征所述分类模型的分类损失的第一损失值。
5.根据权利要求1所述的方法,其特征在于,所述第一分类结果和所述第二分类结果分别包括所述训练样本在至少一个标签类别的预测概率;
所述基于所述第一分类结果和所述第二分类结果,确定用于表征所述分类模型的一致性损失的第二损失值,包括:
确定所述第一分类结果中各所述预测概率与预设概率之间的差值的集合,作为第三分类结果;
确定所述第二分类结果中各所述预测概率与所述预设概率之间的差值的集合,作为第四分类结果;
基于所述第一分类结果、所述第二分类结果、所述第三分类结果和所述第四分类结果,确定用于表征分类模型的一致性损失的第二损失值。
6.根据权利要求5所述的方法,其特征在于,所述基于所述第一分类结果、所述第二分类结果、所述第三分类结果和所述第四分类结果,确定用于表征分类模型的一致性损失的第二损失值,包括:
获取所述第一分类结果中的各所述预测概率与所述第三分类结果中相应的差值所组成的第一数据对;
获取所述第二分类结果中的各所述预测概率与所述第四分类结果中相应的差值所组成的第二数据对;
基于获取的所述第一数据对及所述第二数据对,确定表征所述分类模型的一致性损失的第二损失值。
7.根据权利要求1所述的方法,其特征在于,所述方法还包括:
通过训练后的所述分类模型的所述第一特征提取层和所述第二特征提取层至少之一,对多个训练样本进行特征提取,得到各训练样本的目标样本特征;
通过所述训练后的分类模型的分类层,对所述各训练样本的目标样本特征进行分类,得到多个目标分类结果;
通过训练后的所述分类模型的所述第一特征提取层和所述第二特征提取层至少之一,对测试样本进行特征提取,得到测试样本特征;
通过训练后的所述分类模型的分类层,对所述测试样本特征进行分类,得到测试分类结果;
基于所述测试分类结果和所述多个目标分类结果,确定所述测试样本在各标签类别中的预测概率。
8.一种分类方法,其特征在于,所述方法包括:
获取待分类对象,其中,所述待分类对象是待分类的文本;
调用分类模型,对所述待分类对象进行标签类别的分类预测,得到所述待分类对象在各标签类别中的预测概率,其中,所述分类模型是通过上述权利要求1-7任一项所述的方法训练得到的。
9.根据权利要求8所述的方法,其特征在于,所述方法还包括:
通过所述分类模型的第一特征提取层和第二特征提取层至少之一,对多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征;
通过所述分类模型的分类层,基于所述多个历史分类对象的目标特征,对所述多个历史分类对象进行分类,得到多个目标分类结果,所述目标分类结果指示所述目标分类结果对应的历史分类对象在各标签类别中的预测概率;
基于所述待分类对象在各标签类别中的预测概率和所述多个目标分类结果,确定所述待分类对象在各标签类别中的综合预测概率。
10.根据权利要求9所述的方法,其特征在于,所述基于所述待分类对象在各标签类别中的预测概率和所述多个目标分类结果,确定所述待分类对象在各标签类别中的综合预测概率,包括:
针对每个所述历史分类对象的目标特征,确定所述目标特征与所述待分类对象的待分类对象特征之间的相似度,作为目标相似度;
基于多个所述目标相似度,确定所述多个目标分类结果包括的k个目标特征对应的目标分类结果,并基于多个所述目标相似度,确定所述k个目标分类结果表征的预测概率所对应的权重;
对所述k个目标分类结果表征的各所述预测概率进行加权求和,得到第一加和结果;
基于所述待分类对象在各标签类别中的预测概率和所述第一加和结果表征的所述待分类对象在各标签类别中的预测概率,确定所述待分类对象在各标签类别中的综合预测概率。
11.根据权利要求10所述的方法,其特征在于,所述通过所述分类模型的第一特征提取层和第二特征提取层至少之一,对多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征,包括:
分别通过所述分类模型的所述第一特征提取层及所述第二特征提取层,对所述多个历史分类对象进行特征提取,得到所述多个历史分类对象的目标特征,每个所述目标特征包括第一目标特征和第二目标特征,所述第一目标特征不同于所述第二目标特征;
所述目标相似度包括第三相似度和第四相似度,所述针对每个所述历史分类对象的目标特征,确定所述目标特征与所述待分类对象的待分类对象特征之间的相似度,作为目标相似度,包括:
针对每个第一目标特征和每个第二目标特征,确定所述待分类对象特征与所述第一目标特征之间的所述第三相似度,以及确定所述待分类对象特征与所述第二目标特征之间的所述第四相似度;
基于多个所述目标相似度,确定所述k个目标分类结果表征的预测概率所对应的权重,包括:
确定所述k个目标分类结果对应的所述第四相似度之和,作为第一目标加和结果;
针对所述k个目标分类结果中的每一个目标分类结果,将所述目标分类结果对应的所述第三相似度与所述第一目标加和结果的比值,作为所述目标分类结果的权重。
12.一种分类模型的训练装置,其特征在于,所述装置包括:
特征提取模块,用于分别通过分类模型的第一特征提取层及第二特征提取层,对训练样本中的正样本进行特征提取,得到第一样本特征和第二样本特征;其中,所述第一样本特征不同于所述第二样本特征,所述训练样本为文本样本,所述训练样本包括:所述正样本和负样本;
特征分类模块,用于通过所述分类模型的分类层,分别基于所述第一样本特征及所述第二样本特征对所述训练样本进行分类,得到第一分类结果及第二分类结果;
第一损失值确定模块,用于基于所述第一分类结果及所述训练样本的样本标签,确定用于表征所述分类模型的分类损失的第一损失值;
第二损失值确定模块,用于基于所述第一分类结果和所述第二分类结果,确定用于表征所述分类模型的一致性损失的第二损失值;通过所述第一特征提取层和所述第二特征提取层中至少之一,对所述负样本进行特征提取,得到第三样本特征;基于所述第一样本特征、所述第二样本特征及所述第三样本特征,确定用于表征对比学习损失的第三损失值;
参数更新模块,用于基于所述第一损失值、所述第二损失值和所述第三损失值,更新所述分类模型的参数,得到训练后的分类模型;其中,所述训练后的分类模型用于对待分类的文本进行分类。
13.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储计算机可执行指令;
处理器,用于执行所述存储器中存储的计算机可执行指令或者计算机程序时,实现权利要求1至7任一项所述的方法,或实现权利要求8至11任一项所述的方法。
14.一种计算机可读存储介质,存储有计算机可执行指令或者计算机程序,其特征在于,所述计算机可执行指令或者计算机程序被处理器执行时实现权利要求1至7任一项所述的方法,或实现权利要求8至11任一项所述的方法。
15.一种计算机程序产品,包括计算机可执行指令,其特征在于,所述计算机可执行指令被处理器执行时,实现权利要求1至7任一项所述的方法,或实现权利要求8至11任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311445577.9A CN117173493B (zh) | 2023-11-02 | 2023-11-02 | 分类模型的训练方法、装置、设备、程序产品及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311445577.9A CN117173493B (zh) | 2023-11-02 | 2023-11-02 | 分类模型的训练方法、装置、设备、程序产品及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117173493A CN117173493A (zh) | 2023-12-05 |
CN117173493B true CN117173493B (zh) | 2024-02-27 |
Family
ID=88937879
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311445577.9A Active CN117173493B (zh) | 2023-11-02 | 2023-11-02 | 分类模型的训练方法、装置、设备、程序产品及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117173493B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115631381A (zh) * | 2022-10-31 | 2023-01-20 | 北京百度网讯科技有限公司 | 分类模型训练方法、图像分类方法、装置及电子设备 |
CN115830387A (zh) * | 2022-12-14 | 2023-03-21 | 富联裕展科技(深圳)有限公司 | 一种模型训练方法、训练装置、分类方法及分类装置 |
CN116467451A (zh) * | 2023-04-18 | 2023-07-21 | 平安科技(深圳)有限公司 | 一种文本分类方法、装置、存储介质以及电子设备 |
CN116955730A (zh) * | 2023-01-31 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 一种特征提取模型的训练方法、内容推荐的方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114255361A (zh) * | 2020-09-10 | 2022-03-29 | 华为技术有限公司 | 神经网络模型的训练方法、图像处理方法及装置 |
-
2023
- 2023-11-02 CN CN202311445577.9A patent/CN117173493B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115631381A (zh) * | 2022-10-31 | 2023-01-20 | 北京百度网讯科技有限公司 | 分类模型训练方法、图像分类方法、装置及电子设备 |
CN115830387A (zh) * | 2022-12-14 | 2023-03-21 | 富联裕展科技(深圳)有限公司 | 一种模型训练方法、训练装置、分类方法及分类装置 |
CN116955730A (zh) * | 2023-01-31 | 2023-10-27 | 腾讯科技(深圳)有限公司 | 一种特征提取模型的训练方法、内容推荐的方法及装置 |
CN116467451A (zh) * | 2023-04-18 | 2023-07-21 | 平安科技(深圳)有限公司 | 一种文本分类方法、装置、存储介质以及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN117173493A (zh) | 2023-12-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112434721B (zh) | 一种基于小样本学习的图像分类方法、***、存储介质及终端 | |
JP7185039B2 (ja) | 画像分類モデルの訓練方法、画像処理方法及びその装置、並びにコンピュータプログラム | |
CN111797893B (zh) | 一种神经网络的训练方法、图像分类***及相关设备 | |
CN112183577A (zh) | 一种半监督学习模型的训练方法、图像处理方法及设备 | |
Albahra et al. | Artificial intelligence and machine learning overview in pathology & laboratory medicine: A general review of data preprocessing and basic supervised concepts | |
CN111897964A (zh) | 文本分类模型训练方法、装置、设备及存储介质 | |
CN111950596A (zh) | 一种用于神经网络的训练方法以及相关设备 | |
US11755838B2 (en) | Machine learning for joint recognition and assertion regression of elements in text | |
CN114298122B (zh) | 数据分类方法、装置、设备、存储介质及计算机程序产品 | |
CN113821670B (zh) | 图像检索方法、装置、设备及计算机可读存储介质 | |
CN113849653B (zh) | 一种文本分类方法及装置 | |
CN112749737A (zh) | 图像分类方法及装置、电子设备、存储介质 | |
Bouchakwa et al. | A review on visual content-based and users’ tags-based image annotation: methods and techniques | |
CN111611796A (zh) | 下位词的上位词确定方法、装置、电子设备及存储介质 | |
CN114627282A (zh) | 目标检测模型的建立方法、应用方法、设备、装置及介质 | |
US11501071B2 (en) | Word and image relationships in combined vector space | |
CN117173493B (zh) | 分类模型的训练方法、装置、设备、程序产品及存储介质 | |
CN117216617A (zh) | 文本分类模型训练方法、装置、计算机设备和存储介质 | |
CN116992947A (zh) | 模型训练方法、视频查询方法和装置 | |
CN117010480A (zh) | 模型训练方法、装置、设备、存储介质及程序产品 | |
CN115129908A (zh) | 一种模型优化方法、装置、设备、存储介质及程序产品 | |
CN113822293A (zh) | 用于图数据的模型处理方法、装置、设备及存储介质 | |
CN111291829A (zh) | 一种精选图片的自动确定方法和*** | |
Üstünkök et al. | Image Tag Refinement with Self Organizing Maps | |
Koppisetti | Deep Learning: Advancements and Applications in Artificial Intelligence |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |