一种文本识别方法和装置与流程

文档序号:21782739发布日期:2020-08-07 20:14阅读:255来源:国知局
一种文本识别方法和装置与流程

本发明涉及通信技术领域,具体涉及一种文本识别方法和装置。



背景技术:

近年来,随着互联网技术的飞速发展,互联网上的用户原创内容(usergeneratedcontent,ugc)也越来越多,尤其是文本内容。而文本内容又五花八门,质量参差不齐,为了净化互联网环境,需要识别出一些内容质量较差的垃圾文本,并对这些垃圾文本进行拦截,现有文本识别技术主要采用正则表达式和神经网络来识别文本内容。

在对现有技术的研究和实践过程中,本发明的发明人发现对于现有的文本识别方法来说,一些垃圾文本中往往包含一些特殊的符号、字符和相近词等特殊字符,使得正则表达式和神经网络在对文本内容识别准确率大大降低,因此,就会导致在文本中识别出垃圾文本的准确率大大降低。



技术实现要素:

本发明实施例提供一种文本识别方法和装置。可以提高在文本中识别出垃圾文本的准确率。

一种文本识别方法,包括:

获取待识别文本和所述待识别文本在所属业务平台所使用的字体,所述待识别文本包括多个文本字符;

在所述待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将所述特殊字符按照所述字体转换为图像,得到字符图像;

采用图像识别模型对所述字符图像进行识别,以在所述预设文本字符库中筛选出与所述字符图像相似的候选文本字符,所述图像识别模型由多个字符图像样本训练而成,所述字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像;

根据所述特殊字符在待识别文本的上下文信息,在所述候选文本字符中确定出所述特殊字符对应的目标文本字符;

基于所述目标文本字符,对所述待识别文本进行识别。

相应的,本发明实施例提供一种文本识别装置,包括:

获取单元,用于获取待识别文本和所述待识别文本在所属业务平台所使用的字体,所述待识别文本包括多个文本字符;

转换单元,用于在所述待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将所述特殊字符按照所述字体转换为图像,得到字符图像;

筛选单元,用于采用图像识别模型对所述字符图像进行识别,以在所述预设文本字符库中筛选出与所述字符图像相似的候选文本字符,所述图像识别模型由多个字符图像样本训练而成,所述字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像;

确定单元,用于根据所述特殊字符在待识别文本的上下文信息,在所述候选文本字符中确定出所述特殊字符对应的目标文本字符;

识别单元,用于基于所述目标文本字符,对所述待识别文本进行识别。

可选的,在一些实施例中,所述筛选单元,具体可以用于采用图像识别模型对所述字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息;将所述局部特征信息进行融合,得到所述字符图像的全局特征信息;根据所述全局特征信息,在所述预设文本字符库中筛选出与所述字符图像相似的一个或多个候选文本字符。

可选的,在一些实施例中,所述确定单元,具体可以用于当筛选出的与所述字符图像相似的候选文本字符的数量为一个时,将所述候选文本字符作为所述特殊字符对应的目标文本字符;当筛选出的与所述字符图像相似的候选文本字符的数量为多个时,根据所述特殊字符在待识别文本的上下文信息,在所述候选文本字符中确定出所述特殊字符对应的目标文本字符。

可选的,在一些实施例中,所述确定单元,具体可以用于根据所述特殊字符在待识别文本的上下文本信息,在所述待识别文本中筛选出所述特殊字符的第一邻近文本字符;确定所述第一邻近文本字符与所述候选文本字符的关联信息;根据所述关联信息,在所述候选文本字符中确定出所述特殊字符对应的目标文本字符。

可选的,在一些实施例中,所述识别单元,具体可以用于将所述待识别文本的文本字符中的特殊字符替换为所述目标文本字符,得到所述待识别文本的可识别文本字符,所述可识别文本字符可以通过所述预设文本字符库进行被识别;对所述待识别文本字符的可识别文本字符进行特征提取,以得到所述待识别文本的文本特征;根据所述待识别文本的文本特征,对所述待识别文本进行识别。

可选的,在一些实施例中,所述识别单元,具体可以用于对所述待识别文本的可识别文本字符进行特征提取,得到所述可识别文本字符的文本特征;对所述可识别文本字符的文本特征进行融合,以得到所述待识别文本的文本特征。

可选的,在一些实施例中,所述识别单元,具体可以用于获取所述可识别文本字符在所述待识别文本中的位置信息;根据所述位置信息,在所述待识别文本中筛选出可识别文本字符的第二邻近文本字符;对所述第二邻近文本字符进行特征提取,以得到所述可识别文本字符的文本特征。

可选的,在一些实施例中,所述识别单元,具体可以用于对所述可识别文本字符进行特征提取,得到所述可识别文本字符的初始文本特征;根据所述可识别文本字符的初始文本特征,确定所述第二邻近文本字符的文本特征;基于所述第二邻近文本字符的文本特征,对所述可识别文本字符的初始文本特征进行调整,得到所述可识别文本字符的文本特征。

可选的,在一些实施例中,所述识别单元,具体可以用于将所述可识别文本字符的文本特征进行融合,得到所述待识别文本的第一初始文本特征;在所述可识别文本字符中筛选出互不重复的文本字符;将所述互不重复的文本字符的文本特征进行特征融合,得到所述待识别文本的第二初始文本特征;将所述第一初始文本特征和第二初始文本特征进行拼接,得到所述待识别文本的文本特征。

可选的,在一些实施例中,所述识别单元,具体可以用于计算所述待识别文本的文本特征与预设文本特征库中的文本特征的相似度;根据所述相似度,对所述待识别文本进行识别。

可选的,在一些实施例中,所述识别单元,具体可以用于将所述待识别文本的文本特征进行分段,得到多个子文本特征;在所述预设文本特征库中聚类出所述子文本特征对应的目标子文本特征库;计算所述子文本特征与所述目标子文本特征库中的文本特征的初始相似度;对所述初始相似度进行融合,得到所述待识别文本的文本特征与预设文本特征库中的文本特征的相似度。

可选的,在一些实施例中,所述识别单元,具体可以用于根据所述相似度,在所述预设文本特征库中筛选出预设数量的目标预设文本特征,所述预设文本特征库中包括预设正常文本特征和预设垃圾文本特征;当所述目标预设文本特征全部为预设正常文本特征时,确定所述待识别文本为正常文本;当所述目标预设文本特征全部为预设垃圾文本特征时,确定所述待识别文本为垃圾文本;当所述目标预设文本特征中存在预设正常文本特征和预设垃圾文本特征时,在所述相似度中筛选出正常文本相似度和垃圾文本相似度,并根据所述正常文本相似度和垃圾文本相似度,对所述待识别文本进行识别,所述正常文本相似度为所述待识别文本的文本特征与预设正常文本特征的相似度,所述垃圾文本相似度为所述待识别文本的文本特征与预设垃圾文本特征的相似度。

可选的,在一些实施例中,所述识别单元,具体可以用于在所述相似度中筛选出正常文本相似度和垃圾文本相似度;对所述正常文本相似度和垃圾文本相似度分别进行加权,得到正常文本相似度的第一加权值和垃圾文本相似度的第二加权值;当所述第一加权值超过所述第二加权值时,确定所述待识别文本为正常文本;当所述第一加权值未超过所述第二加权值时,确定所述待识别文本为垃圾文本。

可选的,在一些实施例中,所述识别单元,具体可以用于当所述待识别文本为垃圾文本时,对所述待识别文本进行拦截。

此外,本发明实施例还提供一种电子设备,包括处理器和存储器,所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序实现本发明实施例提供的文本识别方法。

此外,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种文本识别方法中的步骤。

本发明实施例在获取待识别文本和待识别文本在所属业务平台所使用的字体后,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别;由于该方案可以在待识别文本中筛选出特殊字符,并将特殊字符转换成预设文本字符中的文本字符,可以大大提升对待识别文本中的文本字符的识别准确率,使得在待识别文本识别出垃圾文本的准确率大大提升。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的文本识别的场景示意图;

图2是本发明实施例提供的文本识别方法的流程示意图;

图3是本发明实施例提供的待识别文本的示意图;

图4是本发明实施例提供的图像识别模型的结构示意图;

图5是本发明实施例提供的第一邻近文本字符的位置示意图;

图6是本发明实施例提供的cbow模型的结构示意图;

图7是本发明实施例提供的目标文本特征的示意图;

图8是本发明实施例提供的文本识别方法的另一流程示意图;

图9是本发明实施例提供的文本识别装置的结构示意图;

图10是本发明实施例提供的文本识别装置的识别单元的结构示意图;

图11是本发明实施例提供的文本识别装置的另一结构示意图;

图12是本发明实施例提供的电子设备的结构示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供一种文本识别方法、装置和计算机可读存储介质。其中,该文本识别装置可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备。

其中,服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、网络加速服务(contentdeliverynetwork,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。

例如,参见图1,以文本识别装置集成在电子设备中为例,电子设备在获取待识别文本和待识别文本在所属业务平台所使用的字体后,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别。

其中,文本字符可以包括普通汉字、数字字母、标点符号库内的字符和一些形近或者音近的特殊字符等。其中,这些特殊字符实际上难以被常见的文本表示方式所利用,也就是说这些字符通常在文本识别中不能被直接识别,特殊字符可以为单个字符,还可以为多个字符组成的字符组例如“c欧m”或“色↑青”等这一类字符。

其中,预设文本字符库中包含常用的单个汉字、汉字组成常见词组、正常的数字字母、字母组成的常见单词和标点符号库内的常见标点符号等字符。

以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。

本实施例将从文本识别装置的角度进行描述,该文本识别装置具体可以集成在电子设备中,该电子设备可以是服务器,也可以是终端等设备;其中,该终端可以包括平板电脑、笔记本电脑、以及个人计算(pc,personalcomputer)等设备。

一种文本识别方法,包括:

获取待识别文本和待识别文本在所属业务平台所使用的字体,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别。

如图2所示,该文本识别方法的具体流程如下:

101、获取待识别文本和待识别文本在所属业务平台所使用的字体。

其中,待识别文本可以包括多个文本字符,比如,可以包括多个汉字,还可以包括多个数字或者字母,还可以包括汉字、数字、字母或标点符号组成的字符组。

其中,所属业务平台可以理解为待识别文本字符被制造或者被展示的平台,比如,可以为pc或者手机,譬如,用户在手机的客户端中发布一段待识别文本,则这个待识别文本的所属业务平台就可以为手机。

例如,获取待识别文本的方式可以有多种,比如,可以通过用户在社交或者即时通讯系统的服务器上发送或上传的ugc文本,文本识别装置直接在服务器中获取这些ugc文本,譬如,可以实时获取,用户上传成功后,社交或即时通讯系统的服务器给文本识别装置发送提示信息,文本识别装置在服务器中实时将用户上传的ugc文本提取出来进行识别,当用户上传的ugc文本被判断为垃圾文本后,就需要对这个文本进行拦截,在拦截后,社交或即时通讯系统就不会将该ugc文本进行发布。还可以定时或定期从服务器中获取到用户发送或上传的ugc文本,譬如,可以设定每10分钟从服务器获取这10分钟内产生的ugc文本,还可以设定每个固定日期获取ugc文本,将这些ugc文本作为待识别文本。还可以直接在互联网中获取这些ugc文本,比如,定时或定期从互联网中爬取当前时间段产生的ugc文本,将这些ugc文本作为待识别文本。在获取这个ugc文本的时候,也可以一并获取这些ugc文本被制造和显示的业务平台中所使用的字体,比如,ugc文本为用户通过手机中客户端发送至服务器的,就可以确定该ugc文本所属的业务平台为手机,并确定在手机中所使用的字体信息,譬如,该字体信息可以为字体类型、字体大小和字体颜色等,其中字体类型可以为宋体、黑体、楷体或者其他字体。

其中,ugc文本可以为社交或即时通讯系统中的用户发布、评论或转发的文本,还可以为社交或即时通讯系统中用户的昵称或身份标识等。

其中,在获取待识别文本的过程中,可以根据每一个获取到的历史待识别文本的识别结果,对历史待识别文本添加标签进行标记,当获取到新的待识别文本后,可以首先通过与历史待识别文本的标签进行比对,当获取的新的待识别文本与历史待识别文本相同时,可以直接根据历史待识别文本的识别结果对新获取到的待识别文本进行识别,比如,当历史待识别文本的识别结果为垃圾文本时,则对新获取的待识别文本也可以直接确定该待识别文本为垃圾文本,当历史待识别文本的识别结果为正常文本时,则对新获取的待识别文本也可以直接确定为正常文本。

102、在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像。

其中,特殊字符可以为在预设文本字符库中查询不到的字符,这些特殊字符实际上难以被常见的文本表示方式所利用,也就是说这些字符通常在文本识别中不能被直接识别,特殊字符可以为单个字符,还可以为多个字符组成的字符组例如“c欧m”或“色↑青”等这一类字符。

其中,字符图像可以为在显示平台(可以为客户端)进行显示特殊字符的图像。可以理解为将特殊字符转换了成一种图像,图像显示的内容就为特殊字符。

例如,将待识别文本中的文本字符与预设文本字符库中的字符进行对比和匹配,将文本字符中的不属于预设文本字符中的字符筛选出来,得到筛选出来的特殊字符。比如,以待识别文本如图3所示,待识别文本的包含特殊字符的文本字符分别为“mvp玖七九.c欧m”和“mvp292点com色↑青”为例,将这些字符分成的单个字符分别在预设字符库进行匹配,可以发现单个字符都可以匹配成功,在这种情况下,就可以将这些字符进行组合,将组合后的字符再次与预设字符库进行匹配,可以发现这些组合后字符无法匹配,譬如,“点com”、“玖七九”、“c欧m”和“色↑青”,因此,就可以就这些组合后字符作为特殊字符。可以发现,这些特殊字符都是一些形近或音近的,通过这些特殊字符代替了常用的一些正常字符组成的词组。

将特殊字符按照字体进行转换,比如,可以创建预设尺寸的空白图像,譬如,当图像识别模型需要输入的图像的尺寸为512×512时,则预设尺寸就为512×512。由于不同业务平台(如pc和手机)的字符显示上存在差异,因此需要根据使用与实际业务平台相同的字体对特殊字符进行转换。所以,需要根据获取的待识别文本在所属的业务平台中所使用的字体,确定特殊字符转换所需的字体参数,该字体参数可以为字体类型、字体尺寸或字体颜色等参数。根据字体参数,将特殊字体添加至空白图像并进行渲染,以生成字符图像,比如,将特殊字符添加至空白图像中,并根据字体参数,对添加至空白图像中的特殊字符进行渲染,得到字符图像。

103、采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符。

其中,图像识别模型由多个字符图像样本训练而成,而字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像。

其中,候选文本字符可以理解为预设字符库中与字符图像中字符相似的文本字符,也可以理解为在预设文本字符库中对特殊字符进行识别,得到的初步识别结果,这个识别结果可以是一对一,也可以是一对多,比如,可以是一个特殊字符或字符组对应一个识别出的文本字符或字符组,也可以是一个特殊字符或字符组对应的多个识别出的文本字符或字符组。

例如,可以采用图像识别模型在预设文本字符库中筛选出与字符图像相似的候选文本字符,比如,采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,譬如,图像识别模型的结构如图4所示,采用卷积层和池化层组成的特征提取模块,对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,该特征提取模块可以有两个或者多个,具体的数量可以根据实际应用情况来设定,将不同尺度对应的局部特征信息通过隐藏层进行局部特征信息进行线性分类,将分类后的局部特征信息进行融合,得到字符图像对应的全局特征信息,将全局特征信息输入至全连接层进行处理,可以映射至预设文本字符库中的文本字符,得到字符图像中的字符为预设文本字符库中文本字符的概率,在这些中选择出与字符图像相似的候选文本字符,候选文本字符可以为一个也可以为多个。

其中,对于字符图像的识别,还可以采用光学字符识别(opticalcharacterrecognition,ocr)或其他方式在预设文本字符库中来识别出与字符图像相似的候选文本字符。

其中,该图像识别模型可以根据实际应用的需求进行设置,另外,需要说的是,该图像识别模型可以由维护人员预先进行设置,也可以由该文本识别装置自行进行训练,即步骤“采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息”之前,该文本识别方法还可以包括:

(1)采集字符图像样本,该字符图像样本中包括已标注文本字符的字符图像。

例如,具体可以采集存在与预设文本字符库中的文本字符图像作为原始数据集,比如,可以为多个手写字母、数字图片、字符印刷体图片和部分已知的形近字母的字符图片作为原始数据集,对原始数据集中的字符图像进行标注,得到字符图像样本。比如,从数据库或网络上获取手写字母、数字图片、字符印刷体图片和部分已知的形近字母的字符图片,在这些字符图像上标注对应的文本字符。

(2)采用预设图像识别模型对字符图像样本对应的预设文本字符库中的文本字符进行预测,得到预测结果。

例如,采用预设图像识别模型对字符图像样本进行多尺度的特征提取,得到不同尺度对应的局部特征信息,将局部特征信息进行融合,得到字符图像样本的全局特征信息,根据全局特征信息,在预设文本字符库中预测出与字符图像样本相似的预测文本字符。

(3)根据预测结果与字符图像样本的标注结果对预设图像识别模型进行收敛,得到图像识别模型。

例如,在本申请实施例中,可以通过插值损失函数,根据预测结果与标注结果对预设图像识别模型进行收敛,得到图像识别模型。譬如,具体可以如下:

采用dice函数(一种损失函数),根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像相似的文本字符的参数进行调整,以及通过插值损失函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像相似的文本字符的参数进行调整,得到图像识别模型。

可选的,为了提高字符图像识别的精确性,除了采用dice函数之外,还可以采用其他的损失函数如交叉熵损失函数来进行收敛,具体可以如下:

采用交叉熵损失函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像相似的文本字符的参数进行调整,以及通过插值损失函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像样本相似的文本字符的参数进行调整,得到图像识别模型。

104、根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符。

例如,当筛选出的与字符图像相似的候选文本字符的数量为一个时,将候选文本字符作为特殊字符对应的目标文本字符,比如,当“c欧m”对应的字符图像筛选出候选文本字符只有一个就是为“com”,则将“com”作为特殊字符“c欧m”对应的目标文本字符。

当筛选出的与字符图像相似的候选文本字符的数量为多个时,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,具体可以如下:

(1)获取特殊字符在待识别文本中的上下文本信息。

其中,上下文信息可以理解为特殊字符在待识别文本的上文信息和下文信息,所谓上文信息,可以为待识别文本中特殊字符前面的文本字符的信息,所谓下文信息,可以为待识别文本中特殊字符后面的文本字符的信息。上下文信息通常可以根据特殊字符在待识别文本的位置信息来获取。

例如,可以通过对待识别文本内的文本字符进行排序,根据特殊字符在待识别文本中的排序结果,确定特殊字符在待识别文本中的位置信息。比如,待识别文本中一共包含10个文本字符,对待识别文本中的10个文本字符进行排序,在排序结果中特殊字符排在10个文本字符中的第三位,再根据待识别文本中10个字符分别位于的排或列信息,确定特殊字符在待识别文本中的位置信息,譬如,还是以待识别文本一共包含10个文本字符,特殊字符可以为待识别文本的第一排第三个字符对应的位置,根据特殊字符的位置信息,就可以将这10个文本字符中前面2个文本字符和后面7个文本字符的信息作为特殊字符在待识别文本字符中的上下文信息。

(2)根据特殊字符在待识别文本的上下文信息,在待识别文本中筛选出特殊字符的第一邻近文本字符。

其中,邻近文本字符可以为与特殊字符距离在预设距离内的字符,通俗的来说就可以理解为特殊字符的上下文文本字符。

例如,根据预设文本框内的字符数量和特殊字符的上下文本信息,在待识别文本中筛选出特殊字符的第一邻近文本字符,比如,以特殊字符的上下文信息为8个文本字符,预设邻近文本框的距离为5个文本字符为例,则第一邻近文本字符就可以为这8个文本字符中的该特殊字符左边和右边的第一和第二个字符,如图5所示。

(3)确定第一邻近文本字符与候选文本字符的关联信息。

其中,关联信息可以理解为第一邻近文本字符与候选文本字符的关联程度。

例如,可以采用语言处理模型来确定第一邻近文本字符与候选文本字符的关联信息,比如,可以采用语言处理模型根据常见的字母、中文词组等数据组合,对第一邻近文本字符与候选文本字符的关联信息进行确定,譬如,特殊字符为候选文本字符为0或o,该特殊字符的第一邻近文本字符为“c”、“m”和“e”,则采用语言处理模型计算这些字母与0或o的关联程度进行确定,从而得到关联信息,很显然“c”、“m”和“e”与候选文本字符“o”的关联程度是要超过“c”、“m”和“e”与候选文本字符“0”的关联程度。

(4)根据关联信息,在候选文本字符中确定出特殊字符对应的目标文本字符。

例如,根据关联信息,在候选文本字符中确定出特殊字符对应的目标文本字符,比如,根据关联信息,确定第一邻近文本字符与候选文本字符中每一个文本字符的关联程度,在候选文本中筛选出与第一邻近文本字符关联程度最大的候选文本字符,将这些候选文本字符作为目标文本字符,譬如,还是以特殊字符为候选文本字符为0或o,该特殊字符的第一邻近文本字符为“c”、“m”和“e”为例,则可以确定第一邻近文本字符为“c”、“m”和“e”与候选文本字符“o”的关联程度更大,因此,特殊字符对应的目标文本字符就为“o”。

105、基于目标文本字符,对待识别文本进行识别。

其中,对待识别文本的识别主要为识别出待识别文本的文本类型,所谓文本类型可以为待识别文本的文本字符对应的类型,比如,可以包括正常文本和垃圾文本,正常文本可以为文本内容正常的文本,垃圾文本可以为内容质量较低的文本。

例如,可以将待识别文本的文本字符的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符,对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征,根据待识别文本的文本特征,对待识别文本进行识别。具体可以如下:

c1、将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符。

其中,可识别文本字符可以为通过预设文本字符库被识别的字符,通俗的说,就是待识别文本的可识别文本字符全部都属于预设文本字符库中的字符。

例如,将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符,比如,待识别文本的文本字符为“mvp979.c欧m”,特殊字符为“c欧m”,目标文本字符为“com”为例,则待识别文本的文本字符中的特殊字符“c欧m”替换为“com”,可以得到待识别文本的可识别文本字符为“mvp979.com”。

c2、对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征。

例如,可以对待识别文本中的可识别文本字符进行特征提取,得到可识别文本字符的文本特征,对可识别文本字符的文本特征进行融合,以得到待识别文本的文本特征,具体可以如下:

(1)对待识别文本中的可识别文本字符进行特征提取,得到可识别文本字符的文本特征。

例如,获取可识别文本字符在待识别文本的第二位置信息,比如,可以对待识别文本中的可识别文本字符进行排序,根据排序结果,确定可识别文本字符中的每一文本字符的位置,得到可识别文本字符在待识别文本的第二位置信息,第二位置信息中可以包括可识别文本字符中的每一文本字符在待识别文本信息中的排和列信息。根据第二位置信息,在待识别文本中筛选出可识别文本字符的第二近邻文本字符,比如,根据预设的文本特征框的大小和第二位置信息,在待识别文本中筛选出可识别文本字符的第二紧邻文本字符,譬如,以预设的文本框的大小为5个文本字符为例,在待识别文本的可识别文本字符中确定出每个字符邻近的4个文本字符,假设待识别文本中的可识别文本字符中的第一个文本字符a的第二邻近文本字符就可以为该文本字符右边的4个文本字符(a+1、a+2、a+3和a+4),第二个文本字符b的第二邻近文本字符就可以为该文本字符左边的第一个文本字符(b-1)和右边的3个文本字符(b+1、b+2和b+3),采用这样的方式,就可以确定待识别文本的可识别文本字符的全部文本字符对应的第二邻近文本字符。

对第二邻近文本字符进行特征提取,以得到可识别文本字符的文本特征,比如,可以对可识别文本字符进行特征提取,得到可识别文本字符的初始文本特征,譬如,可以采用word2vec中的连续词袋模型(continuousbag-of-words,cbow)对可识别文本字符进行特征提取,对可识别文本字符进行特征提取可以采用独热编码(one-hot)的方式,得到可识别文本字符的每一文本字符的初始文本特征。根据可识别文本字符的初始文本特征,确定第二邻近文本字符的文本特征,比如,cbow模型的结构如图6所示,以预设文本特征框的大小为5个文本字符,可识别文本字符中的一个文本字符的初始文本特征为wi为例,在可识别文本字符的初始特征中筛选出第二邻近文本字符wi-2、wi-1、wi+1和wi+2。基于第二邻近文本字符的文本特征,对可识别文本字符的初始文本特征进行调整,得到可识别文本字符的文本特征。比如,对第二邻近文本字符wi-2、wi-1、wi+1和wi+2进行求和与取平均值,根据这个平均值对可识别文本字符的初始文本特征进行调整,譬如,将可识别文本字符的初始文本特征调整为这个平均值对应的文本特征,得到可识别文本字符的文本特征,通过上述方法,可以得到可识别文本字符中每一个文本字符的文本特征,该文本特征可以为词向量。

其中,使用word2vec中的cbow进行特征提取,可以获取更好的计算速度。对于可识别文本字符的初始特征提取液还可以采用其他的方式,比如,还可以采用elmo(一种语言模型)等预训练语言模型进行文本字符的特征提取。

(2)对可识别文本字符的文本特征进行特征融合,以得到待识别文本的文本特征。

例如,将可识别文本字符的文本特征进行融合,得到待识别文本的第一初始文本特征,比如,将可识别文本字符中每一个文本字符对应的词向量进行累加,就可以待识别文本的句子向量,将句子向量作为待识别文本的第一初始文本特征。

(3)在可识别文本字符中筛选出互不重复的文本字符,并将互不重复的文本字符的文本特征进行特征融合,得到待识别文本的第二初始文本特征。

例如,在可识别文本字符的文本特征中筛选出互不重复的文本字符,比如,待识别文本的可识别文本字符包括a、a、b、c、c和d,则在这些可识别文本字符中筛选出互不重复的文本字符a、b、c和d。将这些互不重复的文本字符的文本特征进行融合,比如,还是以互不重复的文本字符a、b、c和d为例,则将互不重复的文本字符a、b、c和d对应的文本特征,也就是词向量进行累加,得到待识别文本的第二初始文本特征。

(4)将第一初始文本特征和第二初始文本特征进行拼接,得到待识别文本的文本特征。

例如,可以将第一初始文本特征和第二初始文本特征直接进行拼接,得到待识别文本的文本特征,比如,第一初始文本特征为100维的句子向量,第二初始文本特征为80维的句子向量,则直接将100维的句子向量和80维的句子向量直接进行拼接,得到180维的拼接后句子向量,将这个180维的句子向量作为待识别文本的文本特征。

c3、根据待识别文本的文本特征,对待识别文本进行识别。

例如,可以计算待识别文本的文本特征与预设文本特征库中的文本特征的相似度,根据相似度,对待识别文本进行识别。具体可以如下:

(1)计算待识别文本的文本特征与预设文本特征库中的文本特征的相似度。

其中,相似度可以为待识别文本的文本特征与预设文本特征库中的文本特征之间的余弦相似度,也可以理解为待识别文本的文本特征与预设文本特征库中的文本特征的距离。

其中,预设文本特征库中包括多个类型或类别的子文本特征库,且子文本特征库中包括已知文本类型的文本特征,该文本类型可以包含正常文本和垃圾文本。

例如,可以将待识别文本的文本特征进行分段,得到多个子文本特征,比如,可以采用faiss(一种搜索算法库)中的乘积向量化(productquantizer)对待识别文本的句子向量进行分段,以待识别文本的文本特征为一个100维的句子向量为例,则可以将这个100维的句子向量分割为多个子句子向量,这些子句子向量的总维数为100维。在预设文本特征库中聚类出子文本特征对应的目标子文本特征库,通过在预设文本特征库中对子文本特征进行聚类,可以快速找到各个子文本特征分别对应的目标子文本特征库,计算子文本特征与目标子文本特征库中的文本特征的初始相似度,比如,可以根据与目标子文本特征库中的文本特征聚类后的残差,确定子文本特征与目标子文本特征库中每一文本特征的距离,得到待识别文本的子文本特征与目标子文本特征库中的文本特征的初始相似度。对初始相似度进行融合,得到待识别文本的文本特征与预设文本特征库中的文本特征的相似度。比如,可以将目标子文本特征库中的文本特征进行按照预设的文本类型进行分类,譬如,可以将每个目标子文本特征库中文本特征分为正常文本对应的垃圾文本特征集合和垃圾文本对应的垃圾文本特征集合,对正常文本特征集合和垃圾文本特征集合中的文本特征按照相似度的大小进行排序,将每个目标子文本特征库中的正常文本特征集合和垃圾文本特征集合中安排排序后的序号进行融合,得到待识别文本的文本特征与预设文本特征库的文本特征的相似度,比如,待识别文本的文本特征包括n个子文本特征,将这n个子文本特征对应的目标子文本特征库中的正常文本特征集合中相似度排第一的正常文本特征的相似度进行相乘,就可以得到待识别文本的文本特征与预设文本特征库中的正常文本特征的最大的相似度k1,同理,在所有对应的目标子文本特征库中的垃圾文本特征集合中相似度排第一的垃圾文本特征的相似度进行相乘,就可以得到待识别文本的文本特征与预设文本特征库中的垃圾文本特征的最大相似度h1,根据上述的方法,就可以计算出待识别文本的文本特征与预设文本特征库的正常文本特征和垃圾文本特征的相似度。该相似度可以包括与正常文本特征相似的正常文本相似度和与垃圾文本特征相似的垃圾文本相似度。

可选的,融合还有另一种方式,就是将在预设的正常文本特征和垃圾文本特征也进行分段,然后,将分段的子正常文本特征和子垃圾文本特征进行聚类,得到多个目标子文本特征库,比如,预设的正常文本特征a分为a1、a2和a3等3个子正常文本特征,预设的垃圾文本特征b分为b1、b2和b3等3个子垃圾文本特征,将a1、a2和a3的初始相似度进行相乘,就可以得到预设的正常文本特征与待识别文本特征的相似度,也可以称之为正常文本相似度,同理,将b1、b2和b3的初始相似度进行相乘,就可以得到预设的垃圾文本特征与待识别文本特征的相似度,也可以称之为垃圾文本相似度。在此,需要说明的是,如果预设的正常文本特征中的子文本特征没有与待识别文本的子文本特征相似的文本特征时,就可以将这个预设的正常文本特征的子文本特征舍弃,比如,预设的正常文本特征a包括a1、a2和a3等3个子正常文本特征,但是这三个字子文本特征中a2与待识别文本的子文本特征的相似度为0,则在计算预设的正常文本特征a与待识别文本的文本特征的相似度时,只需要将与a1和a3的初始相似度相乘即可。对于预设的垃圾文本特征可以采用同样的计算方式。

(2)根据相似度,对待识别文本进行识别。

例如,根据相似度,在预设文本特征库中筛选出预设数量的目标预设文本特征,比如,可以在预设文本特征库中筛选出相似度在一个范围内的目标文本特征,譬如,可以为相似度超过预设相似度阈值的5个目标文本特征,还可以为相似度排序在前5的目标文本特征。当这些目标文本特征全部为正常文本特征时,可以确定待识别文本为正常文本,比如,以目标文本特征的数量为5个为例,这5个目标文本特征全部为预设的正常文本特征,就可以确定待识别文本为正常文本。当这些目标文本特征全部为预设垃圾文本特征时,可以确定待识别文本为垃圾文本。比如,还是以目标文本特征的数量为5个为例,这5个目标文本特征全部为预设的垃圾文本特征,就可以确定待识别文本为垃圾文本。

可选的,当目标预设文本特征中存在预设正常文本特征和预设垃圾文本特征时,在相似度中筛选出正常文本相似度和垃圾文本相似度,比如,在这些目标文本特征对应的相似度中筛选出待识别文本的文本特征与目标文本特征中预设的正常文本特征的相似度,将这些相似度称为正常文本相似度,同理,在这些目标文本特征对应的相似度中筛选出待识别文本的文本特征与目标文本特征中预设的垃圾文本特征的相似度,将这些相似度称为垃圾文本相似度。根据正常文本相似度和垃圾文本相似度,对待识别文本进行识别。比如,对正常文本相似度和垃圾文本相似度分别进行加权,得到正常文本相似度的第一加权值和垃圾文本相似度的第二加权值,譬如,如图7所示,还是以目标文本特征中包含2个预设的正常文本特征和3个预设的垃圾文本特征为例,根据2个预设的正常文本特征对应的权重,对这2个预设的正常文本特征的相似度进行加权,得到正常文本相似度对应的第一加权值,再根据3个预设的垃圾文本特征对应的权重,对这3个预设的垃圾文本特征的相似度进行加权,得到垃圾文本相似度对应的第二加权值。通过比较这两个加权值的大小,就可以确定待识别文本的识别结果,比如,当第一加权值超过第二加权值时,可以确定待识别文本为正常文本,当第一加权值未超过第二加权值时,就可以确定待识别文本为垃圾文本。

可选的,当待识别文本为垃圾文本时,对待识别文本进行拦截,比如,当待识别文本为垃圾文本,此时,就需要对待识别文本进行拦截,具体的拦截方式可以有多种,比如,如果该待识别文本已经发布到互联网上了,就需要对该待识别文本进行召回并删除,如果该待识别文本只是上传到服务器或数据库了,还未发布的互联网时,可以直接在服务器或者数据库进行拦截并删除处理。进行拦截处理的过程中,还可以获取发送或发布该待识别文本的终端的身份标识,对该身份标识对应的终端发布的其他文本信息再次进行检查,根据检查结果,确定发布的垃圾文本与全部文本信息的比例,如果发布的垃圾文本与全部文本信息的比例超过预设比例阈值时,还可以该身份标识对应的终端禁止发布文本信息等拦截处理方式。

可选的,当待识别文本为正常文本时,就不必对该待识别文本进行拦截处理,对该待识别文本进行放行,使得该待识别文本可以发布至互联网或者其他社交平台,或者可以继续在互联网或者其他社交平台上展示或者显示等。

由以上可知,本申请的实施例在获取待识别文本和待识别文本在所属业务平台所使用的字体后,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别;由于该方案可以在待识别文本中筛选出特殊字符,并将特殊字符转换成预设文本字符中的文本字符,可以大大提升对待识别文本中的文本字符的识别准确率,使得在待识别文本识别出垃圾文本的准确率大大提升。

根据上面实施例所描述的方法,以下将举例作进一步详细说明。

在本实施例中,将以该文本识别装置具体集成在电子设备,电子设备具体为服务器为例进行说明。

如图8所示,一种文本识别方法,具体流程如下:

201、服务器获取待识别文本和待识别文本在所属业务平台所使用的字体。

例如,当用户通过社交或即时通讯系统将待识别文本上传或发送至社交或即时通讯系统的数据库,服务器便可以从数据库中实时获取用户上传的ugc文本。服务器还可以定时或定期从数据库中获取到用户发送或上传的ugc文本,还可以定时定期直接从互联网中爬取当前时间段产生的ugc文本,将这些ugc文本作为待识别文本。在获取这个ugc文本的时候,也可以一并获取这些ugc文本被制造和显示的业务平台中所使用的字体,比如,ugc文本为用户通过手机中客户端发送至服务器的,就可以确定该ugc文本所属的业务平台为手机,并确定在手机中所使用的字体信息。

202、服务器在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像。

例如,以待识别文本如图3所示,待识别文本的文本字符分别为“mvp玖七九.c欧m”和“mvp292点com色↑青”为例,服务器将这些字符分成的单个字符分别在预设字符库进行匹配,可以发现单个字符都可以匹配成功,在这种情况下,就可以将这些字符进行组合,将组合后的字符再次与预设字符库进行匹配,可以发现这些组合后字符无法匹配,譬如,“点com”、“玖七九”、“c欧m”和“色↑青”,因此,就可以就这些组合后字符作为特殊字符。

服务器将特殊字符按照字体转换为图像,比如,服务器将图像识别模型需要输入的图像尺寸作为预设尺寸,构建预设尺寸对应的空白图像,根据获取的待识别文本在所属的业务平台中所使用的字体,确定特殊字符转换所需的字体参数,将特殊字符添加至空白图像中,并根据字体参数,对添加至空白图像的特殊字符进行渲染,得到字符图像。

203、服务器采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符。

例如,服务器采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,比如,采用卷积层和池化层组成的特征提取模块,对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,该特征提取模块可以有两个或者多个,具体的数量可以根据实际应用情况来设定。将不同尺度对应的局部特征信息通过隐藏层进行局部特征信息进行线性分类,将分类后的局部特征信息进行融合,得到字符图像对应的全局特征信息,将全局特征信息输入至全连接层进行处理,可以映射至预设文本字符库中的文本字符,得到字符图像中的字符为预设文本字符库中文本字符的概率,在这些中选择出与字符图像相似的候选文本字符,候选文本字符可以为一个也可以为多个。

其中,对于字符图像的识别,还可以采用光学字符识别(opticalcharacterrecognition,ocr)或其他方式在预设文本字符库中来识别出与字符图像相似的候选文本字符。

其中,该图像识别模型可以根据实际应用的需求进行设置,另外,需要说的是,该图像识别模型可以由维护人员预先进行设置,也可以由该文本识别装置自行进行训练,即步骤“采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息”之前,该文本识别方法还可以包括:

(1)服务器采集字符图像样本,该字符图像样本中包括已标注文本字符的字符图像。

例如,服务器可以采集存在与预设文本字符库中的文本字符图像作为原始数据集,比如,可以为多个手写字母、数字图片、字符印刷体图片和部分已知的形近字母的字符图片作为原始数据集,对原始数据集中的字符图像进行标注,得到字符图像样本。比如,从数据库或网络上获取手写字母、数字图片、字符印刷体图片和部分已知的形近字母的字符图片,在这些字符图像上标注对应的文本字符。

(2)服务器采用预设图像识别模型对字符图像对应的预设文本字符库中的文本字符进行预测,得到预测结果。

例如,采用预设图像识别模型对字符图像样本进行多尺度的特征提取,得到不同尺度对应的局部特征信息,将局部特征信息进行融合,得到字符图像样本的全局特征信息,根据全局特征信息,在预设文本字符库中预测出与字符图像样本相似的预测文本字符。

(3)服务器根据预测结果与字符图像样本的标注结果对预设图像识别模型进行收敛,得到图像识别模型。

例如,在本申请实施例中,可以通过插值损失函数,根据预测结果与标注结果对预设图像识别模型进行收敛,得到图像识别模型。譬如,具体可以如下:

采用dice函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像相似的文本字符的参数进行调整,以及通过插值损失函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像相似的文本字符的参数进行调整,得到图像识别模型。

可选的,为了提高字符图像识别的精确性,除了采用dice函数之外,还可以采用其他的损失函数如交叉熵损失函数来进行收敛,具体可以如下:

采用交叉熵损失函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像相似的文本字符的参数进行调整,以及通过插值损失函数,根据字符图像样本的预测结果与标注结果对预设图像识别模型中用于从预设文本字符库中筛选出与字符图像样本相似的文本字符的参数进行调整,得到图像识别模型。

204、服务器根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符。

例如,当筛选出的与字符图像相似的候选文本字符的数量为一个时,服务器将候选文本字符作为特殊字符对应的目标文本字符。

当筛选出的与字符图像相似的候选文本字符的数量为多个时,服务器根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,具体可以如下:

(1)服务器获取特殊字符在待识别文本中的上下文本信息。

例如,以待识别文本中一共包含10个文本字符为例,服务器对待识别文本中的10个文本字符进行排序,在排序结果中特殊字符排在10个文本字符中的第三位,再根据待识别文本中10个字符分别位于的排或列信息,确定特殊字符在待识别文本中的位置信息,譬如,还是以待识别文本一共包含10个文本字符,特殊字符可以为待识别文本的第一排第三个字符对应的位置,根据特殊字符的位置信息,就可以将这10个文本字符中前面2个文本字符和后面7个文本字符的信息作为特殊字符在待识别文本字符中的上下文信息。

(2)服务器根据特殊字符在待识别文本的上下文信息,在待识别文本中筛选出特殊字符的第一邻近文本字符

例如,以特殊字符的上下文信息为8个文本字符,预设邻近文本框的距离为5个文本字符为例,服务器确定第一邻近文本字符就可以为这8个文本字符中的该特殊字符左边和右边的第一和第二个字符。

(3)服务器确定第一邻近文本字符与候选文本字符的关联信息。

例如,服务器可以采用语言处理模型根据常见的字母、中文词组等数据组合,对第一邻近文本字符与候选文本字符的关联信息进行确定,譬如,特殊字符为候选文本字符为0或o,该特殊字符的第一邻近文本字符为“c”、“m”和“e”,则采用语言处理模型计算这些字母与0或o的关联程度进行确定,从而得到关联信息,很显然“c”、“m”和“e”与候选文本字符“o”的关联程度是要超过“c”、“m”和“e”与候选文本字符“0”的关联程度。

(4)服务器根据关联信息,在候选文本字符中确定出特殊字符对应的目标文本字符。

例如,服务器根据关联信息,确定第一邻近文本字符与候选文本字符中每一个文本字符的关联程度,在候选文本中筛选出与第一邻近文本字符关联程度最大的候选文本字符,将这些候选文本字符作为目标文本字符,譬如,还是以特殊字符为候选文本字符为0或o,该特殊字符的第一邻近文本字符为“c”、“m”和“e”为例,则可以确定第一邻近文本字符为“c”、“m”和“e”与候选文本字符“o”的关联程度更大,因此,特殊字符对应的目标文本字符就为“o”。

205、服务器将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符。

例如,以待识别文本的文本字符为“mvp979.c欧m”,特殊字符为“c欧m”,目标文本字符为“com”为例,服务器将待识别文本的文本字符中的特殊字符“c欧m”替换为“com”,可以得到待识别文本的可识别文本字符为“mvp979.com”。

206、服务器对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征。

例如,服务器可以对待识别文本中的可识别文本字符进行特征提取,得到可识别文本字符的文本特征,对可识别文本字符的文本特征进行融合,以得到待识别文本的文本特征,具体可以如下:

(1)服务器对待识别文本中的可识别文本字符进行特征提取,得到可识别文本字符的文本特征。

例如,服务器可以对待识别文本中的可识别文本字符进行排序,根据排序结果,确定可识别文本字符中的每一文本字符的位置,得到可识别文本字符在待识别文本的第二位置信息。根据预设的文本特征框的大小和第二位置信息,在待识别文本中筛选出可识别文本字符的第二紧邻文本字符,比如,以预设的文本框的大小为5个文本字符为例,在待识别文本的可识别文本字符中确定出每个字符邻近的4个文本字符,假设待识别文本中的可识别文本字符中的第一个文本字符a的第二邻近文本字符就可以为该文本字符右边的4个文本字符(a+1、a+2、a+3和a+4),第二个文本字符b的第二邻近文本字符就可以为该文本字符左边的第一个文本字符(b-1)和右边的3个文本字符(b+1、b+2和b+3),采用这样的方式,就可以确定待识别文本的可识别文本字符的全部文本字符对应的第二邻近文本字符。

服务器可以采用word2vec中的cbow模型对可识别文本字符进行特征提取,对可识别文本字符进行特征提取可以采用独热编码的方式,得到可识别文本字符的每一文本字符的初始文本特征。根据可识别文本字符的初始文本特征,确定第二邻近文本字符的文本特征,比如,以预设文本特征框的大小为5个文本字符,可识别文本字符中的一个文本字符的初始文本特征为wi为例,在可识别文本字符的初始特征中筛选出第二邻近文本字符wi-2、wi-1、wi+1和wi+2。基于第二邻近文本字符的文本特征,对第二邻近文本字符wi-2、wi-1、wi+1和wi+2进行求和与取平均值,根据这个平均值对可识别文本字符的初始文本特征进行调整,譬如,将可识别文本字符的初始文本特征调整为这个平均值对应的文本特征,得到可识别文本字符的文本特征,通过上述方法,可以得到可识别文本字符中每一个文本字符的文本特征,该文本特征可以为词向量。

(2)服务器对可识别文本字符的文本特征进行特征融合,以得到待识别文本的文本特征。

例如,服务器将可识别文本字符中每一个文本字符对应的词向量进行累加,就可以待识别文本的句子向量,将句子向量作为待识别文本的第一初始文本特征。

(3)服务器在可识别文本字符中筛选出互不重复的文本字符,并将互不重复的文本字符的文本特征进行特征融合,得到待识别文本的第二初始文本特征。

例如,以待识别文本的可识别文本字符包括a、a、b、c、c和d为例,服务器在这些可识别文本字符中筛选出互不重复的文本字符a、b、c和d。然后再将互不重复的文本字符a、b、c和d对应的文本特征,也就是词向量进行累加,得到待识别文本的第二初始文本特征。

(4)服务器将第一初始文本特征和第二初始文本特征进行拼接,得到待识别文本的文本特征。

例如,以第一初始文本特征为100维的句子向量,第二初始文本特征为80维的句子向量为例,服务器直接将100维的句子向量和80维的句子向量直接进行拼接,得到180维的拼接后句子向量,将这个180维的句子向量作为待识别文本的文本特征。

207、服务器根据待识别文本的文本特征,对待识别文本进行识别。

例如,服务器可以计算待识别文本的文本特征与预设文本特征库中的文本特征的相似度,根据相似度,对待识别文本进行识别。具体可以如下:

(1)服务器计算待识别文本的文本特征与预设文本特征库中的文本特征的相似度。

例如,服务器可以采用faiss中的productquantizer对待识别文本的句子向量进行分段,以待识别文本的文本特征为一个100维的句子向量为例,服务器可以将这个100维的句子向量分割为多个子句子向量,这些子句子向量的总维数为100维。服务器在预设文本特征库中聚类出子文本特征对应的目标子文本特征库,通过在预设文本特征库中对子文本特征进行聚类,可以快速找到各个子文本特征分别对应的目标子文本特征库,服务器可以根据与目标子文本特征库中的文本特征聚类后的残差,确定子文本特征与目标子文本特征库中每一文本特征的距离,得到待识别文本的子文本特征与目标子文本特征库中的文本特征的初始相似度。然后,对初始相似度进行融合,得到待识别文本的文本特征与预设文本特征库中的文本特征的相似度。融合的方式可以有多种,比如,服务器可以将目标子文本特征库中的文本特征进行按照预设的文本类型进行分类,譬如,可以将每个目标子文本特征库中文本特征分为正常文本对应的垃圾文本特征集合和垃圾文本对应的垃圾文本特征集合,对正常文本特征集合和垃圾文本特征集合中的文本特征按照相似度的大小进行排序,将每个目标子文本特征库中的正常文本特征集合和垃圾文本特征集合中安排排序后的序号进行融合,得到待识别文本的文本特征与预设文本特征库的文本特征的相似度,比如,待识别文本的文本特征包括n个子文本特征,将这n个子文本特征对应的目标子文本特征库中的正常文本特征集合中相似度排第一的正常文本特征的相似度进行相乘,就可以得到待识别文本的文本特征与预设文本特征库中的正常文本特征的最大的相似度k1,同理,在所有对应的目标子文本特征库中的垃圾文本特征集合中相似度排第一的垃圾文本特征的相似度进行相乘,就可以得到待识别文本的文本特征与预设文本特征库中的垃圾文本特征的最大相似度h1,根据上述的方法,就可以计算出待识别文本的文本特征与预设文本特征库的正常文本特征和垃圾文本特征的相似度。该相似度可以包括与正常文本特征相似的正常文本相似度和与垃圾文本特征相似的垃圾文本相似度。

可选的,将初始相似度进行融合的方式还有另一种,服务器将在预设的正常文本特征和垃圾文本特征也进行分段,然后,将分段的子正常文本特征和子垃圾文本特征进行聚类,得到多个目标子文本特征库,比如,预设的正常文本特征a分为a1、a2和a3等3个子正常文本特征,预设的垃圾文本特征b分为b1、b2和b3等3个子垃圾文本特征,将a1、a2和a3的初始相似度进行相乘,就可以得到预设的正常文本特征与待识别文本特征的相似度,也可以称之为正常文本相似度,同理,将b1、b2和b3的初始相似度进行相乘,就可以得到预设的垃圾文本特征与待识别文本特征的相似度,也可以称之为垃圾文本相似度。在此,需要说明的是,如果预设的正常文本特征中的子文本特征没有与待识别文本的子文本特征相似的文本特征时,就可以将这个预设的正常文本特征的子文本特征舍弃,比如,预设的正常文本特征a包括a1、a2和a3等3个子正常文本特征,但是这三个字子文本特征中a2与待识别文本的子文本特征的相似度为0,则在计算预设的正常文本特征a与待识别文本的文本特征的相似度时,只需要将与a1和a3的初始相似度相乘即可。对于预设的垃圾文本特征可以采用同样的计算方式。

(2)服务器根据相似度,对待识别文本进行识别。

例如,服务器可以在预设文本特征库中筛选出相似度在一个范围内的目标文本特征,譬如,可以为相似度超过预设相似度阈值的5个目标文本特征,还可以为相似度排序在前5的目标文本特征。当这些目标文本特征全部为正常文本特征时,可以确定待识别文本为正常文本,当这些目标文本特征全部为预设垃圾文本特征时,可以确定待识别文本为垃圾文本。当目标预设文本特征中存在预设正常文本特征和预设垃圾文本特征时,服务器在这些目标文本特征对应的相似度中筛选出待识别文本的文本特征与目标文本特征中预设的正常文本特征的相似度,将这些相似度称为正常文本相似度,同理,在这些目标文本特征对应的相似度中筛选出待识别文本的文本特征与目标文本特征中预设的垃圾文本特征的相似度,将这些相似度称为垃圾文本相似度。根据正常文本相似度和垃圾文本相似度,对待识别文本进行识别。比如,对正常文本相似度和垃圾文本相似度分别进行加权,得到正常文本相似度的第一加权值和垃圾文本相似度的第二加权值,譬如,还是以目标文本特征中包含2个预设的正常文本特征和3个预设的垃圾文本特征为例,根据2个预设的正常文本特征对应的权重,对这2个预设的正常文本特征的相似度进行加权,得到正常文本相似度对应的第一加权值,再根据3个预设的垃圾文本特征对应的权重,对这3个预设的垃圾文本特征的相似度进行加权,得到垃圾文本相似度对应的第二加权值。通过比较这两个加权值的大小,对待识别文本进行识别,就可以确定待识别文本的识别结果,比如,当第一加权值超过第二加权值时,可以确定待识别文本为正常文本,当第一加权值未超过第二加权值时,就可以确定待识别文本为垃圾文本。

可选的,当待识别文本为垃圾文本时,服务器就需要对待识别文本进行拦截处理,针对该待识别文本的状态不同,可以采用不同的拦截措施,比如,当该待识别文本已经发布到互联网上时,此时,服务器可以对该待识别文本进行召回并删除处理,当待识别文本还未发布至互联网时,服务器就在服务器自身的数据库中将待识别文本进行拦截并删除处理。对待识别文本进行拦截处理的过程中,服务器还可以获取发送或发布该待识别文本的终端的身份标识,对该身份标识对应的终端发布的其他文本信息再次进行检查,根据检查结果,确定发布的垃圾文本与全部文本信息的比例,如果发布的垃圾文本与全部文本信息的比例超过预设比例阈值时,还可以该身份标识对应的终端禁止发布文本信息等拦截处理方式。

可选的,当待识别文本为正常文本时,在这种情况下,服务器就不必对待识别文本进行拦截处理,而是对待识别文本进行放行,比如,当待识别文本已经发布至互联网时,就不必处理,当待识别文本还未发布至互联网时,就可以对待识别文本进行放行,使得待识别文本可以发布至互联网时。

由以上可知,本申请的实施例中服务器在获取待识别文本和待识别文本在所属业务平台所使用的字体后,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别;由于该方案可以在待识别文本中筛选出特殊字符,并将特殊字符转换成预设文本字符中的文本字符,可以大大提升对待识别文本中的文本字符的识别准确率,使得在待识别文本识别出垃圾文本的准确率大大提升。

为了更好地实施以上方法,本发明实施例还提供一种文本识别装置,该文本识别装置可以集成在电子设备,比如服务器或终端等设备中,该终端可以包括平板电脑、笔记本电脑和/或个人计算机等。

例如,如图9所示,该文本识别装置可以包括获取单元301、转换单元302、筛选单元303、确定单元304和识别单元305,如下:

(1)获取单元301;

获取单元301,用于获取待识别文本和所述待识别文本在所属业务平台所使用的字体,该待识别文本包括多个文本字符。

例如,获取单元301,具体可以用于在社交或即时通讯系统的服务器或数据库中中获取用户发送或者上传的ugc文本,还可以定时定期从互联网中爬取当前时间段产生的ugc文本,将这些ugc文本作为待识别文本。在获取这个ugc文本的时候,也可以一并获取这些ugc文本被制造和显示的业务平台中所使用的字体。

(2)转换单元302;

转换单元302,用于在待识别文本字符中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像。

例如,转换单元302,具体可以用于将待识别文本的文本字符中的与预设文本字符库中的字符进行对比和匹配,将文本字符中的不属于预设文本字符中的字符筛选出来,得到筛选出来的特殊字符,并将特殊字符按照字体转换为图像,得到字符图像。

(3)筛选单元303;

筛选单元303,用于采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符。

例如,筛选单元303,具体可以用于采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,将不同尺度对应的局部特征信息通过隐藏层进行局部特征信息进行线性分类,将分类后的局部特征信息进行融合,得到字符图像对应的全局特征信息,根据全局特征信息,在预设文本字符库中筛选出与字符图像相似的候选文本字符。

(4)确定单元304;

确定单元304,用于根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符。

例如,确定单元304,具体可以用于当筛选出的与字符图像相似的候选文本字符的数量为一个时,将候选文本字符作为特殊字符对应的目标文本字符,当筛选出的与字符图像相似的候选文本字符的数量为多个时,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符。

(5)识别单元305;

识别单元305,用于基于目标文本字符,对待识别文本进行识别;

其中,识别单元305还可以包括替换子单元3051、提取子单元3052和识别子单元3053,如图10所示,

替换子单元3051,用于将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符;

提取子单元3052,用于对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征;

确定子单元3053,用于根据待识别文本的文本特征,对待识别文本进行识别。

例如,替换子单元3051将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符,提取子单元3052对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征,确定子单元3053根据待识别文本的文本特征,对待识别文本进行识别。

可选的,文本识别装置还可以包括采集单元307和训练单元308,如图11所示,具体可以如下:

采集单元306,用于采集字符图像样本,该字符图像样本包括已标注文本字符的字符图像;

训练单元307,用于采用预设图像识别模型对字符图像样本对应的预设文本字符库中的文本字符进行预测,得到预测结果,根据预测结果与字符图像样本的标注结果对预设识别模型进行收敛,得到图像识别模型。

例如,采集单元307采集字符图像样本,该字符图像样本包括已标注文本字符的字符图像,训练单元308采用预设图像识别模型对字符图像样本对应的预设文本字符库中的文本字符进行预测,得到预测结果,根据预测结果与字符图像样本的标注结果对预设识别模型进行收敛,得到图像识别模型。

具体实施时,以上各个单元可以作为独立的实体来实现,也可以进行任意组合,作为同一或若干个实体来实现,以上各个单元的具体实施可参见前面的方法实施例,在此不再赘述。

由以上可知,本实施例在获取单元301获取待识别文本和待识别文本在所属业务平台所使用的字体后,该待识别文本包括多个文本字符,转换单元302在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,筛选单元303采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,确定单元304根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,识别单元305基于目标文本字符,对待识别文本进行识别;由于该方案可以在待识别文本中筛选出特殊字符,并将特殊字符转换成预设文本字符中的文本字符,可以大大提升对待识别文本中的文本字符的识别准确率,使得在待识别文本识别出垃圾文本的准确率大大提升。

本发明实施例还提供一种电子设备,如图12所示,其示出了本发明实施例所涉及的电子设备的结构示意图,具体来讲:

该电子设备可以包括一个或者一个以上处理核心的处理器401、一个或一个以上计算机可读存储介质的存储器402、电源403和输入单元404等部件。本领域技术人员可以理解,图12中示出的电子设备结构并不构成对电子设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:

处理器401是该电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器402内的软件程序和/或模块,以及调用存储在存储器402内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。可选的,处理器401可包括一个或多个处理核心;优选的,处理器401可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器401中。

存储器402可用于存储软件程序以及模块,处理器401通过运行存储在存储器402的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器402可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器402还可以包括存储器控制器,以提供处理器401对存储器402的访问。

电子设备还包括给各个部件供电的电源403,优选的,电源403可以通过电源管理系统与处理器401逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源403还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。

该电子设备还可包括输入单元404,该输入单元404可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。

尽管未示出,电子设备还可以包括显示单元等,在此不再赘述。具体在本实施例中,电子设备中的处理器401会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器402中,并由处理器401来运行存储在存储器402中的应用程序,从而实现各种功能,如下:

获取待识别文本和待识别文本在所属业务平台所使用的字体,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别。

例如,获取待识别文本和所述待识别文本在所属业务平台所使用的字体,将文本字符中的与预设文本字符库中的字符进行对比和匹配,将文本字符中的不属于预设文本字符中的字符筛选出来,得到筛选出来的特殊字符,并将特殊字符按照字体转换为图像,得到字符图像。采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,将不同尺度对应的局部特征信息通过隐藏层进行局部特征信息进行线性分类,将分类后的局部特征信息进行融合,得到字符图像对应的全局特征信息,根据全局特征信息,在预设文本字符库中筛选出与字符图像相似的候选文本字符。当筛选出的与字符图像相似的候选文本字符的数量为一个时,将候选文本字符作为特殊字符对应的目标文本字符,当筛选出的与字符图像相似的候选文本字符的数量为多个时,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符。将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符,对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征,根据待识别文本的文本特征,对待识别文本进行识别。当待识别文本为垃圾文本时,对待识别文本进行拦截。

以上各个操作的具体实施可参见前面的实施例,在此不作赘述。

由以上可知,本申请实施例在获取待识别文本和待识别文本在所属业务平台所使用的字体后,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别;由于该方案可以在待识别文本中筛选出特殊字符,并将特殊字符转换成预设文本字符中的文本字符,可以大大提升对待识别文本中的文本字符的识别准确率,使得在待识别文本识别出垃圾文本的准确率大大提升。

本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。

为此,本发明实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种文本识别方法中的步骤。例如,该指令可以执行如下步骤:

获取待识别文本和待识别文本在所属业务平台所使用的字体,该待识别文本包括多个文本字符,在待识别文本中筛选出不属于预设文本字符库中的文本字符,得到特殊字符,并将特殊字符按照字体转换为图像,得到字符图像,采用图像识别模型对字符图像进行识别,以在预设文本字符库中筛选出与字符图像相似的候选文本字符,该图像识别模型由多个字符图像样本训练而成,字符图像样本由预设文本字符库中的文本字符按照不同字体转换而成的图像,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符,基于目标文本字符,对待识别文本进行识别。

例如,获取待识别文本和所述待识别文本在所属业务平台所使用的字体,将文本字符中的与预设文本字符库中的字符进行对比和匹配,将文本字符中的不属于预设文本字符中的字符筛选出来,得到筛选出来的特殊字符,并将特殊字符按照字体转换为图像,得到字符图像。采用图像识别模型对字符图像进行多尺度的特征提取,得到不同尺度对应的局部特征信息,将不同尺度对应的局部特征信息通过隐藏层进行局部特征信息进行线性分类,将分类后的局部特征信息进行融合,得到字符图像对应的全局特征信息,根据全局特征信息,在预设文本字符库中筛选出与字符图像相似的候选文本字符。当筛选出的与字符图像相似的候选文本字符的数量为一个时,将候选文本字符作为特殊字符对应的目标文本字符,当筛选出的与字符图像相似的候选文本字符的数量为多个时,根据特殊字符在待识别文本的上下文信息,在候选文本字符中确定出特殊字符对应的目标文本字符。将待识别文本的文本字符中的特殊字符替换为目标文本字符,得到待识别文本的可识别文本字符,对待识别文本的可识别文本字符进行特征提取,以得到待识别文本的文本特征,根据待识别文本的文本特征,对待识别文本进行识别。当待识别文本为垃圾文本时,对待识别文本进行拦截。

以上各个操作的具体实施可参见前面的实施例,在此不再赘述。

其中,该计算机可读存储介质可以包括:只读存储器(rom,readonlymemory)、随机存取记忆体(ram,randomaccessmemory)、磁盘或光盘等。

由于该计算机可读存储介质中所存储的指令,可以执行本发明实施例所提供的任一种文本识别方法中的步骤,因此,可以实现本发明实施例所提供的任一种文本识别方法所能实现的有益效果,详见前面的实施例,在此不再赘述。

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

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1