一种语种识别方法及装置

文档序号:1875855 发布日期:2021-11-23 浏览:30次 >En<

阅读说明:本技术 一种语种识别方法及装置 (Language identification method and device ) 是由 竺晨曦 于 2020-05-19 设计创作,主要内容包括:本申请提供了一种语种识别方法及装置。在本申请中,是根据待识别文本中的各个字符的编码获取各个字符的语言标签特征,然后将各个字符的语言标签特征输入语种识别模型中,以使语种识别模型基于各个字符的语言标签特征识别待识别文本的语种。如此,对于语种识别模型而言,其接收到输入数据中,包括有更多的与待识别文本中的各个字符的语种相关信息,以使语种识别模型可以基于更多的数据来识别待识别文本的语种,由于语种识别模型在识别待识别文本时使用了待识别文本中的各个字符的语种相关信息,因此,可以提高识别出的待识别文本的语种的准确率,进而可以降低出现误召回的情况的可能性,从而避免降低用户体验。(The application provides a language identification method and device. In the application, the language tag characteristics of each character are obtained according to the code of each character in the text to be recognized, and then the language tag characteristics of each character are input into the language recognition model, so that the language recognition model recognizes the language of the text to be recognized based on the language tag characteristics of each character. Therefore, for the language identification model, the language identification model receives the input data and comprises more language related information of each character in the text to be identified, so that the language identification model can identify the language of the text to be identified based on more data, and the language identification model uses the language related information of each character in the text to be identified when identifying the text to be identified, so that the accuracy of the identified language of the text to be identified can be improved, the possibility of the situation of mistaken recall can be reduced, and the reduction of user experience is avoided.)

一种语种识别方法及装置

技术领域

本申请涉及互联网领域,特别是涉及一种语种识别方法及装置。

背景技术

互联网的发展使得信息变得丰富且繁多,用户可以通过搜索技术在网络上查询自己需要获取的信息。对于网络上的服务端而言,其可以根据用户输入的搜索文本执行搜索作业,以向用户提供搜索结果。

但是,一些搜索文本可能涉及到违法等情况,例如、搜索文本包括“枪支”、“管制刀具”以及“干扰器”等违法的关键词等,为了净化网络环境,需要对此进行限制,例如,在用户输入的搜索文本包括这些关键词时,可以拒绝为用户提供搜索结果。

然而,有些文本在不同的语种中均有使用,且在不同的语种中的含义不同,例如,对于单词“jammer”而言,其在英语中的含义是“干扰器”,其在荷兰语中的含义是“可惜”。

假设服务端对“干扰器”需要限制,对“可惜”不需要限制,则如果用户是在荷兰语的语境中输入的搜索文本,而服务端如果以英文语境对其进行语义识别,则服务端会将搜索文本中的“jammer”的含义确定为“干扰器”,然后拒绝为用户提供搜索结果。

这样,就出现了本应该为用户提供搜索结果但是实际上却拒绝为用户提供搜索结果的误召回的情况,会降低用户体验。

发明内容

为了提高用户体验,本申请示出了一种语种识别方法及装置。

第一方面,本申请示出了一种语种识别方法,应用于电子设备,所述方法包括:

获取待识别文本;

获取所述待识别文本中的各个字符的编码;

根据所述编码获取所述待识别文本中的各个字符的语言标签特征;

根据各个字符的语言标签特征以及基于深度网络的语种识别模型确定所述待识别文本的语种。

在一个可选的实现方式中,所述根据所述编码获取所述待识别文本中的各个字符的语言标签特征,包括:

对于所述待识别文本中的每一个字符,根据所述字符的编码确定所述字符属于一个语种或同时属于多个语种;

在所述字符属于一个语种的情况下,根据所述语种获取所述字符的语言标签特征;

在所述字符同时属于至少两个语种的情况下,在所述待识别文本中确定所述字符的相邻字符,根据所述字符与所述相邻字符生成所述字符的语言标签特征;

在一个可选的实现方式中,所述根据所述字符的编码确定所述字符属于一个语种或同时属于多个语种,包括:

获取所述字符的编码所在的编码段;

在编码段与语种之间的对应关系中,查找与所述编码段相对应的语种;

在与所述编码段相对应的语种为一个的情况下,确定所述字符属于一个语种;

在与所述编码段相对应的语种为至少两个的情况下,确定所述字符同时属于多个语种。

在一个可选的实现方式中,所述根据所述编码获取所述待识别文本中的各个字符的语言标签特征,包括:

在所述字符为单词的情况下,在所述单词中,分别将连续的预设数量个字母组成字母集合;

根据所述单词以及所述字母集合生成所述字符的语言标签特征。

在一个可选的实现方式中,所述获取待识别文本,包括:

获取原始文本;

去除所述原始文本中的非语言字符,得到所述待识别文本。

在一个可选的实现方式中,所述方法还包括:

获取样本数据集,所述样本数据集中至少一个样本文本中的各个样本字符的样本语言标签特征;

获取样本数据集中的每一个样本文本的标注语种;

基于所述样本数据集和所述标注语种对深度网络模型训练,直至所述深度网络模型中的参数收敛,从而得到所述基于深度网络的语种识别模型。

在一个可选的实现方式中,所述获取样本数据集,包括:

获取多个第一样本文本,每一个样本文本分别包括一个语种的字符;

根据包括不同语种的字符的至少两个第一样本文本生成第二样本文本;

根据所述多个第一样本文本与生成的第二样本文本生成所述样本数据集。

第二方面,本申请示出了一种语种识别装置,应用于电子设备,所述装置包括:

第一获取模块,用于获取待识别文本;

第二获取模块,用于获取所述待识别文本中的各个字符的编码;

第三获取模块,用于根据所述编码获取所述待识别文本中的各个字符的语言标签特征;

确定模块,用于根据各个字符的语言标签特征以及基于深度网络的语种识别模型确定所述待识别文本的语种。

在一个可选的实现方式中,所述第三获取模块包括:

第一确定单元,用于对于所述待识别文本中的每一个字符,根据所述字符的编码确定所述字符属于一个语种或同时属于多个语种;

第一获取单元,用于在所述字符属于一个语种的情况下,根据所述语种获取所述字符的语言标签特征;

第二确定单元,用于在所述字符同时属于至少两个语种的情况下,在所述待识别文本中确定所述字符的相邻字符,第一生成单元,用于根据所述字符与所述相邻字符生成所述字符的语言标签特征;

在一个可选的实现方式中,所述第一确定单元包括:

获取子单元,用于获取所述字符的编码所在的编码段;

查找子单元,用于在编码段与语种之间的对应关系中,查找与所述编码段相对应的语种;

第一确定子单元,用于在与所述编码段相对应的语种为一个的情况下,确定所述字符属于一个语种;

第二确定子单元,用于在与所述编码段相对应的语种为至少两个的情况下,确定所述字符同时属于多个语种。

在一个可选的实现方式中,所第三获取模块包括:

组成单元,用于在所述字符为单词的情况下,在所述单词中,分别将连续的预设数量个字母组成字母集合;

第二生成单元,用于根据所述单词以及所述字母集合生成所述字符的语言标签特征。

在一个可选的实现方式中,所述第一获取模块包括:

第二获取单元,用于获取原始文本;

去除单元,用于去除所述原始文本中的非语言字符,得到所述待识别文本。

在一个可选的实现方式中,所述装置还包括:

第四获取模块,用于获取样本数据集,所述样本数据集中至少一个样本文本中的各个样本字符的样本语言标签特征;

第五获取模块,用于获取样本数据集中的每一个样本文本的标注语种;

训练模块,用于基于所述样本数据集和所述标注语种对深度网络模型训练,直至所述深度网络模型中的参数收敛,从而得到所述基于深度网络的语种识别模型。

在一个可选的实现方式中,所述第四获取模块包括:

第三获取单元,用于获取多个第一样本文本,每一个样本文本分别包括一个语种的字符;

第三生成单元,用于根据包括不同语种的字符的至少两个第一样本文本生成第二样本文本;

第四生成单元,用于根据所述多个第一样本文本与生成的第二样本文本生成所述样本数据集。

第三方面,本申请示出了一种电子设备,所述电子设备包括:

处理器;和

存储器,其上存储有可执行代码,当所述可执行代码被执行时,使得所述处理器执行如第一方面所述的语种识别方法。

第四方面,本申请示出了一个或多个机器可读介质,其上存储有可执行代码,当所述可执行代码被执行时,使得处理器执行如第一方面所述的语种识别方法。

与现有技术相比,本申请实施例包括以下优点:

在一个方式中,是将待识别文本中的各个字符直接输入至语种识别模型中,语种识别模型根据对待识别文本处理,输出待识别文本的语种。

然而,在本申请中,是根据待识别文本中的各个字符的编码获取各个字符的语言标签特征,然后将各个字符的语言标签特征输入语种识别模型中,以使语种识别模型基于各个字符的语言标签特征识别待识别文本的语种。

其中,各个字符的语言标签特征至少可以直接或间接地体现出各个字符可能属于哪些语种,任意一个字符的语言标签特征可以包括:该字符、该字符属于的语种以及待识别文本中的该字符的相邻字符等,以及,在该字符为由多个字母组成的单词的情况下,语言标签特征还可以包括:单词中的连续的预设数量个字母组成字母集合等。

如此,对于语种识别模型而言,其接收到输入数据中,包括有更多的与待识别文本中的各个字符的语种相关信息,以使语种识别模型可以基于更多的数据来识别待识别文本的语种,由于语种识别模型在识别待识别文本时使用了待识别文本中的各个字符的语种相关信息,因此,可以提高识别出的待识别文本的语种的准确率,进而可以降低出现误召回的情况的可能性,从而避免降低用户体验。

另外,本申请中的语种识别模型是基于深度网络的模型训练得到的,如此可以提高语种识别模型的泛化程度,例如,在语种识别模型上线之后,即使待识别文本并未在训练语种识别模型的过程中使用的样本文本中出现过,但是,语种识别模型对待识别文本的语种进行的识别准确度也大于基于浅层网络的模型的识别准确度。

附图说明

图1是本申请一示例性实施例示出的一种语种识别方法的流程示意图。

图2是本申请一示例性实施例示出的一种获取语言标签特征的方法的流程示意图。

图3是本申请一示例性实施例示出的一种获取语言标签特征的方法的流程示意图。

图4是本申请一示例性实施例示出的一种训练语种识别模型的方法的流程示意图。

图5是本申请一示例性实施例示出的一种语种识别装置的结构框图。

图6是本申请一实施例提供的装置的结构示意图。

具体实施方式

为使本申请的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本申请作进一步详细的说明。

参照图1,示出了本申请一种语种识别方法的流程示意图,该方法应用于电子设备中,该方法可以包括:

在步骤S101中,获取待识别文本;

在本申请中,待识别文本可以包括用户输入的文本,例如,用户在搜索框中输入的文本等,电子设备可以获取用户输入的文本,并作为待识别文本。

或者,待识别文本也可以包括从音频、视频或图像中识别出来的文本。

在一个例子中,视频中有人在说话,则可以对视频中的人说出的语音基于voice-to-text(语音文本转换)技术进行语义识别,得到语音表达的文本,并作为待识别文本。

在另一个例子中,在两个以上的人进行语音通话的过程中,可以对通话过程中人说出的通话语音基于voice-to-text(语音文本转换)技术进行语义识别,得到通话语音表达的文本,并作为待识别文本。

在又一个例子中,图像中包括文本,可以基于OCR(Optical CharacterRecognition,文本识别)技术识别出图像中包括的文本,并作为待识别文本。

当然,在本申请中,还可以通过其他方式来获取待识别文本,本申请对具体的获取方式不做限定。

在步骤S102中,获取待识别文本中的各个字符的编码;

在本申请中,待识别文本中可以包括一个字符,也可以包括至少两个字符。在本申请中,一个字符需要表示具体含义,例如,对于英语以及法语等拉丁预习的语言,单个字母通常不表示具体含义,而由至少两个字母组成的单词通常表示具体含义,因此,这些语言中,一个字符可以不包括单个字母,而可以包括单词。

对于汉语、汉语以及日语等而言,单个字往往可以表示具体含义,因此,这些语言中,单个字可以为一个字符。

在本申请中,针对任意一个语种而言,对于该语种中的任意一个字符,事先可以设置该字符的编码,然后将该字符与该字符的编码组成对应表项,并存储在字符与编码之间的对应关系中。对于该语种中的其他每一个字符,同样如此。针对其他每一个语种而言,也同样如此。

因此,在本申请中,对于待识别文本中的任意一个字符,可以在字符与编码之间的对应关系中,查找与该字符相对应的编码,对于待识别文本中的其他每一个字符,同样执行上述操作,从而实现获取待识别文本中的各个字符的编码。

在步骤S103中,根据各个字符的编码获取待识别文本中的各个字符的语言标签特征;

对于任意一个字符,该字符的语言标签特征可以包括:该字符、该字符属于的语种以及待识别文本中的该字符的相邻字符等,以及。在该字符为由多个字母组成的单词的情况下,还可以包括:单词中的连续的预设数量个字母组成字母集合等,具体可以参见图2以及图3所示的实施例,在此不做详述。该字符的语言标签特征至少可以直接或间接地体现出该字符可能属于哪些语种。对于其他每一个字符,同样如此。

在步骤S104中,根据各个字符的语言标签特征以及基于深度网络的语种识别模型确定待识别文本的语种。

其中,可以将各个字符的语言标签特征输入基于深度网络的语种识别模型中,得到基于深度网络的语种识别模型输出的待识别文本的语种。

在本申请一个实施例中,语种识别模型确定出待识别文本的最有可能的语种,将该最有可能的语种作为待识别文本的语种并输出,例如,输出待识别文本的语种为汉语、英语或者日语等。

在本申请另一个实施例中,语种识别模型输出的是待识别文本分别属于每一个语种的概率,例如,待识别文本属于汉语的概率为82%、属于英语的概率为15%,以及属于日语的概率为1%等等。

在确定出待识别文本的语种之后,可以结合待识别文本的语种处理待识别文本,例如,根据待识别文本的语种确定是否可以对待识别文本执行搜索作业,在可以对待识别文本执行搜索作业的情况下,再对待识别文本执行搜索作业,并向用户返回搜索结果。

在一个方式中,是将待识别文本中的各个字符直接输入至语种识别模型中,语种识别模型根据对待识别文本处理,输出待识别文本的语种。

然而,在本申请中,是根据待识别文本中的各个字符的编码获取各个字符的语言标签特征,然后将各个字符的语言标签特征输入语种识别模型中,以使语种识别模型基于各个字符的语言标签特征识别待识别文本的语种。

其中,各个字符的语言标签特征至少可以直接或间接地体现出各个字符可能属于哪些语种,任意一个字符的语言标签特征可以包括:该字符、该字符属于的语种以及待识别文本中的该字符的相邻字符等,以及,在该字符为由多个字母组成的单词的情况下,语言标签特征还可以包括:单词中的连续的预设数量个字母组成字母集合等。

如此,对于语种识别模型而言,其接收到输入数据中,包括有更多的与待识别文本中的各个字符的语种相关信息,以使语种识别模型可以基于更多的数据来识别待识别文本的语种,由于语种识别模型在识别待识别文本时使用了待识别文本中的各个字符的语种相关信息,因此,可以提高识别出的待识别文本的语种的准确率,进而可以降低出现误召回的情况的可能性,从而避免降低用户体验。

另外,本申请中的语种识别模型是基于深度网络的模型训练得到的,如此可以提高语种识别模型的泛化程度,例如,在语种识别模型上线之后,即使待识别文本并未在训练语种识别模型的过程中使用的样本文本中出现过,但是,语种识别模型对待识别文本的语种进行的识别准确度也大于基于浅层网络的模型的识别准确度。

在本申请另一实施例中,参见图2,步骤S102包括:

在步骤S201中,对于待识别文本中的每一个字符,根据该字符的编码确定该字符属于一个语种或同时属于多个语种;

对于任意一个字符,该字符可能仅在多个语种中的一个语种中应用,例如,成语“魑魅魍魉”中的四个字符“魑”、“魅”、“魍”以及“魉”仅在汉语中应用,则字符“魑”、“魅”、“魍”以及“魉”分别属于汉语一个语种。而字符“所”、“便”以及“日”等在汉语以及日语等至少两个语种中均应用,则字符“所”、“便”以及“日”分别属于两个语种。

事先可以将对字符编码的所有可用的编码划分为多个编码段,对于任意一个编码段,该编码段可以对应一个语种,也可以同时对应至少两个语种,事先可以将该编码段与该编码段对应的语种组成对应表项,并存储在编码段与语种之间的对应关系中。对于其他每一个编码段,同样如此。

如此,在本步骤中,可以获取该字符的编码所在的编码段;在编码段与语种之间的对应关系中,查找与该编码段相对应的语种;在与编码段相对应的语种为一个的情况下,确定字符属于一个语种;在与编码段相对应的语种为至少两个的情况下,确定字符同时属于多个语种。

对于任意一个字符,在对该字符编码时,如果该字符仅在一个语种中应用,则可以在编码段与语种之间的对应关系中查找与该一个语种相对应的编码段,然后在该编码段中选择一个编码,作为该字符的编码,如果该字符在至少两个语种中均应用,则可以在编码段与语种之间的对应关系中查找与该至少两个语种相对应的编码段,然后在该编码段中选择一个编码,作为该字符的编码。对于其他每一个字符,同样按照上述方式其编码。

在该字符属于一个语种的情况下,在步骤S202中,根据该语种获取该字符的语言标签特征;

在本申请中,可以将该语种作为该字符的语言标签特征。

在该字符同时属于至少两个语种的情况下,在步骤S203中,在待识别文本中确定该字符的相邻字符;

在本申请中,在该字符同时属于至少两个语种的情况下,基于该字符往往无法直接确定出该字符具体属于哪个语种,这就无法给语种识别模型提供准确的输入数据,进而影响语种识别模型识别出的待识别文本的语种的准确性。

因此,为了避免这种情况发生,在本申请另一实施例中,需要确定出该字符属于哪一个语种,为了能够确定出该字符属于哪一个语种,可以在待识别文本中确定该字符的相邻字符,例如,可以基于N-gram在待识别文本中确定该字符的相邻字符。

在一个例子中,可以将位于该字符之后、且与该字符相邻的一个字符确定为相邻字符。或者,可以将位于该字符之后、且与该字符距离最近的至少两个字符确定为相邻字符。或者,可以将位于该字符之前、且与该字符相邻的一个字符确定为相邻字符。或者,可以将位于该字符之前、且与该字符距离最近的至少两个字符确定为相邻字符等。或者,可以将位于该字符之前、且与该字符相邻的一个字符,以及,位于该字符之后、且与该字符相邻的一个字符确定为相邻字符。或者,将位于该字符之后、且与该字符距离最近的至少两个字符,以及,位于该字符之后、且与该字符距离最近的至少两个字符确定为相邻字符。

例如,在一个例子中,用户需要搜索“柔软的牙刷”,用户在搜索框中基于日语的语境中输入搜索文本“柔らかい歯ブラシ”。电子设备获取用户输入的搜索文本“柔らかい歯ブラシ”,并作为待识别文本。

其中,待识别文本中的字符“ら”“か”“い”“ブ”“ラ”以及“シ”,属于日语一个语种。

而待识别文本中的字符“柔”同时属于日语以及汉语两个语种,且待识别文本中的字符“歯”同时属于日语以及汉语两个语种。

对于字符“柔”而言,在待识别文本“柔らかい歯ブラシ”中,字符“柔”是第一个字符,所以可以在字符“柔”之后的字符中确定字符“柔”的相邻字符,例如,字符“柔”的相邻字符可以包括“ら”、“らか”或“らかい”等。对于字符“歯”而言,同样如此,在此不做详述。

在步骤S204中,根据该字符与相邻字符生成该字符的语言标签特征。

在本申请中,可以将该字符与该相邻字符组合,得到该字符的语言标签特征。

在本申请中,用户通常是在一个语种的语境下输入的待识别文本,在一个文本中的某一个字符同时属于多个语种的情况下,虽然事实上该某一个字符同时属于多个语种,但是用户主观上是在一个语种的语境下输入的该某一个字符,此时虽然电子设备仅仅根据该某一个字符无法确定出该某一个字符属于哪一个语种,但是该文本中的该某一个字符的相邻字符如果属于某一个语种,则通常情况下,该某一个字符也属于该字符的相邻字符属于的该语种。

例如,在上述例子中,电子设备根据字符“柔”是无法准确确定出字符“柔”属于哪一个语种。

但是,待识别文本“柔らかい歯ブラシ”中的字符“柔”的相邻字符“ら”、“らか”或“らかい”属于日语,因此,之后语种识别模型还可以相邻字符“ら”、“らか”或“らかい”等来确定字符“柔”属于的语种大概率是日语,进而提高确定待识别文本的语种是日语的可能性,从而可以提高确定待识别文本的语种的准确性。

本申请实施例可以提高确定出同时属于多个语种的字符在待识别文本中属于的语种的可能性以及准确性,从而可以给语种识别模型提供准确的输入数据,进而可以提高语种识别模型识别出的待识别文本的语种的准确性。

在本申请另一实施例中,参见图3,步骤S02包括:

在步骤S301中,在该字符为单词的情况下,在该单词中,分别将连续的预设数量个字母组成字母集合;

在本申请中,在英语、法语以及德语等拉丁语系中,单词中包括多个字母。

有时候用户在搜索框中输入单词时,可能会无意或故意地将单词拼写错误。

在一个例子中,单词“volunteer”的中文释义为“志愿者”,且假设单词“volunteer”仅在英语中使用,而不再其他语言中使用。

例如,用户本来想要在搜索框中输入英文的单词“volunteer”,但是用户误将其拼写为“volunterr”,假设英文中并不存在“volunterr”这个单词。

这样,电子设备根据单词“volunterr”也就无法确定出单词“volunterr”属于的语种,例如,不会将单词“volunterr”的语种确定为英文,或者,将“volunterr”的语种误确定为非英文的其他语种等,这就无法给语种识别模型提供准确的输入数据,进而影响语种识别模型识别出的待识别文本的语种的准确性。

因此,为了避免这种情况发生,在本申请另一实施例中,在单词“volunterr”中,可以将不同的连续的预设数量个字母组成字母集合,例如,将连续的4个字母“volu”组成字母集合,将连续的4个字母“olun”组成字母集合,将连续的4个字母“lunt”组成字母集合,将连续的4个字母“unte”组成字母集合,将连续的4个字母“nter”组成字母集合,将连续的4个字母“terr”组成字母集合。

预设数量可以根据实际情况确定,预设数量大于1且可以小于单词包括的字母的数量等。

在步骤S302中,根据该单词以及该字母集合生成该字符的语言标签特征。

在本申请中,可以将该单词与该字母集合组合,得到该字符的语言标签特征。

其中,在该单词拼写错误的情况下,虽然有时候无法确定出该单词属于哪个语种。或者,有时候可能确定出的该单词属于的语种是错误的,例如,用户想要输入英语的单词,但是将某个字母拼错了,英语中不存在该拼错的单词,然而,该拼错的单词存在于法语中,因此,电子设备可能会确定该单词的语种是法语,但是这与用户实际想要输入的单词属于的语种不同,导致确定的该单词的语种是错误的情况发生。

但是,在本实施例中,在该单词中,分别将不同的连续的预设数量个字母组成字母集合;任意一个字母集合包括该单词中的至少两个连续的字母,虽然有时候根据该单词无法准确确定出该单词属于的语种,但是至少一个字母集合中的至少两个连续的字母是属于至少一个语种的。

例如,在上述例子中,电子设备根据单词“volunterr”是无法准确确定出单词“volunterr”属于哪个语种。

但是,由于单词“volunteer”应用在英语中,所以,字母集合“volu”、“olun”、“lunt”以及“unte”等也应用在英语中,因此,语种识别模型还可以借助字母集合“volu”、“olun”、“lunt”以及“unte”等来确定“volunterr”属于的语种大概率是英语,进而提高确定待识别文本的语种是英语的可能性,从而可以提高确定待识别文本的语种的准确性。

本申请实施例可以提高确定出作为单词的字符属于的语种的可能性以及准确性,从而可以给语种识别模型提供准确的输入数据,进而可以提高语种识别模型识别出的待识别文本的语种的准确性。

在本申请实施例中,该单词是拼写错误的单词。如此,在基于语种识别模型确定出待识别文本所在的语种之后,可以结合该单词、待识别文本中的上下文以及纠错算法,在确定出的语种的情境下对该拼写错误的该单词进行纠错,例如在英文的情境下对“volunterr”进行纠错,例如,将其纠正为“volunteer”,然后使用“volunteer”替换待识别文本中的“volunterr”,之后根据替换后的待识别文本执行搜索作业,并向用户返回搜索结果。其中,本申请对具体的纠错算法不做限定。

在本申请中,为了使得在步骤S104中可以根据各个字符的语言标签特征以及基于深度网络的语种识别模型确定待识别文本的语种,事先可以训练语种识别模型,其中,参见图4,训练方法包括:

在步骤S401中,获取样本数据集,样本数据集中包括至少一个样本文本中的各个样本字符的样本语言标签特征;

其中,样本文本可以是技术人员从网络上的广大的文本中筛选出的,对于任意一个样本文本而言,该样本文本中的字符可以均为一个语种的字符。

其中,样本文本中的各个样本字符的样本语言标签特征的获取方式可以参见图2以及图3所示的实施例,在此不做详述。

在步骤S402中,获取样本数据集中的每一个样本文本的标注语种;

在本申请中,标注语种可以是技术人员人工为每一个样本文本标注的,当然,也可以通过其他方式来获取样本文本的标注语种,例如,样本文本是从英语的电子杂志上获取到的,英语的电子杂志上的文本通常是由英语单词组成的,因此,可以将从英语的电子杂志上获取到的样本文本的标注语种自动确定为英语等。本申请对获取样本文本的标注语种不做限定。

在步骤S403中,基于样本数据集和标注语种对深度网络模型训练,直至深度网络模型中的参数收敛,从而得到基于深度网络的语种识别模型。

其中,深度网络模型包括Convolutional Neural Networks(卷积神经网络)、Recurrent Neural Networks(循环神经网络)以及递归神经网络(Recursive NeuralNetworks)等。

在一个实施例中,语种识别模型可以是基于单一语种字符的样本文本中的各个样本字符的样本语言标签特征训练得到的,这样,训练出的语种识别模型在上线之后,其识别包括单一语种的字符的文本的语种的准确率较高,其识别包括至少两个语种的字符的文本的语种的准确率较低。

在本申请中,有时候用户在搜索框中输入的文本可能包括至少两个语种的字符,然而,训练出的语种识别模型实际上不具备识别包括至少两个语种的字符的文本的语种的能力,因此,这种情况下,基于语种识别模型识别出的待识别文本的语种很可能不准确,就会出现将待识别文本的语种识别错误的问题。

因此,为了避免上述情况发生,在本申请另一实施例中,需要提高语种识别模型的鲁棒性,例如,在获取样本数据集时,可以获取多个第一样本文本,每一个样本文本分别包括一个语种的字符;也即,任意一个样本文本包括的字符均为同一语种的字符,而不掺杂其他语种的字符。

然后可以根据包括不同语种的字符的至少两个第一样本文本生成第二样本文本,例如,将包括不同语种的字符的至少两个第一样本文本组合,得到第二样本文本。

之后可以根据多个第一样本文本与生成的第二样本文本生成样本数据集。

例如,获取每一个第一样本文本中的各个样本字符的样本语言标签特征,以及获取每一个第二样本文本中的各个样本字符的样本语言标签特征,然后将每一个第一样本文本中的各个样本字符的样本语言标签特征以及获取每一个第二样本文本中的各个样本字符的样本语言标签特征组合,得到样本数据集。

在本实施例中,语种识别模型是基于单一语种字符的第一样本文本中的各个样本字符的样本语言标签特征以及多语种字符的第二样本文本中的各个样本字符的样本语言标签特征训练得到的。如此,训练出的语种识别模型可以具备识别包括至少两个语种的字符的文本的语种的能力。因此,可以提高训练出的语种识别模型识别包括至少两个语种的字符的文本的语种的准确率。

在本申请中,可以将用户在搜索框中输入的原始文本作为待识别文本,然而,用户在搜索框中输入的原始文本中有时候除了包括语言字符,还会包括非语言字符等,例如,非语言字符包括标点符号以及阿拉伯数字等。其中,语言字符可以体现语种,而非语言字符往往不体现语种。

在训练语种识别模型时,如果使用的样本文本中除了包括语言符号以外,还包括非语言符号,则在基于样本文本以及样本文本的标注语种训练模型时,会使得语种识别模型将样本文本中的非语言字符的语种分类学习为该样本文本的标注语种。

这样,在语种识别模型上线应用之后,如果用户在搜索框中输入了一个搜索文本,且该搜索文本中包括语言字符以及该非语言字符,在非语言字符在整个搜索文本中的占比大于预设阈值的情况下,可能会将学习到的该语言字符的语种确定为搜索文本的语种,但是确定出的语种可能并不是搜索文本中的语言字符的语种,在这种情况下,就会出现将搜索文本的语种识别错误的问题。

因此,为了避免这种情况发生,在本申请另一实施例中,在训练语种识别模型时,样本文本中可以包括语言字符,可以不包括非语言字符,如此,样本文本中的各个样本字符均为语言字符,而没有非语言字符。

这样,使得在训练语种识别模型在的过程中不会对非语言字符进行学习,而会对语言字符进行学习,例如,将样本文本中的语言字符的语种分类学习为该样本文本的标注语种等。

如此,在语种识别模型上线应用之后,电子设备可以获取原始文本,原始文本包括用户在搜索框中输入的文本,例如,用户在搜索框中输入了一个搜索文本,则电子设备获取用户输入的搜索文本,并作为原始文本。

有时候原始文本中包括非语言字符,然而,训练语种识别模型使用的是仅包括语言字符的样本文本训练得到的,所以,语种识别模型对仅包括语言字符的搜索文本的语种识别的准确率较高,而对掺杂有非语言字符的搜索文本的语种识别的准确率较低。

因此,为了避免原始文本中包括非语言字符对语种识别模型识别原始文本的语种的识别准确率带来不良影响,在本申请中,可以去除原始文本中的非语言字符,得到待识别文本。待识别文本中包括语言字符,不包括非语言字符,然后执行步骤S102。

参照图5,示出了本申请一种语种识别装置的实施例的结构框图,具体可以包括如下模块:

第一获取模块11,用于获取待识别文本;

第二获取模块12,用于获取所述待识别文本中的各个字符的编码;

第三获取模块13,用于根据所述编码获取所述待识别文本中的各个字符的语言标签特征;

确定模块14,用于根据各个字符的语言标签特征以及基于深度网络的语种识别模型确定所述待识别文本的语种。

在一个可选的实现方式中,所述第三获取模块包括:

第一确定单元,用于对于所述待识别文本中的每一个字符,根据所述字符的编码确定所述字符属于一个语种或同时属于多个语种;

第一获取单元,用于在所述字符属于一个语种的情况下,根据所述语种获取所述字符的语言标签特征;

第二确定单元,用于在所述字符同时属于至少两个语种的情况下,在所述待识别文本中确定所述字符的相邻字符,第一生成单元,用于根据所述字符与所述相邻字符生成所述字符的语言标签特征;

在一个可选的实现方式中,所述第一确定单元包括:

获取子单元,用于获取所述字符的编码所在的编码段;

查找子单元,用于在编码段与语种之间的对应关系中,查找与所述编码段相对应的语种;

第一确定子单元,用于在与所述编码段相对应的语种为一个的情况下,确定所述字符属于一个语种;

第二确定子单元,用于在与所述编码段相对应的语种为至少两个的情况下,确定所述字符同时属于多个语种。

在一个可选的实现方式中,所第三获取模块包括:

组成单元,用于在所述字符为单词的情况下,在所述单词中,分别将连续的预设数量个字母组成字母集合;

第二生成单元,用于根据所述单词以及所述字母集合生成所述字符的语言标签特征。

在一个可选的实现方式中,所述第一获取模块包括:

第二获取单元,用于获取原始文本;

去除单元,用于去除所述原始文本中的非语言字符,得到所述待识别文本。

在一个可选的实现方式中,所述装置还包括:

第四获取模块,用于获取样本数据集,所述样本数据集中至少一个样本文本中的各个样本字符的样本语言标签特征;

第五获取模块,用于获取样本数据集中的每一个样本文本的标注语种;

训练模块,用于基于所述样本数据集和所述标注语种对深度网络模型训练,直至所述深度网络模型中的参数收敛,从而得到所述基于深度网络的语种识别模型。

在一个可选的实现方式中,所述第四获取模块包括:

第三获取单元,用于获取多个第一样本文本,每一个样本文本分别包括一个语种的字符;

第三生成单元,用于根据包括不同语种的字符的至少两个第一样本文本生成第二样本文本;

第四生成单元,用于根据所述多个第一样本文本与生成的第二样本文本生成所述样本数据集。

在一个方式中,是将待识别文本中的各个字符直接输入至语种识别模型中,语种识别模型根据对待识别文本处理,输出待识别文本的语种。

然而,在本申请中,是根据待识别文本中的各个字符的编码获取各个字符的语言标签特征,然后将各个字符的语言标签特征输入语种识别模型中,以使语种识别模型基于各个字符的语言标签特征识别待识别文本的语种。

其中,各个字符的语言标签特征至少可以直接或间接地体现出各个字符可能属于哪些语种,任意一个字符的语言标签特征可以包括:该字符、该字符属于的语种以及待识别文本中的该字符的相邻字符等,以及,在该字符为由多个字母组成的单词的情况下,语言标签特征还可以包括:单词中的连续的预设数量个字母组成字母集合等。

如此,对于语种识别模型而言,其接收到输入数据中,包括有更多的与待识别文本中的各个字符的语种相关信息,以使语种识别模型可以基于更多的数据来识别待识别文本的语种,由于语种识别模型在识别待识别文本时使用了待识别文本中的各个字符的语种相关信息,因此,可以提高识别出的待识别文本的语种的准确率,进而可以降低出现误召回的情况的可能性,从而避免降低用户体验。

另外,本申请中的语种识别模型是基于深度网络的模型训练得到的,如此可以提高语种识别模型的泛化程度,例如,在语种识别模型上线之后,即使待识别文本并未在训练语种识别模型的过程中使用的样本文本中出现过,但是,语种识别模型对待识别文本的语种进行的识别准确度也大于基于浅层网络的模型的识别准确度。

本申请实施例还提供了一种非易失性可读存储介质,该存储介质中存储有一个或多个模块(programs),该一个或多个模块被应用在设备时,可以使得该设备执行本申请实施例中各方法步骤的指令(instructions)。

本申请实施例提供了一个或多个机器可读介质,其上存储有指令,当由一个或多个处理器执行时,使得电子设备执行如上述实施例中一个或多个所述的方法。本申请实施例中,所述电子设备包括服务器、网关、子设备等,子设备为物联网设备等设备。

本公开的实施例可被实现为使用任意适当的硬件,固件,软件,或及其任意组合进行想要的配置的装置,该装置可包括服务器(集群)、终端设备如IoT设备等电子设备。

图6示意性地示出了可被用于实现本申请中所述的各个实施例的示例性装置1300。

对于一个实施例,图6示出了示例性装置1300,该装置具有一个或多个处理器1302、被耦合到(一个或多个)处理器1302中的至少一个的控制模块(芯片组)1304、被耦合到控制模块1304的存储器1306、被耦合到控制模块1304的非易失性存储器(NVM)/存储设备1308、被耦合到控制模块1304的一个或多个输入/输出设备1310,以及被耦合到控制模块1306的网络接口1312。

处理器1302可包括一个或多个单核或多核处理器,处理器1302可包括通用处理器或专用处理器(例如图形处理器、应用处理器、基频处理器等)的任意组合。在一些实施例中,装置1300能够作为本申请实施例中所述网关等服务器设备。

在一些实施例中,装置1300可包括具有指令1314的一个或多个计算机可读介质(例如,存储器1306或NVM/存储设备1308)以及与该一个或多个计算机可读介质相合并被配置为执行指令1314以实现模块从而执行本公开中所述的动作的一个或多个处理器1302。

对于一个实施例,控制模块1304可包括任意适当的接口控制器,以向(一个或多个)处理器1302中的至少一个和/或与控制模块1304通信的任意适当的设备或组件提供任意适当的接口。

控制模块1304可包括存储器控制器模块,以向存储器1306提供接口。存储器控制器模块可以是硬件模块、软件模块和/或固件模块。

存储器1306可被用于例如为装置1300加载和存储数据和/或指令1314。对于一个实施例,存储器1306可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,存储器1306可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM)。

对于一个实施例,控制模块1304可包括一个或多个输入/输出控制器,以向NVM/存储设备1308及(一个或多个)输入/输出设备1310提供接口。

例如,NVM/存储设备1308可被用于存储数据和/或指令1314。NVM/存储设备1308可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(HDD)、一个或多个光盘(CD)驱动器和/或一个或多个数字通用光盘(DVD)驱动器)。

NVM/存储设备1308可包括在物理上作为装置1300被安装在其上的设备的一部分的存储资源,或者其可被该设备访问可不必作为该设备的一部分。例如,NVM/存储设备1308可通过网络经由(一个或多个)输入/输出设备1310进行访问。

(一个或多个)输入/输出设备1310可为装置1300提供接口以与任意其他适当的设备通信,输入/输出设备1310可以包括通信组件、拼音组件、传感器组件等。网络接口1312可为装置1300提供接口以通过一个或多个网络通信,装置1300可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信,例如接入基于通信标准的无线网络,如WiFi、2G、3G、4G、5G等,或它们的组合进行无线通信。

对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器(例如,存储器控制器模块)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑封装在一起以形成系统级封装(SiP)。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器1302中的至少一个可与控制模块1304的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(SoC)。

在各个实施例中,装置1300可以但不限于是:服务器、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)等终端设备。在各个实施例中,装置1300可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,装置1300包括一个或多个摄像机、键盘、液晶显示器(LCD)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC)和扬声器。

本申请实施例提供了一种电子设备,包括:一个或多个处理器;和,其上存储有指令的一个或多个机器可读介质,当由所述一个或多个处理器执行时,使得所述电子设备执行如本申请中一个或多个所述的语种识别方法。

对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。

本申请实施例是参照根据本申请实施例的方法、终端设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理终端设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理终端设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理终端设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理终端设备上,使得在计算机或其他可编程终端设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程终端设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

尽管已描述了本申请实施例的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请实施例范围的所有变更和修改。

最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者终端设备中还存在另外的相同要素。

以上对本申请所提供的一种语种识别方法及装置,进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

22页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:一种提取读者兴趣标签的方法

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!