CN109726291B - 分类模型的损失函数优化方法、装置及样本分类方法 - Google Patents
分类模型的损失函数优化方法、装置及样本分类方法 Download PDFInfo
- Publication number
- CN109726291B CN109726291B CN201811644581.7A CN201811644581A CN109726291B CN 109726291 B CN109726291 B CN 109726291B CN 201811644581 A CN201811644581 A CN 201811644581A CN 109726291 B CN109726291 B CN 109726291B
- Authority
- CN
- China
- Prior art keywords
- classification
- class
- loss
- function
- text
- 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
Images
Abstract
本申请实施例提供了一种分类模型的损失函数优化方法、装置及样本分类方法。其中,该优化方法包括:生成分类标签向量对应的过滤器向量,分类标签向量和过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,过滤器向量中第二类分类对应的维度值为零;根据分类标签向量和分类模型的输出结果生成原始损失函数;使用过滤器向量对原始损失函数进行过滤,以去除原始损失函数中的第二类分类的成分,得到损失过滤函数;根据预设规则对损失过滤函数进行后处理,得到损失优化函数。从而,该优化损失函数能够提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
Description
技术领域
本申请涉及自然语言处理技术领域,尤其涉及一种分类模型的损失函数优化方法、装置及样本分类方法。
背景技术
在自然语言处理技术领域,TextCNN(TextConvolutional Neural Network,文本卷积神经网络)模型是文本分类模型的一种主流方案。TextCNN模型的原理是通过卷积神经网络对文本特征进行卷积,在卷积过程中,使用多个卷积核从文本中提取出重要的文本特征,并根据提取的文本特征进行文本分类。
现有技术中,TextCNN模型对输入文本的特征提取是无差别的,也就是说每个文本每次进入TextCNN模型,TextCNN模型都会学习一次这个文本,并对TextCNN模型产生一定的修正。在这种情况下,当TextCNN模型应用于文本不完全分类(即:部分文本存在一个没有明显共同特征的“其他”类别)的场景中时,TextCNN模型也会对这个“其他”类别的文本特征进行学习,那么,当“其他”类别的文本数量较大时,就会导致TextCNN模型实际主要学习的是没有任何特征规律的“其他”类型的文本特征,从而导致TextCNN模型的泛化能力(即对新文本的适应能力)下降。并且,随着时间的推移以及“其他”类别的文本内容发生变化时,泛化能力的下降会更加明显。
发明内容
本申请实施例提供了一种分类模型的损失函数优化方法、装置及样本分类方法,以解决现有技术的分类模型由于无差别的学习分类特征而导致的泛化能力下降的问题。
第一方面,本申请实施例提供了一种分类模型的损失函数优化方法,包括:
生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;
根据所述分类标签向量和分类模型的输出结果生成原始损失函数;
使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;
根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。
第二方面,本申请实施例提供了一种分类模型的损失函数优化装置,包括:
过滤器生成模块,生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;
原始损失函数生成模块,用于根据所述分类标签向量和分类模型的输出结果生成原始损失函数;
损失过滤函数生成模块,用于使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;
损失优化函数生成模块,用于根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。
第三方面,本申请提供了一种样本分类方法,该分类方法用于分类模型,该分类模型的损失函数使用本申请提供的优化方法进行优化,该分类方法包括:
获取未知样本的样本特征向量;
将所述样本特征向量输入到所述分类模型,以使所述分类模型对所述未知样本进行分类,其中,所述分类包括第一类分类和第二类分类,所述分类模型输出第一类分类。
由以上技术方案可知,本申请实施例提供了一种分类模型的损失函数优化方法、装置及样本分类方法。其中,该优化方法包括:生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;根据所述分类标签向量和分类模型的输出结果生成原始损失函数;使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。从而,本申请实施例生成的损失优化函数,将分类业务需求不需要的第二类分类对应的维度值清零,将分类业务需求需要的第一类分类对应的维度值放大,从而,提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
附图说明
为了更清楚地说明本申请的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种分类模型的损失函数优化方法的流程图;
图2为本申请实施例提供的一种分类模型的损失函数优化方法步骤S140的流程图;
图3为本申请实施例提供的另一种分类模型的损失函数优化方法步骤S140的流程图;
图4为本申请实施例提供的一种生成过滤器向量的方法的流程图;
图5为本申请实施例提供的一种样本分类方法的流程图;
图6是本申请实施例提供的一种分类模型的损失函数优化装置的示意图;
图7是本申请实施例提供的一种计算机系统的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
在对本申请实施例的技术方案进行具体阐述说明之前,首先对本申请实施例的技术方案可以应用的技术场景做出具体说明。
在自然语言处理技术领域,对文本、语音等进行分类是一个主要的研究方向。以文本分类为例,通过训练基于深度神经网络构建的文本分类模型,能够使文本分类模型具备一定的文本分类能力,其中,TextCNN(TextConvolutional Neural Network,文本卷积神经网络)模型就是文本分类模型的一种主流方案。
目前,TextCNN模型的训练过程主要可以包括以下步骤:
首先,提取文本特征。具体是从已知分类的文本语料中抽取文本特征,该文本特征以特征向量的形式表达。具体实现时,例如可以使用word2vec、doc2vec或者隐含狄利克雷分布(Latent Dirichlet allocation,LDA)模型等将文本语料转换成固定维度的特征向量,在特征向量中,每一行为一个词向量,对应文本语料中的一个字或分词。
然后,使用一系列的卷积核对上述生成的特征向量进行卷积操作,以从特征向量中学习到文本语料的分类特征。其中,卷积核具体可以是宽度与特征向量相同,高度小于特征向量的矩阵,卷积核按照预设的步长沿特征向量的顶部向底部逐渐移动并对特征向量的局部特征进行卷积学习,从而得到文本语料的卷积特征向量。
最后,将不同卷积核得到的卷积特征向量通过池化(pooling)的方式进行简化并拼接,最后将拼接的向量使用一个softmax函数进行输出。对于TextCNN模型的训练过程来说,这个softmax函数就是模型的损失函数。
现有技术中,TextCNN模型文本语料的文本特征提取是无差别的,也就是说每个文本每次进入TextCNN模型,TextCNN模型都会学习一次这个文本,并对TextCNN模型产生一定的修正。在这种情况下,当TextCNN模型应用于文本不完全分类(即:部分文本存在一个没有明显共同特征的其他类别)的场景中时,TextCNN模型也会对这个“其他”类别的文本特征进行学习,那么,当“其他”类别的文本数量较大时,就会导致TextCNN模型实际主要学习的是没有任何特征规律的“其他”类型的文本特征,从而导致TextCNN模型的泛化能力(即对新文本的适应能力)下降。并且,随着时间的推移以及“其他”类别的文本内容发生变化时,泛化能力的下降会更加明显。
为了解决现有技术的分类模型由于无差别的学习分类特征而导致的泛化能力下降的问题,本申请提供了一种分类模型的损失函数优化方法、装置及样本分类方法。
下面是本申请的方法实施例。
本申请实施例提供了一种分类模型的损失函数优化方法。该方法可以应用于服务器、PC(个人电脑)、平板电脑、手机、虚拟现实设备和智能穿戴设备等多种设备中。
图1为本申请实施例提供的一种分类模型的损失函数优化方法的流程图。如图1所示,该方法可以包括以下步骤:
步骤S110,生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零。
其中,本申请中的分类标签向量具体可以是表征语料文本实际分类的向量。进一步地,由于在做文本分类时,从业务需求的角度考虑,本领域技术人员只需要从待分类的文本中识别出某些特定分类,例如:如果待分类文本可能拥有5个分类,可以只要求分类模型识别出其中的一个分类即可,而对于剩余4个分类,可以统一当作其他分类处理,不需要具体细分出到底属于哪个分类。那么,对于这些需要从待分类文本中准确识别出来的特定分类,本申请可以将其作为第一类分类,对于除了第一类分类以外的其他分类,本申请可以将其作为第二类分类。需要补充说明的是,第一类分类和第二类分类中都可以包含至少一个分类。
基于上述定义,本申请生成分类标签向量对应的过滤器向量,该过滤器向量对应第二类分类的维度值为零。进一步地,作为一种可实现的实施方式,可以将分类标签向量对应第一类分类的维度值放大预设倍数,以及,将分类标签向量对应第二类分类的维度值设置为零,得到所述过滤器向量。
从而,当过滤器向量与原始损失函数的对应维度进行相乘计算时,能够将原始损失函数中第二类分类对应的维度值清零,将第一类分类对应的维度值放大,从而,提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
步骤S120,根据所述分类标签向量和分类模型的输出结果生成原始损失函数。
具体地,分类标签具体可以是表征语料文本实际分类的向量,输出结果是指分类模型的最后一层神经网络的输出。其中,步骤S120的一种实现方式是根据分类标签向量和所述输出结果的交叉熵,生成所述原始损失函数,具体可以包括:首先,对于分类模型的最后一层神经网络的输出(即分类模型的输出结果)使用一个归一化指数函数,得到神经网络模型预测的语料文本属于各个类别的概率的预测向量,然后,将这个预测向量与分类标签向量的输出结果计算交叉熵,得到原始损失函数。
具体地,归一化指数函数例如可以是softmax函数,softmax函数能将一个含任意实数的K维向量“压缩”到另一个K维实向量中,使得每一个元素的范围都在(0,1)之间,并且所有元素的和为1。示例地,如果分类模型的输出结果对应5个分类,则该输出结果可以是一个5维的向量Z=[z1,z2,z3,z4,z5];通过一个softmax函数处理得到的预测向量例如可以是:K=[kl,k2,k3,k4,k5]。其中,k1~k5的值均在(0,1)之间。然后,对softmax函数得到的预测向量与分类标签向量计算交叉熵,具体使用以下公式:
其中,HY(K)即为原始损失函数,yi表示分类标签向量Y中的第i个维度(对应第i个分类)的值,ki为预测向量的第i个维度(对应第i个分类)的值。示例地,如果语料文本共可能包含5个分类,而当前输入的语料文本的实际分类属于第三个分类,则对应的分类标签向量可以为:Y=[0,0,1,0,0]。
步骤S130,使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数。
其中,在过滤器向量中,第一类分类对应的维度值均为1,第二类分类对应的维度值均为0,由此,可以通过将原始损失函数与过滤器向量的对应维度分别相乘的方式,将原始损失函数中的第二类分类对应的维度值清零,以得到所述损失过滤函数。
示例地,文本包含5个分类,即[分类1,分类2,分类3,分类4,分类5],其中,分类1为第一类分类,分类2、分类3、分类4、分类5为第二类分类,则过滤器向量可以为F=[1,0,0,0,0]。那么,如果原始损失函数为S1=[s1,s2,s3,s4,s5],则原始损失函数S1与过滤器向量F相乘之后,得到的损失过滤函数为S2=[s1,0,0,0,0]。
由此,第二类损失函数中的第二类分类对应的维度值被清零,从而使分类模型在学习语料的分类特征时,能够忽略到第二类分类对应的损失,即不学习第二类分类的分类特征。
步骤S140,根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。
其中,后处理过程主要包括对损失过滤函数进行降维以及求平均值处理。
图2为本申请实施例提供的一种分类模型的损失函数优化方法步骤S140的流程图。
如图2所示,作为一种可实现的实施方式,步骤S140具体可以包括以下步骤:
步骤S201,将所述损失过滤函数进行减少均方值运算,得到简化损失函数。
具体地,一种对损失过滤函数减少均方值方法可以是将损失过滤函数中的每个维度相加并求平均值,以得到简化损失函数。示例地,对于每个语料文本,其对应的损失过滤函数分别为:
S21=[a1,b1,c1,d1,e1]
S22=[a2,b2,c2,d2,e2]
S23=[a3,b3,c3,d3,e3]
S24=[a4,b4,c4,d4,e4]
S25=[a5,b5,c5,d5,e5]
则简化损失函数为:
S3=[s31,s32,s33,s34,s35]
其中,s31=(a1+b1+c1+d1+e1)/5;s32=(a2+b2+c2+d2+e2)/5;s33=(a3+b3+c3+d3+e3)/5;
s34=(a4+b4+c4+d4+e4)/5;s35=(a5+b5+c5+d5+e5)/5。
步骤S202,获取所述简化损失函数的对数函数,作为所述优化损失函数。
由于,步骤S120通过对softmax函数得到的预测向量与分类标签向量计算交叉熵得到的原始损失函数的维度为负值(可参见交叉熵的计算公式);因此,使用过滤器向量对原始损失函数进行过滤,去除原始损失函数中的第二类维度值成分,得到损失过滤函数的维度值也是负值;同理,将损失过滤函数中的每个维度相加并求平均值,得到的简化损失函数的维度值也是负值,因此在步骤S202中,将对简化损失函数取对数,能够将简化损失函数的维度值由负数映射到数值区间(0,1)内,从而将损失优化函数的维度值归一化到的数值区间内,使优化损失函数具有最小损失和最大损失。
图3为本申请实施例提供的另一种分类模型的损失函数优化方法步骤S140的流程图。
如图3所示,作为一种可实现的实施方式,步骤S140具体可以包括以下步骤:
步骤S301,将所述损失过滤函数进行减少均方值运算,得到简化损失函数。
具体地,可以将损失过滤函数中的每个维度相加并求平均值,以得到简化损失函数。示例地,对于每个语料文本,其对应的损失过滤函数分别为:
S21=[a1,b1,c1,d1,e1]
S22=[a2,b2,c2,d2,e2]
S23=[a3,b3,c3,d3,e3]
S24=[a4,b4,c4,d4,e4]
S25=[a5,b5,c5,d5,e5]
则简化损失函数为:
S3=[s31,s32,s33,s34,s35]
其中,s31=(a1+b1+c1+d1+e1)/5;s32=(a2+b2+c2+d2+e2)/5;s33=(a3+b3+c3+d3+e3)/5;
s34=(a4+b4+c4+d4+e4)/5;s35=(a5+b5+c5+d5+e5)/5。
步骤S302,将所述简化损失函数与每个分类的预测分相乘,得到加权损失函数,其中,所述预测分为所述分类的准确率和召回率的加权平均值。
具体地,对于每个分类,分别计算分类模型对语料文本的预测分类与语料文本的实际分类之间的精确率(Precision)和召回率(Recall);然后,对每个分类的精确率和召回率进行加权求平均值,从而得到该分类的预测分。
示例地,可以使用F-Measure(又称为F-Score)算法计算准确率和召回率的加权平均值。具体,使用以下公式:
其中,β为常数,P是精确率(Precision),R是召回率(Recall),当常数β=1时,该公式计算出的F1即为该分类的预测分,即:
然后,将简化损失函数依次与每个分类的预测分相乘,得加权损失函数。
示例地,语料文本共包含5个分类,这5个分类的预测分分别为:F11、F12、F13、F14和F15;那么,加权损失函数S4为:
S4=S3×F11×F12×F13×F14×F15
步骤S303,获取所述加权损失函数的对数函数,作为所述优化损失函数。
由于,步骤S120通过对softmax函数得到的预测向量与分类标签向量计算交叉熵得到的原始损失函数的维度为负值(可参见交叉熵的计算公式);因此,使用过滤器向量对原始损失函数进行过滤,去除原始损失函数中的第二类维度值成分,得到损失过滤函数的维度值也是负值;同理,将损失过滤函数中的每个维度相加并求平均值,得到的简化损失函数的维度值,以及与预测分相乘得到的加权损失函数也是负值,因此在步骤S303中,将对加权损失函数取对数,能够将加权损失函数的维度值由负数映射到数值范围(0,1)内,从而将损失优化函数的维度值归一化到的数值区间内,使优化损失函数具有最小损失和最大损失。
图4为本申请实施例提供的一种生成过滤器向量的方法的流程图。
如图4所示,作为一种可实现的实施方式,将分类标签向量对应所述第一类分类的维度值放大预设倍数,以及,将所述分类标签向量对应所述第二类分类的维度值设置为零,得到所述过滤器向量,可以包括以下步骤:
步骤S401,将所述分类标签向量与第二类分类对应的常数向量进行维度值的匹配。
步骤S402,将匹配到的相同的维度值使用零值进行替换,将匹配到的不相同的维度值使用放大预设倍数之后的值进行替换,以得到所述过滤器向量。
具体地,在一个实施例中,本申请可以设置三个常数向量,这三个向量的维度与分类标签向量的维度相同。其中,第一个向量的第二类分类对应的维度与分类标签向量的第二类分类对应的维度具有相同的维度值,第一个向量的第一类分类对应的维度的维度值均为0;从而,当分类标签向量与第一个常数向量进行维度值匹配时,能够把分类标签向量的所有第二类分类对应的维度匹配出来。
进一步地,本申请的第二个常数向量的所有维度的维度值可以均为0,第三个常数向量的维度值等于分类标签向量的维度值放大预设倍数,例如:30倍。
示例地,分类标签向量Y=[2,2,1,2,0],第一个常数向量C1=[0,0,1,2,0],第二个常数向量C2=[0,0,0,0,0],第三个常数向量C3=[60,60,30,60,0]。那么使用Y=[2,2,1,2,0]和C1=[0,0,1,2,0]进行维度值匹配,能够得到以下匹配结果:
R=[false,false,true,true,true]
其中,false表示维度值不同,true表示维度值相同,那么根据匹配结果,将匹配结果为true的维度使用C2的维度值替换,将匹配结果为false的维度使用C3的维度值替换,则可以得到过滤器向量F为:
F=[60,60,0,0,0]
由此,过滤器向量F中,第二类分类对应的维度值均为0,第一类分类对应的维度值被放大;从而,当过滤器向量F与原始损失函数的对应维度进行相乘计算时,能够将原始损失函数中第二类分类对应的维度值清零,将第一类分类对应的维度值放大,从而,提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
由以上技术方案可知,本申请实施例提供了一种分类模型的损失函数优化方法,包括:生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;根据所述分类标签向量和分类模型的输出结果生成原始损失函数;使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。从而,本申请实施例生成的损失优化函数,将分类业务需求不需要的第二类分类对应的维度值清零,将分类业务需求需要的第一类分类对应的维度值放大,从而,提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
本申请实施例还提供了一种样本分类方法。
图5为本申请实施例提供的一种样本分类方法的流程图。
该分类方法用于分类模型,该分类模型的损失函数使用本申请提供的损失函数优化方法进行优化。如图5所示,该分类方法包括:
步骤S150,获取未知样本的样本特征向量。
其中,未知样本可以是待分类的文本、语音、图像等。具体地,如果未知样本是待分类的文本,则样本特征向量可以是文本的词向量序列,该词向量序列可以使用wordvec等词向量模型训练得到;如果是未知样本是待分类的语音或图像等,则可以使用卷积神经网络(convolutional neural network,CNN)模型、向量量化(vector quantization,VQ)等方法提取语音或图像的特征,从而得到语音的语音特征向量或者图像的图像特征向量。
步骤S160,将所述样本特征向量输入到所述分类模型,以使所述分类模型对所述未知样本进行分类,其中,所述分类包括第一类分类和第二类分类,所述分类模型输出第一类分类。
其中,第一类分类和第二类分类中均可包含至少一个分类,本领域技术人员使用申请实施例的方法进行文本分类时,可以将其想要得到的分类作为设置为第一类分类,将不想要得到的分类作为第二类分类,或者,不设置第二类分类,当不设置第二类分类时,分类模型认为所有除了第一类分类以外的未知分类均为第二类分类。
由此,将样本特征向量输入到所述分类模型之后,分类模型能够根据样本特征向量将对应的未知样本分类为第一类分类中的某个分类或者分类为第二类分类,如果将未知样本分类到第一类分类,则输出分类结果,如果将未知样本分类到第二类分类,则可以选择输出分类结果或者不输出结果,从而实现对未知样本分类的同时进行未知样本的分类筛选。
由以上技术方案可知,本申请实施例提供的样本分类方法,可应用于对文本、语音、图像的分类。由于本申请实施例的样本分类方法使用了损失函数优化了的分类模型,该分类模型的泛化性更好,分类准确度更高。因此,本申请实施例的样本分类方法能够实现对特定类别的样本进行准确分类并输出,而对于不需要输出的分类则不会进行输出,实用性更强。
下面是本申请的装置实施例,可用于执行本申请的方法实施例,该装置包括用于执行本申请的方法实施例的各个步骤的软件模块。对于本申请装置实施例中未披露的细节,请参照本申请方法实施例。
图6是本申请实施例提供的一种分类模型的损失函数优化装置的示意图。该装置可以应用于服务器、PC(个人电脑)、平板电脑、手机、虚拟现实设备和智能穿戴设备等多种设备中。
如图6所示,该装置包括:
过滤器生成模块501,生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;
原始损失函数生成模块502,用于根据所述分类标签向量和分类模型的输出结果生成原始损失函数;
损失过滤函数生成模块503,用于使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;
损失优化函数生成模块504,用于根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。
由以上技术方案可知,本申请实施例提供了一种分类模型的损失函数优化装置,用于生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;根据所述分类标签向量和分类模型的输出结果生成原始损失函数;使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。从而,本申请实施例生成的损失优化函数,将分类业务需求不需要的第二类分类对应的维度值清零,将分类业务需求需要的第一类分类对应的维度值放大,从而,提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
下面是本申请的硬件实施例,提供了一种计算机系统,可用于执行本申请的方法实施例,该计算机系统包括用于执行本申请的方法实施例的各个步骤的硬件模块。对于本申请硬件实施例中未披露的细节,请参照本申请方法实施例。
图7是本申请实施例提供的一种计算机系统的示意图。
如图7所示,该计算机系统可以包括:
存储器601和处理器602;
所述存储器601,用于存储所述处理器602的可执行程序;
所述处理器602被配置为执行以下程序步骤:
生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;
根据所述分类标签向量和分类模型的输出结果生成原始损失函数;
使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;
根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。
由以上技术方案可知,本申请实施例提供了一种计算机系统,用于执行以下程序步骤:生成分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含第一类分类对应的维度和第二类分类对应的维度,其中,所述过滤器向量中第二类分类对应的维度值为零;根据所述分类标签向量和分类模型的输出结果生成原始损失函数;使用所述过滤器向量对所述原始损失函数进行过滤,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;根据预设规则对所述损失过滤函数进行后处理,得到分类模型的损失优化函数。从而,本申请实施例生成的损失优化函数,将分类业务需求不需要的第二类分类对应的维度值清零,将分类业务需求需要的第一类分类对应的维度值放大,从而,提高分类模型对第一类分类的文本特征的学习权重,并且不学习第二类分类的文本特征,降低分类模型的泛化性,提高文本分类的准确性。
本领域技术人员在考虑说明书及实践这里公开的申请后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
Claims (7)
1.一种文本分类方法,其特征在于,包括:
生成用于表征语料文本的实际分类的分类标签向量,以及生成所述分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含语料文本的第一类分类对应的维度和语料文本的第二类分类对应的维度,其中,语料文本拥有多个分类,所述第一类分类是指需要从语料文本中准确识别出来的特定分类,所述第二类分类是指除所述第一类分类以外的其他分类,所述第一类分类和所述第二类分类中均包含至少一个分类,所述过滤器向量中第二类分类对应的维度值为零;
根据所述分类标签向量和文本分类模型的输出结果的交叉熵,生成原始损失函数,所述输出结果是由文本分类模型的最后一层神经网络的输出使用一个归一化指数函数得到的语料文本属于各个类别的概率的预测向量;
将所述原始损失函数与所述过滤器向量的对应维度分别相乘,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;
根据预设规则对所述损失过滤函数进行后处理,得到文本分类模型的损失优化函数;
将所述待分类文本的特征向量输入到具有所述损失优化函数的文本分类模型中,以得到所述待分类文本的分类结果。
2.根据权利要求1所述的方法,其特征在于,所述生成所述分类标签向量对应的过滤器向量,包括:
将所述分类标签向量对应所述第一类分类的维度值放大预设倍数,以及,将所述分类标签向量对应所述第二类分类的维度值设置为零,得到所述过滤器向量。
3.根据权利要求1所述的方法,其特征在于,所述根据预设规则对所述损失过滤函数进行后处理,得到文本分类模型的损失优化函数,包括:
将所述损失过滤函数进行减少均方值运算,得到简化损失函数;
获取所述简化损失函数的对数函数,作为所述优化损失函数。
4.根据权利要求1所述的方法,其特征在于,所述根据预设规则对所述损失过滤函数进行后处理,得到文本分类模型的损失优化函数,包括:
将所述损失过滤函数进行减少均方值运算,得到简化损失函数;
将所述简化损失函数与每个分类的预测分相乘,得到加权损失函数,其中,所述预测分为所述分类的准确率和召回率的加权平均值;
获取所述加权损失函数的对数函数,作为所述优化损失函数。
5.根据权利要求2所述的方法,其特征在于,所述将分类标签向量对应所述第一类分类的维度值放大预设倍数,以及,将所述分类标签向量对应所述第二类分类的维度值设置为零,得到所述过滤器向量,包括:
将所述分类标签向量与第二类分类对应的常数向量进行维度值的匹配;
将匹配到的相同的维度值使用零值进行替换,将匹配到的不相同的维度值使用放大预设倍数之后的值进行替换,以得到所述过滤器向量。
6.根据权利要求1所述的方法,其特征在于,所述根据预设规则对所述损失过滤函数进行后处理,得到文本分类模型的损失优化函数,还包括:
将所述损失优化函数的维度值归一化到预设的数值区间内。
7.一种文本分类装置,其特征在于,包括:
过滤器生成模块,用于生成用于表征语料文本的实际分类的分类标签向量,以及生成所述分类标签向量对应的过滤器向量,所述分类标签向量和所述过滤器向量均包含语料文本的第一类分类对应的维度和语料文本的第二类分类对应的维度,其中,语料文本拥有多个分类,所述第一类分类是指需要从语料文本中准确识别出来的特定分类,所述第二类分类是指除所述第一类分类以外的其他分类,所述第一类分类和所述第二类分类中均包含至少一个分类,所述过滤器向量中第二类分类对应的维度值为零;
原始损失函数生成模块,用于根据所述分类标签向量和文本分类模型的输出结果的交叉熵,生成原始损失函数,所述输出结果是由文本分类模型的最后一层神经网络的输出使用一个归一化指数函数得到的语料文本属于各个类别的概率的预测向量;
损失过滤函数生成模块,用于将所述原始损失函数与所述过滤器向量的对应维度分别相乘,以去除所述原始损失函数中的所述第二类分类的成分,得到损失过滤函数;
损失优化函数生成模块,用于根据预设规则对所述损失过滤函数进行后处理,得到文本分类模型的损失优化函数;
分类模块,用于将所述待分类文本的特征向量输入到具有所述损失优化函数的文本分类模型中,以得到所述待分类文本的分类结果。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811644581.7A CN109726291B (zh) | 2018-12-29 | 2018-12-29 | 分类模型的损失函数优化方法、装置及样本分类方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811644581.7A CN109726291B (zh) | 2018-12-29 | 2018-12-29 | 分类模型的损失函数优化方法、装置及样本分类方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109726291A CN109726291A (zh) | 2019-05-07 |
CN109726291B true CN109726291B (zh) | 2021-04-27 |
Family
ID=66298113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811644581.7A Active CN109726291B (zh) | 2018-12-29 | 2018-12-29 | 分类模型的损失函数优化方法、装置及样本分类方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109726291B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111191741A (zh) * | 2020-01-15 | 2020-05-22 | 中国地质调查局发展研究中心 | 一种岩石识别深度学习模型岩石分类约束继承性损失方法 |
CN112084752B (zh) * | 2020-09-08 | 2023-07-21 | 中国平安财产保险股份有限公司 | 基于自然语言的语句标注方法、装置、设备及存储介质 |
CN114091472B (zh) * | 2022-01-20 | 2022-06-10 | 北京零点远景网络科技有限公司 | 多标签分类模型的训练方法 |
CN117541044A (zh) * | 2023-07-28 | 2024-02-09 | 中科乾唐(北京)科技股份公司 | 基于项目风险分析的项目分类方法、系统、介质及设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106682696B (zh) * | 2016-12-29 | 2019-10-08 | 华中科技大学 | 基于在线示例分类器精化的多示例检测网络及其训练方法 |
CN107886062B (zh) * | 2017-11-03 | 2019-05-10 | 北京达佳互联信息技术有限公司 | 图像处理方法、系统及服务器 |
CN108595643A (zh) * | 2018-04-26 | 2018-09-28 | 重庆邮电大学 | 基于多分类节点卷积循环网络的文本特征提取及分类方法 |
CN108829818B (zh) * | 2018-06-12 | 2021-05-25 | 中国科学院计算技术研究所 | 一种文本分类方法 |
CN109101584B (zh) * | 2018-07-23 | 2020-11-03 | 湖南大学 | 一种将深度学习与数学分析相结合的句子分类改进方法 |
-
2018
- 2018-12-29 CN CN201811644581.7A patent/CN109726291B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN109726291A (zh) | 2019-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109726291B (zh) | 分类模型的损失函数优化方法、装置及样本分类方法 | |
CN109101537B (zh) | 基于深度学习的多轮对话数据分类方法、装置和电子设备 | |
GB2547068B (en) | Semantic natural language vector space | |
CN109948149B (zh) | 一种文本分类方法及装置 | |
WO2015165372A1 (en) | Method and apparatus for classifying object based on social networking service, and storage medium | |
CN109961102B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN113220886A (zh) | 文本分类方法、文本分类模型训练方法及相关设备 | |
CN110929836B (zh) | 神经网络训练及图像处理方法和装置、电子设备、介质 | |
CN113240510B (zh) | 异常用户预测方法、装置、设备及存储介质 | |
EP4343616A1 (en) | Image classification method, model training method, device, storage medium, and computer program | |
CN112418320A (zh) | 一种企业关联关系识别方法、装置及存储介质 | |
WO2023159756A1 (zh) | 价格数据的处理方法和装置、电子设备、存储介质 | |
CN113657421A (zh) | 卷积神经网络压缩方法和装置、图像分类方法和装置 | |
CN115730597A (zh) | 多级语义意图识别方法及其相关设备 | |
CN113449840A (zh) | 神经网络训练方法及装置、图像分类的方法及装置 | |
CN111062440A (zh) | 一种样本选择方法、装置、设备及存储介质 | |
CN114444476A (zh) | 信息处理方法、装置和计算机可读存储介质 | |
CN112989843B (zh) | 意图识别方法、装置、计算设备及存储介质 | |
CN113011532A (zh) | 分类模型训练方法、装置、计算设备及存储介质 | |
CN109558882A (zh) | 基于鲁棒局部低秩稀疏cnn特征的图像分类方法及装置 | |
CN108805291B (zh) | 一种网络表示学习模型的训练方法及服务器 | |
CN116503670A (zh) | 图像分类及模型训练方法、装置和设备、存储介质 | |
CN113378866B (zh) | 图像分类方法、系统、存储介质及电子设备 | |
CN110085292A (zh) | 药品推荐方法、装置及计算机可读存储介质 | |
CN106021299B (zh) | 文本的降维特征向量确定方法及装置 |
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 | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 230000 zone B, 19th floor, building A1, 3333 Xiyou Road, hi tech Zone, Hefei City, Anhui Province Applicant after: Dingfu Intelligent Technology Co., Ltd Address before: Room 630, 6th floor, Block A, Wanliu Xingui Building, 28 Wanquanzhuang Road, Haidian District, Beijing Applicant before: DINFO (BEIJING) SCIENCE DEVELOPMENT Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |