具体实施方式
在自然语言处理中,在将中文文本转化为词嵌入时,首先,可以对中文文本进行分词处理,得到多个分词;其次,将多个分词分别转化为词嵌入,得到多个词嵌入;最后,将多个词嵌入作为中文文本对应的词嵌入。
现有技术中,为了便于将中文文本转化为词嵌入,可以建立开源的词嵌入库,在该词嵌入库中可以存储与不同分词对应的词嵌入,这样,在将中文文本转化为词嵌入时,在对中文文本进行分词处理并得到多个分词后,可以从词嵌入库中查找与多个分词分别对应的词嵌入,并将查找到的多个词嵌入作为中文文本的词嵌入。
然而,在实际应用中,中文文本的分词方法有很多种,不同的分词方法可以得到不同的分词结果,而现有的词嵌入库中存储的分词和词嵌入有限,导致在对中文文本进行分词后,在词嵌入中可能查找不到对应的词嵌入;此外,在不同的应用场景下,同一分词的语义和语境可能不同,相应地,对应的词嵌入也不同,这样,即便在词嵌入库中查找到对应的词嵌入,该词嵌入也不一定符合当前的应用场景,即不能满足将文本转化为词嵌入的实际需求,从而不能有效地将中文文本转化为词嵌入。
由此可见,现有的将文本转化为词嵌入的方法,很难将中文文本有效地转化为实际需要的词嵌入。
为了解决上述技术问题,本申请实施例提供一种将文本转化为词嵌入的方法和装置,该方法包括:获取待处理文本;根据所述待处理文本对应的应用场景,采用与所述应用场景对应的分词方法对所述待处理文本进行分词处理,得到多个分词;从预先确定的词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;将查找到的多个词嵌入作为所述待处理文本对应的词嵌入。
这样,由于在将待处理文本转化的词嵌入时,可以结合待处理文本对应的应用场景,采用符合应用场景的分词方法对待处理文本进行分词处理,并将待处理文本转化为与应用场景对应的词嵌入,因此,转化得到的词嵌入更为准确,更能满足实际需求。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
以下结合附图,详细说明本申请各实施例提供的技术方案。
图1是本申请的一个实施例将文本转化为词嵌入的方法的流程示意图。所述方法如下所述。
S102:获取待处理文本。
在S102中,在需要将文本转化为词嵌入时,可以获取需要转化为词嵌入的待处理文本。其中,所述待处理文本可以是中文文本。
本申请实施例中,所述待处理文本可以对应一种应用场景,所述应用场景可以理解为应用所述待处理文本的场景,所述应用场景具体可以是风险识别场景、风险防控场景,也可以是文字识别场景、文字翻译场景等,在不同的应用场景下,所述待处理文本的语义和语境可以不同。
在获取到待处理文本后,可以执行S104。
S104:根据所述待处理文本对应的应用场景,采用与所述应用场景对应的分词方法对所述待处理文本进行分词处理,得到多个分词。
在S104中,在获取到待处理文本后,可以对待处理文本进行分词处理,得到多个分词。
本申请实施例在对待处理文本进行分词处理时,为了使分词结果更加符合实际的应用场景,可以预先规定在一种应用场景下(或类似的多个应用场景下),使用相同的分词方法对不同的文本进行分词处理,即,可以预先建立应用场景与分词方法之间的映射关系。这样,在对待处理文本进行分词处理时,可以根据待处理文本对应的应用场景,选择与该应用场景对应的分词方法对待处理文本进行分词处理。
需要说明的是,本申请实施例采用的分词方法可以是现有的中文分词方法。现有的中文分词方法主要分为三类,第一类是基于词典的分词方法,也可以称为机械分词方法,例如,mm法(maximum matching method,最大正向匹配法)、rmm法(reverse maximummatching method,逆向最大匹配法)、ngram法;第二类是基于词语频率统计的分词方法,可以将文章中任意两个字同时出现的频率进行统计,次数越高就可能是一个词;第三类是基于规则的分词方法,让计算机来模拟人的理解方式进行分词,例如结巴分词方法等。其中,针对一种应用场景(或类似的多个场景),其对应的分词方法可以根据实际情况确定,这里不做具体限定,只要保证得到的分词能够符合当前的语义和语境,满足实际的分词需求即可。
此外,本申请实施例采用的分词方法也可以是针对应用场景确定的新的分词方法,只要分词处理后得到的多个分词能够满足实际的分词需求即可。
在对待处理文本进行分词处理后,可以得到待处理文本对应的多个分词。之后,可以执行S106。
S106:从预先确定的词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入。
在S106中,可以预先建立词嵌入库,所述词嵌入库中可以存储有与不同应用场景下的不同分词对应的词嵌入,这样,在确定待处理文本对应的多个分词后,可以根据待处理文本对应的应用场景以及所述多个分词,从词嵌入库中查找对应的词嵌入。
在预先建立词嵌入库时,以一种应用场景(为了便于区分,可以由第一应用场景表示)为例,可以通过以下方式确定得到与该应用场景下的不同分词对应的词嵌入:
获取与所述第一应用场景对应的样本文本;
采用与所述第一应用场景对应的分词方法对所述样本文本进行分词处理,得到多个第一分词;
采用不同的词嵌入算法将所述多个第一分词转化为词嵌入,得到多个词嵌入结果;
将所述多个词嵌入结果进行比较,选择其中一个词嵌入结果;
将选择的词嵌入结果中包含的多个目标词嵌入、所述第一应用场景以及所述多个第一分词对应存储至所述词嵌入库中。
具体地,第一步,可以获取第一应用场景对应的样本文本,这些样本文本可以为中文文本。
第二步,对样本文本进行分词处理。在进行分词处理时,可以基于上述S104中记载的内容,采用与所述第一应用场景对应的分词方法对样本文本进行分词处理,得到多个分词。为了便于区分,这里可以使用第一分词表示对样本文本进行分词处理后得到的多个分词。
第三步,根据样本文本对应的多个第一分词,可以采用现有的多种词嵌入算法,将多个第一分词转化为词嵌入,得到多个词嵌入结果,其中,一种词嵌入算法可以对应一个词嵌入结果。
现有的词嵌入算法可以包括:word2vec算法、GloVe算法、CWE算法、cw2vec算法等,在使用现有的词嵌入算法将多个第一分词转化为词嵌入时,具体实现方式可以参见现有技术中的相关内容,这里不再详细描述。
第四步:将多个词嵌入结果进行比较,确定多个词嵌入结果中效果最佳的一个词嵌入结果,其中,所述效果最佳的词嵌入结果可以理解为最符合实际需求的词嵌入结果
在确定多个词嵌入结果中效果最佳的一个词嵌入结果时,可以基于分类器确定,所述分类器可以是弱分类器,例如,随机森林、决策树、逻辑回归等,也可以是强分类器,例如,adaboost等。
具体地,可以将所述多个词嵌入结果分别输入到分类器中进行训练,在训练结束后,得到所述多个词嵌入结果各自对应的训练指标。其中,所述训练指标可以理解为所述分类器的评价指标,具体可以根据实际使用的分类器确定,例如,当分类器为随机森林时,所述训练指标可以是roc曲线或auc值等。
在将所述多个词嵌入结果分别输入到分类器中进行训练时,以其中一个词嵌入结果为例,首先,针对该词嵌入结果包含的多个词嵌入,可以计算每个词嵌入在各个维度上的数值的平均值,例如,词嵌入结果中包含N个词嵌入,那么可以得到与N个词嵌入对应的N个平均值。
其次,将得到多个平均值输入分类器中进行训练,训练的具体方法可以参见现有技术中使用分类器进行训练的方法,这里不再详细描述。
最后,在训练结束后,可以得到分类器的训练指标,该训练指标即为该词嵌入结果对应的训练指标。
通过以上方法,可以得到多个词嵌入结果各自对应的训练指标。
在得到多个词嵌入结果各自对应的训练指标后,可以将这些训练指标进行比较,由于训练指标越大,可以说明词嵌入结果的效果越好,越符合实际需求。因此,可以确定其中最大的训练指标,该最大训练指标对应的词嵌入结果即为最终需要选择的词嵌入结果。
第五步:在选择效果最佳的词嵌入结果后,可以确定该词嵌入结果对应的多个词嵌入(为了便于区分,以下可以由目标词嵌入表示),并将多个目标词嵌入、所述多个第一分词以及所述第一应用场景对应存储在词嵌入库中。
在本申请实施例中,为了避免重复存储,在将所述多个目标词嵌入、所述第一应用场景以及所述多个第一分词对应存储至所述词嵌入库中时,针对每一个第一分词,还可以判断所述词嵌入库中是否包含与所述第一分词以及所述第一应用场景对应的历史词嵌入。
如果否,则可以将所述第一分词对应的目标词嵌入、所述第一应用场景以及所述多个第一分词对应存储至所述词嵌入库中;如果是,则将所述第一分词对应的目标词嵌入与所述第一分词对应的历史词嵌入进行比较,确定哪个词嵌入的效果更佳,并根据比较结果对所述第一分词对应的目标词嵌入进行处理。
在将所述第一分词对应的目标词嵌入与所述第一分词对应的历史词嵌入进行比较时,可以使用上述记载的分类器。具体地,可以将所述第一分词对应的目标词嵌入和所述第一分词对应的历史词嵌入分别输入到分类器中进行训练,在训练结束后,可以得到目标词嵌入和历史词嵌入各自的训练指标,所述训练指标与上述记载的训练指标相同。
在得到目标词嵌入对应的训练指标和历史词嵌入对应的训练指标后,可以将两者进行比较,若目标词嵌入对应的训练指标大于历史词嵌入的训练指标,则可以说明目标词嵌入的效果更佳,此时可以将目标词嵌入替换历史词嵌入存储至所述词嵌入库中;若目标词嵌入对应的训练指标不大于历史词嵌入对应的训练指标,则可以说明历史词嵌入的效果更佳,此时,可以将目标词嵌入与历史词嵌入拼接,当然,也可以忽略目标词嵌入,即不将目标词嵌入存储至所述词嵌入库中。
基于上述记载的方法,可以确定得到存储有不同应用场景下与不同分词对应的词嵌入的词嵌入库。
为了便于理解确定词嵌入库的整个过程,可以参见图2。
S201:获取目标应用场景对应的样本文本。
所述目标应用场景可以是多个应用场景中的一种,本申请实施例以确定与目标应用场景下的不同分词对应的词嵌入为例进行说明。
S202:采用与所述目标应用场景对应的分词方法对所述样本文本进行分词处理,得到多个分词。
不同的应用场景和不同的分词方法之间的对应关系可以预先规定。使用目标应用场景对应的分词方法进行分词处理,得到的多个分词更加符合实际的应用场景。
S203:采用多种词嵌入算法将所述多个分词转化为词嵌入,得到多个词嵌入结果。
所述多种词嵌入算法可以包括:word2vec算法、GloVe算法、CWE算法、cw2vec算法等,一种词嵌入算法可以对应一种词嵌入结果。
S204:将所述多个词嵌入结果分别输入到分类器中进行训练,得到各自对应的训练指标。
所述训练指标可以理解为所述分类器的评价指标具体可以根据实际使用的分类器确定。
S205:确定具有最大训练指标的词嵌入结果。
在S205中,训练指标越大,可以说明词嵌入的效果越好,越符合实际需求,因此,可以将多个词嵌入结果各自的训练指标进行比较,确定具有最大训练指标的词嵌入结果。
S206:判断词嵌入库中是否包含与所述目标应用场景以及第一分词对应的历史词嵌入。
在S206中,可以将S205中的词嵌入结果存储至词嵌入库中。为了避免重复存储,可以以样本文本的多个分词中的第一分词为例,判断词嵌入库中是否包含与所述目标应用场景以及所述第一分词对应的历史词嵌入。
若是,则可以执行S207;若否,则可以执行S211。
S207:将目标词嵌入和所述历史词嵌入分别输入到分类器中进行训练,得到各自对应的训练指标。
所述目标词嵌入为具有最大训练指标的词嵌入结果中与所述第一分词对应的词嵌入。S207中的训练指标与S204中记载的训练指标相同。
S208:判断所述目标词嵌入对应的训练指标是否大于所述历史词嵌入对应的训练指标。
若大于,则可以说明目标词嵌入的效果更佳,并执行S209;若不大于,则可以说明历史词嵌入的效果更佳,并执行S210。
S209:将所述目标词嵌入替换所述历史词嵌入存储至所述词嵌入库中。
S210:将所述目标词嵌入与所述历史词嵌入拼接。
S211:将所述词嵌入结果中包含的多个词嵌入、所述目标应用场景以及所述多个分词对应存储至词嵌入库中。
本申请实施例确定的词嵌入库中包含与不同应用场景下不同分词对应的词嵌入,相较于现有的词嵌入库而言,内容更加丰富。能够满足对不同应用场景下不同文本转化为词嵌入的需求。
在基于上述记载的方法预先确定得到词嵌入库后,在将待处理文本转化为词嵌入时,针对待处理文本对应的每个分词,可以从词嵌入库中查找与待处理文本对应的应用场景以及该分词对应的词嵌入,最终可以得到与待处理文本的多个分词对应的多个词嵌入。
在得到待处理文本的多个分词对应的多个词嵌入后,可以执行S108。
S108:将查找到的多个词嵌入作为所述待处理文本对应的词嵌入。
在S108中,可以将S106中得到的多个分词对应的词嵌入作为待处理文本对应的词嵌入,至此,实现了将待处理文本转化为词嵌入的目的。
本申请实施例在将待处理文本转化为词嵌入之前,建立词嵌入库,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入。这样,在将待处理文本转化为词嵌入时,可以根据待处理文本对应的应用场景,采用预设的分词方法进行分词处理,在得到多个分词后,可以根据待处理本文对应的应用场景和多个分词,从预先建立的词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入,并将查找到的词嵌入作为待处理文本的词嵌入,实现将文本转化为词嵌入的目的。由于在将待处理文本转化的词嵌入时,可以结合待处理文本对应的应用场景,采用符合应用场景的分词方法对待处理文本进行分词处理,并将待处理文本转化为与应用场景对应的词嵌入,因此,转化得到的词嵌入更为准确,更能满足实际需求。
图3为本申请的一个实施例文本分类方法的流程示意图,所述文本分类方法如下所述。
S302:获取待分类文本。
在S302中,在对文本进行分类时,可以获取待分类文本。其中,所述待分类文本可以是中文文本。
本申请实施例中,所述待分类文本可以对应一种应用场景,所述应用场景具体可以是风险识别场景、风险防控场景,也可以是文字识别场景、文字翻译场景等,在不同的应用场景下,文本类型的种类可以不同。
S304:根据所述待分类文本的应用场景以及预先确定的词嵌入库,将所述待分类文本转化为词嵌入。
所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入,具体可以通过图1所示实施例中记载的内容确定得到。
在将待分类文本转化为词嵌入时,首先,可以采用与待分类文本的应用场景对应的分词方法对待分类文本进行分词处理,得到多个分词,其中,应用场景与分词方法之间的对应关系可以预先规定,一种应用场景(或类似的多个应用场景)对应一种分词方法。
其次,针对每个分词,可以根据该分词以及待分类文本的应用场景,从所述词嵌入库中查找与该分词以及应用场景对应的词嵌入,最终可以得到多个分词对应的多个词嵌入。
最后,将查找到的多个词嵌入作为到分类文本的词嵌入。
本申请实施例中,由于词嵌入库中包含与不同应用场景下的不同分词对应的词嵌入,因此,待分类文本基于该词嵌入库转化得到的词嵌入更为准确,更能满足实际的转化需求。
S306:获取预先训练得到的分类模型。
所述分类模型基于神经网络对不同样本文本的词嵌入以及所述不同样本文本的标签训练得到,具体可以通过以下方式训练得到:
获取不同的样本文本以及所述不同的样本文本各自的标签;
根据所述不同的样本文本对应的应用场景以及所述词嵌入库,将所述不同的样本文本转化为词嵌入;
构建神经网络模型;
根据所述不同的样本文本对应的词嵌入、所述不同的样本文本各自的标签以及所述神经网络模型,训练得到所述分类模型。
所述不同的样本文本可以对应一种应用场景,该应用场景与S302中的待分类文本对应的应用场景相同。不同样本文本的标签可以表征不同样本文本的类型。
在获取到不同的样本文本后,可以基于不同样本文本对应的应用场景以及S304中记载的词嵌入库,将不同的样本文本转化为词嵌入,具体实现方式可以参见S304中将待分类文本转化为词嵌入的内容,这里不再重复说明。
在将不同的样本文本转化为词嵌入后,可以构建神经网络模型,所述神经网络模型可以是现有的任一种神经网络模型,例如卷积神经网络模型,循环神经网络模型等,这里不做具体限定。所述神经网络模型可以包含一种输出结果,也可以包含多种输出结果,这里也不做具体限定。
在构建神经网络模型后,可以将不同样本文本对应的词嵌入作为神经网络模型的输入,不同样本文本的标签作为神经网模型的输出,对神经网络模型进行训练,得到所述分类模型。
在训练得到分类模型后,在对待分类文本进行分类时,可以获取该分类模型。
S308:根据所述待分类文本转化的词嵌入以及所述分类模型,确定所述待分类文本的类型。
在S308中,可以将所述待分类文本的词嵌入作为所述分类模型的输入,根据分类模型的输出,可以确定得到待分类文本的类型。
在本申请的一个实施例中,所述分类模型可以包含一个输出结果,该输出结果可以表征文本的类型,这样,在根据待分类文本的词嵌入以及分类模型,得到分类模型的输出结果后,可以将该输出结果对应的类型作为待分类文本的类型。
在本申请的另一个实施例中,所述分类模型可以包含多个输出结果,一个输出结果可以表征文本属于某种类型的概率,这样,在根据待分类文本的词嵌入以及分类模型,得到分类模型的多个输出结果后,可以比较多个输出结果中具有最大概率值的输出结果,并将该具有最大概率值的输出结果对应的类型确定为待分类文本的类型。
例如,在风险识别的应用场景中,分类模型的多个输出结果分别为:欺诈0.8,刷单0.15,正常0.05,那么,通过比较各个输出结果的值,可以确定待分类文本的类型属于“欺诈”类型。
本申请实施例提供的文本分类方法,在训练分类模型时,由于模型训练使用的样本文本的词嵌入是基于词嵌入库确定得到,词嵌入库中存储有不同应用场景下不同分词的词嵌入,因此,样本文本的词嵌入能够满足将样本文本转化为词嵌入的实际需求,由此训练得到的分类模型的分类效果更佳;此外,在根据待分类文本的词嵌入和分类模型确定待分类文本的类型时,由于待分类文本的词嵌入也是基于相同的词嵌入库得到,更加符合实际的应用场景,因此,可以提高分类结果的准确度。
上述对本申请特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
图4是本申请的一个实施例电子设备的结构示意图。请参考图4,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图4中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成将文本转化为词嵌入的装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
获取待处理文本;
根据所述待处理文本对应的应用场景,采用与所述应用场景对应的分词方法对所述待处理文本进行分词处理,得到多个分词;
从预先确定的词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;
将查找到的多个词嵌入作为所述待处理文本对应的词嵌入。
上述如本申请图4所示实施例揭示的将文本转化为词嵌入的装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central ProcessingUnit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图1的方法,并实现将文本转化为词嵌入的装置在图1所示实施例中的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图1所示实施例的方法,并具体用于执行以下操作:
获取待处理文本;
根据所述待处理文本对应的应用场景,采用与所述应用场景对应的分词方法对所述待处理文本进行分词处理,得到多个分词;
从预先确定的词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;
将查找到的多个词嵌入作为所述待处理文本对应的词嵌入。
图5是本申请的一个实施例将文本转化为词嵌入的装置50的结构示意图。请参考图5,在一种软件实施方式中,所述将文本转化为词嵌入的装置50可包括:获取单元51、分词单元52、处理单元53和确定单元54,其中:
获取单元51,获取待处理文本;
分词单元52,根据所述待处理文本对应的应用场景,采用与所述应用场景对应的分词方法对所述待处理文本进行分词处理,得到多个分词;
处理单元53,从预先确定的词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;
确定单元54,将查找到的多个词嵌入作为所述待处理文本对应的词嵌入。
可选地,所述处理单元53,通过以下方式确定得到所述词嵌入库:
针对其中一种第一应用场景,执行以下操作:
获取与所述第一应用场景对应的样本文本;
采用与所述第一应用场景对应的分词方法对所述样本文本进行分词处理,得到多个第一分词;
采用不同的词嵌入算法将所述多个第一分词转化为词嵌入,得到多个词嵌入结果;
将所述多个词嵌入结果进行比较,选择其中一个词嵌入结果;
将选择的词嵌入结果中包含的多个目标词嵌入、所述第一应用场景以及所述多个第一分词对应存储至所述词嵌入库中。
可选地,所述处理单元53,将所述多个词嵌入结果进行比较,选择其中一个词嵌入结果,包括:
将所述多个词嵌入结果分别输入到分类器中进行训练;
在训练结束后,确定所述多个词嵌入结果各自对应的训练指标;
将所述多个词嵌入结果各自对应的训练指标进行比较,选择具有最大训练指标的词嵌入结果。
可选地,所述处理单元53,将选择的词嵌入结果中包含的多个目标词嵌入、所述第一应用场景以及所述多个第一分词对应存储至所述词嵌入库中,包括:
针对其中一个第一分词,执行以下操作:
判断所述词嵌入库中是否包含与所述第一应用场景以及所述第一分词对应的历史词嵌入;
若否,则将所述第一分词对应的目标词嵌入、所述第一应用场景以及所述多个第一分词对应存储至所述词嵌入库中。
可选地,所述处理单元53在所述词嵌入库中包含与所述第一应用场景以及所述第一分词对应的历史词嵌入时,将所述目标词嵌入与所述历史词嵌入进行比较;
根据比较结果,对所述目标词嵌入进行处理。
可选地,所述处理单元53,将所述目标词嵌入与所述历史词嵌入进行比较,包括:
将所述目标词嵌入和所述历史词嵌入分别输入到分类器中进行训练;
在训练结束后,将所述目标词嵌入对应的训练指标和所述历史词嵌入对应的训练指标进行比较;
其中,所述处理单元53,根据比较结果,对所述目标词嵌入进行处理,包括:
若所述目标词嵌入对应的训练指标大于所述历史词嵌入对应的训练指标,则将所述目标词嵌入替换所述历史词嵌入存储至所述词嵌入库中;
若所述目标词嵌入对应的训练指标不大于所述历史词嵌入对应的训练指标,则将所述目标词嵌入与所述历史词嵌入拼接。
本申请实施例提供的将文本转化为词嵌入的装置50还可执行图1的方法,并实现将文本转化为词嵌入的装置50在图1所示实施例的功能,本申请实施例在此不再赘述。
图6是本申请的一个实施例电子设备的结构示意图。请参考图6,在硬件层面,该电子设备包括处理器,可选地还包括内部总线、网络接口、存储器。其中,存储器可能包含内存,例如高速随机存取存储器(Random-Access Memory,RAM),也可能还包括非易失性存储器(non-volatile memory),例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
处理器、网络接口和存储器可以通过内部总线相互连接,该内部总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图6中仅用一个双向箭头表示,但并不表示仅有一根总线或一种类型的总线。
存储器,用于存放程序。具体地,程序可以包括程序代码,所述程序代码包括计算机操作指令。存储器可以包括内存和非易失性存储器,并向处理器提供指令和数据。
处理器从非易失性存储器中读取对应的计算机程序到内存中然后运行,在逻辑层面上形成文本分类装置。处理器,执行存储器所存放的程序,并具体用于执行以下操作:
获取待分类文本;
根据所述待分类文本的应用场景以及预先确定的词嵌入库,将所述待分类文本转化为词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;
获取预先训练得到的分类模型,所述分类模型基于神经网络对不同样本文本的词嵌入以及所述不同样本文本的标签训练得到,所述不同样本文本的词嵌入基于所述词嵌入库确定得到;
根据所述待分类文本转化的词嵌入以及所述分类模型,确定所述待分类文本的类型。
上述如本申请图6所示实施例揭示的文本分类装置执行的方法可以应用于处理器中,或者由处理器实现。处理器可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
该电子设备还可执行图3的方法,并实现文本分类装置在图3所示实施例中的功能,本申请实施例在此不再赘述。
当然,除了软件实现方式之外,本申请的电子设备并不排除其他实现方式,比如逻辑器件抑或软硬件结合的方式等等,也就是说以下处理流程的执行主体并不限定于各个逻辑单元,也可以是硬件或逻辑器件。
本申请实施例还提出了一种计算机可读存储介质,该计算机可读存储介质存储一个或多个程序,该一个或多个程序包括指令,该指令当被包括多个应用程序的便携式电子设备执行时,能够使该便携式电子设备执行图3所示实施例的方法,并具体用于执行以下操作:
获取待分类文本;
根据所述待分类文本的应用场景以及预先确定的词嵌入库,将所述待分类文本转化为词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;
获取预先训练得到的分类模型,所述分类模型基于神经网络对不同样本文本的词嵌入以及所述不同样本文本的标签训练得到,所述不同样本文本的词嵌入基于所述词嵌入库确定得到;
根据所述待分类文本转化的词嵌入以及所述分类模型,确定所述待分类文本的类型。
图7是本申请的一个实施例文本分类装置70的结构示意图。请参考图7,在一种软件实施方式中,所述文本分类装置70可包括:第一获取单元71、处理单元72、第二获取单元73和分类单元74,其中:
第一获取单元71,获取待分类文本;
处理单元72,根据所述待分类文本的应用场景以及预先确定的词嵌入库,将所述待分类文本转化为词嵌入,所述词嵌入库中存储有与不同应用场景下的不同分词对应的词嵌入;
第二获取单元73,获取预先训练得到的分类模型,所述分类模型基于神经网络对不同样本文本的词嵌入以及所述不同样本文本的标签训练得到,所述不同样本文本的词嵌入基于所述词嵌入库确定得到;
分类单元74,根据所述待分类文本转化的词嵌入以及所述分类模型,确定所述待分类文本的类型。
可选地,所述获取单元73,通过以下方式训练得到所述分类模型:
获取不同的样本文本以及所述不同的样本文本各自的标签;
根据所述不同的样本文本对应的应用场景以及所述词嵌入库,将所述不同的样本文本转化为词嵌入;
构建神经网络模型;
根据所述不同的样本文本对应的词嵌入、所述不同的样本文本各自的标签以及所述神经网络模型,训练得到所述分类模型。
可选地,所述处理单元72,根据所述待分类文本的应用场景以及预先确定的词嵌入库,将所述待分类文本转化为词嵌入,包括:
采用与所述待分类文本的应用场景对应的分词方法对所述待分类文本进行分词处理,得到多个分词;
根据所述待分类文本的应用场景和所述多个分词,从所述词嵌入库中查找与所述应用场景以及所述多个分词对应的词嵌入;
将查找到的多个词嵌入作为所述待分类文本的词嵌入。
可选地,所述分类模型包含一个输出结果,所述输出结果用于表征文本的类型;
其中,所述分类单元74,根据所述待分类文本转化的词嵌入以及所述分类模型,确定所述待分类文本的类型,包括:
将所述分类模型的输出结果对应的类型确定为所述待分类文本的类型。
可选地,所述分类模型包含多个输出结果,一个输出结果用于表征文本属于某种类型的概率;
其中,所述分类单元74,根据所述待分类文本转化的词嵌入以及所述分类模型,确定所述待分类文本的类型,包括:
确定所述分类模型的多个输出结果中具有最大概率值的输出结果;
将具有最大概率值的输出结果对应的类型确定为所述待分类文本的类型。
本申请实施例提供的文本分类装置70还可执行图3的方法,并实现文本分类装置70在图3所示实施例的功能,本申请实施例在此不再赘述。
总之,以上所述仅为本申请的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本申请中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。