CN110717328A - 文本识别方法、装置、电子设备及存储介质 - Google Patents
文本识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110717328A CN110717328A CN201910600211.1A CN201910600211A CN110717328A CN 110717328 A CN110717328 A CN 110717328A CN 201910600211 A CN201910600211 A CN 201910600211A CN 110717328 A CN110717328 A CN 110717328A
- Authority
- CN
- China
- Prior art keywords
- text
- recognized
- length
- subsequence
- sequence
- 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.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请示出了一种文本识别方法、装置、电子设备及存储介质,所述文本识别方法包括:获取待识别文本的基本特征集合;生成与待识别文本对应的文字文本;分别从待识别文本和文字文本中提取连续重复子序列特征;基于连续重复子序列特征和基本特征集合进行特征聚类,得到聚类结果,并基于聚类结果检测待识别文本是否为包含重复序列的文本。基于连续重复子序列特征及基本特征集合进行特征聚类,确定待识别文本的类型,由于基本特征集合能够体现霸屏、刷队类评论特殊符号多的特点,连续重复子序列特征能够体现霸屏、刷队类评论重复率高的特点,因此,本申请能够更加准确地识别出霸屏、刷队类垃圾评论文本。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种文本识别方法、装置、电子设备及存储介质。
背景技术
当前技术中,社交平台中用户自由发表的评论极大地提升了用户的观看感受,连接了用户和作者,用户和用户之间的社交关系。然而一些用户发布的霸屏、刷队等垃圾评论严重影响了正常用户的体验。
相关技术中的评论检测方法主要包括基于规则,基于词频、垃圾词汇分布特征以及基于评论语义分布特征三类方法。这些方法是实现霸屏、刷队、欺凌、低俗、滥发Spam等类别垃圾评论的通用检测方法。在需要检测出特定类别如霸屏、刷队类评论的应用场景下,仍然使用这些通用检测方法,准确率较低。
发明内容
为克服相关技术中存在的问题,本申请提供一种文本识别方法、装置、电子设备及存储介质。
根据本申请的第一方面,提供一种文本识别方法,所述方法包括:
获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
基于所述连续重复子序列特征和所述基本特征集合进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
在一种可选地实现方式中,所述获取待识别文本的基本特征集合的步骤,包括:
计算所述待识别文本所包含的文字文本的长度以及连续特殊符号序列的最大长度,其中,所述连续特殊符号序列是由连续的特殊符号组成的序列,所述特殊符号为所述待识别文本中除汉字、字母和表情符号之外的符号;
根据所述文字文本的长度以及所述待识别文本的长度,计算所述待识别文本所包含文字文本的第一占比;
根据所述连续特殊符号序列的最大长度以及所述待识别文本的长度,计算所述连续特殊符号序列的第二占比;
将所述文字文本的长度、所述连续特殊符号序列的最大长度、所述第一占比以及所述第二占比确定为所述基本特征集合的元素。
在一种可选地实现方式中,所述分别从所述待识别文本和所述文字文本中提取连续重复子序列特征的步骤,包括:
分别生成所述待识别文本和所述文字文本的字符序列;
当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列;
将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及在相应文本中的占比,确定为相应文本的连续重复子序列特征。
在一种可选地实现方式中,当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列的步骤,包括:
根据字符序列,按照预设规则生成多个后缀树序列以及与各所述后缀树序列对应的编码;
确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列;
当所述第一后缀树序列的编码与所述第二后缀树序列的编码之差绝对值等于所述预设长度,且所述第一目标子序列与所述第二目标子序列之间的相似度大于或等于预设阈值时,确定所述第一目标子序列与所述第二目标子序列为连续重复相似子序列。
在一种可选地实现方式中,在所述确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列的步骤之前,还包括:
获得字符序列的自相关函数;
根据所述自相关函数极大值出现的位置,确定所述字符序列中字符串的重复周期;
根据所述重复周期,确定所述预设长度。
在一种可选地实现方式中,所述基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类的步骤,包括:
采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类。
在一种可选地实现方式中,在所述采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类的步骤之前,还包括:
获得样本文本,并对所述样本文本进行标注,获得所述样本文本的类型标签;
采用决策树算法,对所述样本文本的连续重复子序列特征、所述样本文本的基本特征集合以及所述类型标签进行模型训练,获得所述聚类模型。
根据本申请的第二方面,提供一种文本识别装置,所述装置包括:
获取模块,被配置为获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成模块,被配置为生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
提取模块,被配置为分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
聚类模块,被配置为基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
在一种可选地实现方式中,所述获取模块还被配置为:
计算所述待识别文本所包含的文字文本的长度以及连续特殊符号序列的最大长度,其中,所述连续特殊符号序列是由连续的特殊符号组成的序列,所述特殊符号为所述待识别文本中除汉字、字母和表情符号之外的符号;
根据所述文字文本的长度以及所述待识别文本的长度,计算所述待识别文本所包含文字的第一占比;
根据所述连续特殊符号序列的最大长度以及所述待识别文本的长度,计算所述连续特殊符号序列的第二占比;
将所述文字文本的长度、所述连续特殊符号序列的最大长度、所述第一占比以及所述第二占比确定为所述基本特征集合的元素。
在一种可选地实现方式中,所述提取模块包括:
第一单元,被配置为分别生成所述待识别文本和所述文字文本的字符序列;
第二单元,被配置为当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列;
第三单元,被配置为将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及在相应文本中的占比,确定为相应文本的连续重复子序列特征。
在一种可选地实现方式中,所述第二单元还被配置为:
根据字符序列,按照预设规则生成多个后缀树序列以及与各所述后缀树序列对应的编码;
确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列;
当所述第一后缀树序列的编码与所述第二后缀树序列的编码之差绝对值等于所述预设长度,且所述第一目标子序列与所述第二目标子序列之间的相似度大于或等于预设阈值时,确定所述第一目标子序列与所述第二目标子序列为连续重复相似子序列。
在一种可选地实现方式中,所述第二单元还被配置为:
获得字符序列的自相关函数;
根据所述自相关函数极大值出现的位置,确定所述字符序列中字符串的重复周期;
根据所述重复周期,确定所述预设长度。
在一种可选地实现方式中,所述聚类模块还被配置为:
采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类。
在一种可选地实现方式中,所述装置还包括训练模块,所述训练模块被配置为:
获得样本文本,并对所述样本文本进行标注,获得所述样本文本的类型标签;
采用决策树算法,对所述样本文本的连续重复子序列特征、所述样本文本的基本特征集合以及所述类型标签进行模型训练,获得所述聚类模型。
根据本申请的第三方面,提供一种电子设备,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行如第一方面所述的文本识别方法。
根据本申请的第四方面,提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如第一方面所述的文本识别方法。
根据本申请的第五方面,提供一种计算机程序产品,当所述计算机程序产品中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如第一方面所述的文本识别方法。
本申请提供的技术方案可以包括以下有益效果:
本申请技术方案,基于连续重复子序列特征以及基本特征集合进行特征聚类,确定待识别文本的类型,由于基本特征集合能够体现霸屏、刷队类评论特殊符号多的特点,连续重复子序列特征能够体现霸屏、刷队类评论重复率高的特点,因此,本申请技术方案能够更加准确地识别出霸屏、刷队类垃圾评论文本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。
图1是本申请实施例示出的几种霸屏评论文本。
图2是本申请实施例示出的几种刷队评论文本。
图3是本申请实施例示出的一种文本识别方法的步骤流程图。
图4是本申请实施例示出的一种提取连续重复子序列特征的步骤流程图。
图5是本申请实施例示出的一种确定连续重复相似子序列的步骤流程图。
图6a是本申请实施例示出的一种连续重复相同子序列的自相关函数曲线图。
图6b是本申请实施例示出的一种连续重复相似子序列的自相关函数曲线图。
图7是本申请实施例示出的一种获得聚类模型的步骤流程图。
图8是本申请实施例示出的训练样本中连续重复相似子序列整体占比的分布图。
图9是本申请实施例示出的一种文本识别装置的结构框图。
图10是本申请实施例示出的一种电子设备的框图。
图11是本申请实施例示出的一种电子设备的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
根据提取评论特征方法的差异,现有垃圾评论识别方法主要包括基于规则,基于词频、垃圾词汇分布特征以及基于评论语义分布特征三类方法。其中,基于词分布和文档特征的垃圾评论自动分类方法,通过统计网络评论的关键词频分布和文档特征并进行贝叶斯分类实现垃圾评论的自动分类。基于评论相似度的垃圾评论识别方法和装置,通过训练评论数据的语言模型获得评论概率分布并建立垃圾评论概率分布库,然后通过比较评论概率分布与库中评论概率分布相似度确定评论实现垃圾评论的检测。基于文本多向量表示相互学习的垃圾评论过滤方法,该方法首先获取文本的多向量表示,然后使用分类器对多向量进行分类。基于分层注意力机制神经网络的垃圾评论检测模型,通过基于层次注意力的神经网络HANN获得句子的语义表示特征并实现分类。
垃圾评论包括霸屏、刷队、欺凌、低俗、Spam等类别,现有垃圾评论检测技术方案均是实现这些不同类别垃圾评论的通用检测方法。为实现这些不同类别垃圾评论的通用检测,通过提取评论词或句子分布表达特征等进行分类实现检测。
图1示出了几种霸屏评论,霸屏评论通过发布大篇幅无意义的信息达到占领评论篇幅的目的。发明人发现,霸屏评论的主要特点是空格、制表回车符等特殊符号占比极高,部分霸屏评论还会连续生成多个相同的特殊符号、标点符号序列。
图2示出了几种刷队评论,发明人发现刷队评论通常由相同或相似的字符串重复组成。根据刷队评论由相同或相似的字符串重复组成,可以将刷队评论分为相同字符类别或相似字符类别。
由此可见,霸屏、刷队类评论具有特殊符号多、重复率高的特点,使用现有技术方案进行霸屏、刷队类评论检测无法体现霸屏、刷队类评论所具有的显著特征,无法实现高精度的检测。
为了解决上述技术问题,参照图3示出了本申请一实施例提供的一种文本识别方法,该方法包括以下步骤。
在步骤S301中,获取待识别文本的基本特征集合,其中,基本特征集合为待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合。
其中,基本特征集合例如可以包括:汉字、字母、数字、emoji字符、标点符号、空格、制表回车符和其他符号8个类别中各类别的长度及在待识别文本中的占比等特征中一个或多个。
具体地,可以根据字符类别,对待识别文本进行预处理,即将待识别文本分为汉字、字母、数字、emoji字符、标点符号、空格、制表回车符和其他符号8个类别,然后分别计算各个类别的长度及在待识别文本中的占比,进而确定基本特征集合。
当基本特征集合为文字文本长度、文字文本占比(或非文字文本占比)、连续特殊符号序列的最大长度以及特殊字符占比的组合时,能达到更好的识别效果,识别精确度更高。其中,文字文本长度例如可以是待识别文本中连续或非连续的汉字文本的长度;连续特殊符号序列是由连续的特殊符号组成的序列,由于字母、emoji符号在文本中通常具有含义,因此特殊符号为待识别文本中除汉字、字母和表情符号之外的符号。这种情况下,获取待识别文本的基本特征集合的步骤可以包括:
计算待识别文本所包含的文字文本的长度(如汉字文本长度)以及连续特殊符号序列的最大长度;根据文字文本的长度以及待识别文本的长度,计算待识别文本所包含文字文本在待识别文本中的第一占比;根据连续特殊符号序列的最大长度以及待识别文本的长度,计算连续特殊符号序列在待识别文本中的第二占比;将文字文本长度、连续特殊符号序列的最大长度、第一占比以及第二占比确定为基本特征集合的元素。
在步骤S302中,生成与待识别文本对应的文字文本,其中,文字文本为包含待识别文本的文字、且不包含各预定类型符号的文本。
具体地,文字文本可以是将待识别文本中的特殊字符去掉之后得到的文本。
在步骤S303中,分别从待识别文本和文字文本中提取连续重复子序列特征,其中,连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息。
其中,连续重复子序列特征可以包括连续重复相同子序列或连续重复相似子序列的重复次数、长度以及在相应文本中的占比等特征。
在实际应用中,可以采用重复文本搜索算法,分别从根据待识别文本和文字文本生成的字符序列中,提取连续出现且长度和相似度均符合预设条件的目标子序列,然后根据目标子序列的重复次数、长度以及在相应文本中的占比确定相应文本的连续重复子序列特征。其中,重复文本搜索算法可以是后缀树算法,还可以是基于自相关周期估计和jaccard相似度度量的重复文本搜索算法。后续实施例会对连续重复子序列特征的提取过程进行详细介绍。
在步骤S304中,基于连续重复子序列特征和基本特征集合进行特征聚类,得到聚类结果,并基于聚类结果检测待识别文本是否为包含重复序列的文本。
在实际应用中,可以采用近邻传播算法、Mean-shift等聚类算法对连续重复子序列特征和基本特征集合进行特征聚类,还可以采用预先训练得到的聚类模型对连续重复子序列特征和基本特征集合进行特征聚类。
具体地,根据聚类结果可以确定待识别文本是否为霸屏刷队类评论,进而还可以根据待识别文本中是否包含重复序列,确定待识别文本属于刷队评论或霸屏评论,例如当待识别文本中包含重复序列时,可以确定待识别文本为刷队评论,否则为霸屏评论。
本实施例提供的文本识别方法可以用于识别电商用户评论,微博用户评论,社交媒体评论以及短视频评论等评论。
本实施例提供的文本识别方法,基于连续重复子序列特征以及基本特征集合进行特征聚类,确定待识别文本的类型,由于基本特征集合能够体现霸屏、刷队类评论特殊符号多的特点,连续重复子序列特征能够体现霸屏、刷队类评论重复率高的特点,因此,本申请技术方案能够更加准确地识别出霸屏、刷队类垃圾评论文本。
参照图4,在步骤303中可以进一步包括:
在步骤S401中,分别生成待识别文本和文字文本的字符序列。
具体地,该步骤可以包括:生成待识别文本的字符序列,以及生成待识别文本中的文字文本的字符序列。其中,文字文本是将待识别文本中的特殊字符去掉之后得到的文本。同时生成待识别文本和文字文本的字符序列,可以进一步提高垃圾评论识别准确度。
在步骤S402中,当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定目标子序列为相应文本的连续重复相似子序列。
在实际应用中,该步骤具体都可以包括:当待识别文本的字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定该目标子序列为待识别文本的连续重复相似子序列,以及当文字文本的字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定目标子序列为文字文本的连续重复相似子序列。
其中,预设条件例如可以是长度为字符序列中重复字符串的长度即重复周期,以及重复周期附近的长度值等,相似度大于或等于预设阈值如70%等。预设条件可以根据实际情况确定,本实施例对此不作具体限定。
在步骤S403中,将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及相应文本中的占比,确定为相应文本的连续重复子序列特征。
在实际应用中,当待识别文本的字符序列中存在多个连续重复相似子序列时,待识别文本的连续重复子序列特征可以是待识别文本中重复次数最大的连续重复子序列的重复次数、长度以及在待识别文本中的占比等特征的组合特征。
当文字文本的字符序列中存在多个连续重复相似子序列时,文字文本的连续重复子序列特征可以是文字文本中重复次数最大的连续重复子序列的重复次数、长度以及在文字文本中的占比等特征的组合特征。
下面以一个待识别文本为例对提取连续重复子序列特征的过程进行说明。假设预设条件为目标子序列的长度为2,相似度为100%即两个目标子序列相同。
当待识别文本为xy%z&x*y@x#yz时,生成待识别文本的字符序列s’={s0’,s1’,s2’,……s12’},其中s0’=x,s1’=y,s2’=%,…,s12’=z。该字符序列中不存在连续的且长度和相似度均满足上述预设条件的两个目标子序列,因此不存在连续重复相似子序列。
从待识别文本中提取文字文本为xyzxyxyz,生成文字文本的字符序列s={s0,s1,s2,……s7},其中s0=x,s1=y,s2=z,…,s7=z。该字符序列中存在连续的且长度和相似度均满足上述预设条件的两个目标子序列,即s3s4(xy)和s5s6(xy),因此文字文本的字符序列中存在连续重复相似子序列xy,并且xy为该字符序列中重复次数最大的连续重复子序列。进而可以确定重复次数最大的连续重复相似子序列xy的重复次数为2,长度为2位字符,在字符序列中的占比为25%。
当相似度为100%时,提取连续重复相似子序列即提取连续重复相同子序列,具体可描述为“已知一个字符序列,求该字符序列中连续出现次数最多的2位字符串”,对于文字文本xyzxyxyz的字符序列s,在实际应用中可以使用字符串后缀树搜索算法进行求解,首先生成字符序列s的后缀树序列,如下表1所示。
表1文字文本xyzxyxyz的字符序列s的后缀树序列
后缀树数组 | 后缀树序列 |
substrs[0] | x y z x y x y z |
substrs[1] | y z x y x y z |
substrs[2] | z x y x y z |
substrs[3] | x y x y z |
substrs[4] | y x y z |
substrs[5] | x y z |
substrs[6] | y z |
substrs[7] | z |
通过比较后缀树序列substrs[i]和后缀树序列substrs[j]的前j-i个字符,如果相同则可以确定该j-i个字符为连续重复相同子序列。如表1所示,后缀树序列substrs[3]的前两个字符与后缀树序列substrs[5]的前两个字符相同,因此xy为连续重复相同子序列。遍历所有的后缀树序列可以确定重复次数最多的连续重复相同子序列为xy,重复次数为2。
以上过程可以通过基于后缀树的连续重复相同子序列提取的算法1实现。
算法1基于后缀树的连续重复相同子序列提取算法
其中,输入的字符序列s可以是待识别文本的字符序列或者是文字文本的字符序列。当字符序列s为上述文字文本xyzxyxyz的字符序列时,N=8,s={s0,s1,s2,……s7},其中s0=x,s1=y,s2=z,…,s7=z,根据算法1中第1部分的后缀树公式substrs[i]=s[i:N-1],生成后缀树序列substrs[i],i=0~7,结果如表1所示。然后采用算法1中第2部分搜索连续重复相同子序列,即通过比较后缀树序列substrs[i]和后缀树序列substrs[j]的前j-i个字符,分别为substrs[i][0:j-i-1]和substrs[j][0:j-i-1],如果substrs[i][0:j-i-1]和substrs[j][0:j-i-1]相同,则可以确定该j-i个字符为连续重复相同子序列,遍历所有的后缀树序列substrs[k]可以确定重复次数最多的连续重复相同子序列msubstr(如xy)、连续重复相同子序列的长度l(如2)以及重复次数maxcount(如2),并且可以进一步确定出连续重复相同子序列在文字文本xyzxyxyz的字符序列s中的占比rmax=maxcount*l/L(如25%),其中L为字符序列s的总长度。
一种实现方式中,参照图5,在步骤S402中确定连续重复相似子序列的步骤具体可以包括:
在步骤S501中,根据字符序列,按照预设规则生成多个后缀树序列以及与各后缀树序列对应的编码。
在实际应用中,霸屏、刷队类评论对应的字符序列的特点是相似子序列呈周期性的分布,相似子序列之间仅仅相差一两个字符,长度基本固定。由于相似子序列并不完全相同(即相似度不是100%),这种情况下的连续重复相似子序列不能使用算法1进行提取。
具体地,以字符序列s={a,b,c,d,e,a,b,c,d,f,a,b,c,d,g}为例,按照预设规则如substrs[i]=s[i:N-1],(N=15),生成各后缀树序列s[i:N-1]以及各后缀树序列对应的编码即i,如下表2所示。
表2字符序列s的后缀树序列
后缀树数组 | 后缀树序列 |
substrs[0] | abcdeabcdfabcdg |
substrs[1] | bcdeabcdfabcdg |
substrs[2] | cdeabcdfabcdg |
substrs[3] | deabcdfabcdg |
substrs[4] | eabcdfabcdg |
substrs[5] | abcdfabcdg |
substrs[6] | bcdfabcdg |
… | … |
substrs[14] | g |
在步骤S502中,确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为预设长度的第二目标子序列。
具体地,第一后缀树序列和第二后缀树序列为多个后缀树序列中不同的两个后缀树序列。假设预设长度为3,第一后缀树序列为substrs[1],第二后缀树序列为substrs[4],则第一目标子序列ss1为bcd,第二目标子序列ss2为eab。
为避免暴力式的多维搜索,在未知连续重复相似子序列长度的情况下,需要考虑如何确定预设长度以进行子序列的提取。由于周期序列的自相关函数在序列周期处呈现峰值,考虑到相似子序列周期性分布的特点,因此,可以通过寻找字符序列自相关函数的极大值确定相似子序列的重复周期,然后再根据重复周期确定预设长度。
例如,确定预设长度的步骤具体可以包括:获得字符序列的自相关函数;根据自相关函数极大值出现的位置,确定字符序列中字符串的重复周期;根据重复周期,确定预设长度。
具体地,为计算字符序列s的自相关函数,首先可以对字符序列进行数字编码。若字符序列s={s0,s1,s2,……sN-1}的数字编码序列为x={x0,x1,x2,……xN-1}则其自相关函数定义为:
若字符序列的重复周期为T,则R(k)在k=T处达到极大值,因此周期T的估计公式为:
例如,若字符序列s为abcdeabcdeabcdeabcdeabcde,包括连续重复相同子序列,数字编码序列x为1234512345123451234512345,如图6a为其自相关函数曲线图。若字符序列s为abcdeabcdfabcdgabcdxabcdy,包括连续重复相似子序列,数字编码序列x为1234512346123471234812349,其自相关函数如图6b所示。观察结果可知,字符序列s的自相关函数均在周期T=5的位置达到极大值,可以确定字符序列s中字符串的重复周期为5。其中,字符序列s可以是待识别文本的字符序列或者是文字文本的字符序列。
在实际应用中,预设长度可以设定为重复周期,以及重复周期±1的数值(即预设长度与重复周期之差的绝对值为1)等,预设长度的具体取值可以根据实际情况确定,本申请对此不作限定。
通过合理设定预设长度可以提升计算速率,无需从任意长度的目标子序列中确定连续重复相似子序列,避免暴力搜索导致计算复杂的问题。
在步骤S503中,当第一后缀树序列的编码与第二后缀树序列的编码之差绝对值等于预设长度,且第一目标子序列与第二目标子序列之间的相似度大于或等于预设阈值时,确定第一目标子序列与第二目标子序列为连续重复相似子序列。
具体地,当第一后缀树序列substrs[i]的编码i与第二后缀树序列substrs[j]的编码j之差的绝对值|j-i|等于上述预设长度时,可以计算第一目标子序列ss1与第二目标子序列ss2之间的相似度,当相似度大于或等于预设阈值如70%时,确定第一目标子序列ss1与第二目标子序列ss2为连续重复相似子序列。预设阈值的具体数值可以根据实际情况确定,本申请对此不作限定。
为提取连续重复相似子序列,需要考虑字符子序列相似的度量准则。考虑到相似子序列仅仅相差一两个字符,可以采用Jaccard相似度进行子序列相似性度量。
因此,第一目标子序列ss1与第二目标子序列ss2之间的相似度可以通过计算二者之间的jaccard相似度J(ss1,ss2)获得:
其中ss1∩ss2为第一目标子序列ss1与第二目标子序列ss2的交集,ss1∪ss2为第一目标子序列ss1与第二目标子序列ss2的并集,|·|为集合数目。
本实施例中,基于子序列的Jaccard相似度度量准则和基于自相关函数的子序列周期估计,从字符序列s中提取连续重复相似子序列,并确定重复次数最大的连续重复相似子序列的重复次数等,具体流程如以下算法2所示。其中,为避免暴力搜索导致计算复杂的问题,在进行基于后缀树进行相似子序列搜索时可以判断当前相似子序列长度|j-i|与估计周期T之差绝对值是否小于等于1。
算法2基于Jaccard相似度和自相关函数周期估计的连续重复相似子序列提取算法
其中,输入的字符序列s可以是待识别文本的字符序列或者是文字文本的字符序列。当字符序列s={a,b,c,d,e,a,b,c,d,f,a,b,c,d,g}时,N=15,其中s0=a,s1=b,s2=c,…,s14=g,根据算法2中第1部分计算字符序列的自相关函数R(k),确定重复周期T=5。根据算法2中第2部分的后缀树公式substrs[i]=s[i:N-1],生成后缀树序列substrs[i],i=0~14,结果如表2所示。然后采用算法2中第3部分搜索连续重复相似子序列,当目标子序列的长度(即预设长度=|j-i|)与重复周期T之差的绝对值即|j-i-T|小于或等于1时,比较第一后缀树序列substrs[i]自首位起长度为预设长度的第一目标子序列substrs[i][0:j-i-1],与第二后缀树序列substrs[j]中自首位起长度为预设长度的第二目标子序列substrs[j][0:j-i-1]之间的相似度jaccard(substrs[i][0:j-i-1],substrs[j][0:j-i-1]),如果相似度大于预设阈值thres,则确定第一目标子序列与第二目标子序列为连续重复相似子序列,遍历所有的后缀树序列substrs[k]可以确定重复次数最多的连续重复相似子序列msubstr、连续重复相似子序列的长度l以及重复次数maxcount,并且可以进一步确定出连续重复相似子序列在字符序列s中的占比rmax=maxcount*l/L,其中L为字符序列s的总长度。采用算法2提取得到的连续重复相似子序列也包括连续重复相同子序列。
一种实现方式中,在步骤S304中可以进一步包括:采用预先训练得到的聚类模型,对连续重复子序列特征和基本特征集合进行特征聚类。
参照图7,预先获得聚类模型的步骤可以包括:
在步骤S701中,获得样本文本,并对样本文本进行标注,获得样本文本的类型标签。
具体地,样本文本可以为电商用户评论,微博用户评论,社交媒体评论以及短视频评论等。根据样本文本是否为垃圾评论如霸屏、刷队类评论,对样本文本进行类型标签标注。
在步骤S702中,采用决策树算法,对样本文本的连续重复子序列特征、样本文本的基本特征集合以及类型标签进行模型训练,获得聚类模型。
其中,样本文本的连续重复子序列特征(可以包括原始样本文本的连续重复子序列特征,以及原始样本文本的文字文本的连续重复子序列特征)的提取可以参照在步骤S303中的描述,样本文本的基本特征集合的提取可以参照在步骤S301中的描述,这里不再赘述。
其中,决策树算法具体可以为Xgboost、随机森林、Adaboost或梯度提升决策树等。
下面以梯度提升决策树为例进行说明。梯度提升决策树(GBDT,GradientBoosting Decision Tree)通过沿着损失函数残差梯度方向融合多个弱分类器提升分类决策性能。若样本文本序列xi及对应的类型标签为yi,第m轮迭代弱分类器为T(x;θm),则最终的分类器为:
若弱分类器的损失函数定义为似然损失函数:
L(y,F(x))=∑yilog(F(xi))+(1-yi)log(1-F(xi))
则第m轮迭代弱分类器参数估计为
考虑到文本特征之间具有相关性,单一文本特征的阈值设定比较困难,使用梯度提升决策树分类算法GBDT进行特征集合的聚类。GBDT算法通过多个弱分类器的沿着分类残差梯度方向进行迭代学习集成,可以实现高精度的分类器。
采用本申请提供的文本识别方法,对海量评论数据进行验证,结果表明本申请技术方案对霸屏、刷队类评论具有极高的精确度和极低的误检测率。具体验证情况如下:
从标注样本中选择50000霸屏刷队,50000非霸屏刷队样本作为训练集,按照2:8比例从剩余样本库中抽取20000霸屏刷队,80000非霸屏刷队样本进行测试。考虑相似子序列长度分布和差异分布,算法2中Jaccard相似度预设阈值thres设置为0.7。图8为训练样本原始文本中连续重复相似子序列整体占比rmax的分布图,其中1表示霸屏刷队类别,2表示非霸屏刷队类别。观察结果可发现两类样本的rmax值呈现明显的双峰分布,霸屏刷队样本rmax分布在1.0附近,而非霸屏刷队样本rmax分布在0.2附近,通过rmax特征能够很好的区分两类文本。在rmax为1附近发现了一些非霸屏刷队样本,分析原因为非霸屏刷队文本中包含部分类似"666"或者之类的重复短文本,这类文本通过文本长度和非文字文本占比可以区分开来。表3为训练样本和测试样本的测试的结果。测试样本准确率和召回率均高于98.5%,实现了对霸屏、刷队类文本高精度、高召回的检测。
表3训练和测试样本检测正确率和召回率
类别 | 垃圾 | 非垃圾 | TP | FP | FN | Acc(%) | Rec(%) |
训练 | 50000 | 50000 | 49912 | 115 | 88 | 99.97 | 99.82 |
测试 | 20000 | 80000 | 19934 | 289 | 66 | 98.57 | 99.67 |
其中TP为垃圾样本正确检测的数目,FP为非垃圾样本检测为垃圾样本的数目,FN为垃圾样本错误检测的数目,Acc为准确率,Rec为召回率。
本实施例提供的文本识别方法,使用梯度提升决策树GBDT算法对提取的样本特征进行模型训练,得到文本的决策树,由于样本特征考虑了霸屏、刷队类评论特殊符号多、重复率高的特点,因此能够实现霸屏、刷队类评论的高精度检测。
图9是本申请示出的一种文本识别装置的框图。参照图9,该装置可以包括:
获取模块901,被配置为获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成模块902,被配置为生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
提取模块903,被配置为分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
聚类模块904,被配置为基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
在一种可选地实现方式中,所述获取模块901还被配置为:
计算所述待识别文本所包含的文字文本的长度以及连续特殊符号序列的最大长度,其中,所述连续特殊符号序列是由连续的特殊符号组成的序列,所述特殊符号为所述待识别文本中除汉字、字母和表情符号之外的符号;
根据所述文字文本的长度以及所述待识别文本的长度,计算所述待识别文本所包含文字的第一占比;
根据所述连续特殊符号序列的最大长度以及所述待识别文本的长度,计算所述连续特殊符号序列的第二占比;
将所述文字文本的长度、所述连续特殊符号序列的最大长度、所述第一占比以及所述第二占比确定为所述基本特征集合的元素。
在一种可选地实现方式中,所述提取模块303包括:
第一单元,被配置为分别生成所述待识别文本和所述文字文本的字符序列;
第二单元,被配置为当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列;
第三单元,被配置为将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及在相应文本中的占比,确定为相应文本的连续重复子序列特征。
在一种可选地实现方式中,所述第二单元还被配置为:
根据字符序列,按照预设规则生成多个后缀树序列以及与各所述后缀树序列对应的编码;
确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列;
当所述第一后缀树序列的编码与所述第二后缀树序列的编码之差绝对值等于所述预设长度,且所述第一目标子序列与所述第二目标子序列之间的相似度大于或等于预设阈值时,确定所述第一目标子序列与所述第二目标子序列为连续重复相似子序列。
在一种可选地实现方式中,所述第二单元还被配置为:
获得字符序列的自相关函数;
根据所述自相关函数极大值出现的位置,确定所述字符序列中字符串的重复周期;
根据所述重复周期,确定所述预设长度。
在一种可选地实现方式中,所述聚类模块304还被配置为:
采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类。
在一种可选地实现方式中,所述装置还包括训练模块305,所述训练模块305被配置为:
获得样本文本,并对所述样本文本进行标注,获得所述样本文本的类型标签;
采用决策树算法,对所述样本文本的连续重复子序列特征、所述样本文本的基本特征集合以及所述类型标签进行模型训练,获得所述聚类模型。
关于上述实施例中的装置,其中各个模块执行操作的具体方式以及有益效果已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图10是本申请示出的一种电子设备800的框图。例如,电子设备800可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
参照图10,电子设备800可以包括以下一个或多个组件:处理组件802,存储器804,电力组件806,多媒体组件808,音频组件810,输入/输出(I/O)的接口812,传感器组件814,以及通信组件816。
处理组件802通常控制电子设备800的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件802可以包括一个或多个处理器820来执行指令,以完成上述方法的全部或部分步骤。此外,处理组件802可以包括一个或多个模块,便于处理组件802和其他组件之间的交互。例如,处理组件802可以包括多媒体模块,以方便多媒体组件808和处理组件802之间的交互。
存储器804被配置为存储各种类型的数据以支持在设备800的操作。这些数据的示例包括用于在电子设备800上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图像,视频等。存储器804可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。
电源组件806为电子设备800的各种组件提供电力。电源组件806可以包括电源管理系统,一个或多个电源,及其他与为电子设备800生成、管理和分配电力相关联的组件。
多媒体组件808包括在所述电子设备800和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件808包括一个前置摄像头和/或后置摄像头。当设备800处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
音频组件810被配置为输出和/或输入音频信号。例如,音频组件810包括一个麦克风(MIC),当电子设备800处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器804或经由通信组件816发送。在一些实施例中,音频组件810还包括一个扬声器,用于输出音频信号。
I/O接口812为处理组件802和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
传感器组件814包括一个或多个传感器,用于为电子设备800提供各个方面的状态评估。例如,传感器组件814可以检测到设备800的打开/关闭状态,组件的相对定位,例如所述组件为电子设备800的显示器和小键盘,传感器组件814还可以检测电子设备800或电子设备800一个组件的位置改变,用户与电子设备800接触的存在或不存在,电子设备800方位或加速/减速和电子设备800的温度变化。传感器组件814可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件814还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件814还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
通信组件816被配置为便于电子设备800和其他设备之间有线或无线方式的通信。电子设备800可以接入基于通信标准的无线网络,如WiFi,运营商网络(如2G、3G、4G或5G),或它们的组合。在一个示例性实施例中,通信组件816经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件816还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。
在示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器804,上述指令可由电子设备800的处理器820执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图11是本申请示出的一种电子设备1900的框图。例如,电子设备1900可以被提供为一服务器。
参照图11,电子设备1900包括处理组件1922,其进一步包括一个或多个处理器,以及由存储器1932所代表的存储器资源,用于存储可由处理组件1922的执行的指令,例如应用程序。存储器1932中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件1922被配置为执行指令,以执行上述方法。
电子设备1900还可以包括一个电源组件1926被配置为执行电子设备1900的电源管理,一个有线或无线网络接口1950被配置为将电子设备1900连接到网络,和一个输入输出(I/O)接口1958。电子设备1900可以操作基于存储在存储器1932的操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM或类似。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本申请的其它实施方案。本申请旨在涵盖本申请的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本申请的一般性原理并包括本申请未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本申请的真正范围和精神由下面的权利要求指出。
需要说明的是,该方案中,涉及的用户信息(包括但不限于,设备信息、个人信息、操作行为信息)等,均是经用户授权而采集并进行后续处理或分析的。
应当理解的是,本申请并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本申请的范围仅由所附的权利要求来限制。
A1、一种文本识别方法,所述方法包括:
获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
基于所述连续重复子序列特征和所述基本特征集合进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
A2、根据A1所述的文本识别方法,所述获取待识别文本的基本特征集合的步骤,包括:
计算所述待识别文本所包含的文字文本的长度以及连续特殊符号序列的最大长度,其中,所述连续特殊符号序列是由连续的特殊符号组成的序列,所述特殊符号为所述待识别文本中除汉字、字母和表情符号之外的符号;
根据所述文字文本的长度以及所述待识别文本的长度,计算所述待识别文本所包含文字文本的第一占比;
根据所述连续特殊符号序列的最大长度以及所述待识别文本的长度,计算所述连续特殊符号序列的第二占比;
将所述文字文本的长度、所述连续特殊符号序列的最大长度、所述第一占比以及所述第二占比确定为所述基本特征集合的元素。
A3、根据A1所述的文本识别方法,所述分别从所述待识别文本和所述文字文本中提取连续重复子序列特征的步骤,包括:
分别生成所述待识别文本和所述文字文本的字符序列;
当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列;
将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及在相应文本中的占比,确定为相应文本的连续重复子序列特征。
A4、根据A3所述的文本识别方法,当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列的步骤,包括:
根据字符序列,按照预设规则生成多个后缀树序列以及与各所述后缀树序列对应的编码;
确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列;
当所述第一后缀树序列的编码与所述第二后缀树序列的编码之差绝对值等于所述预设长度,且所述第一目标子序列与所述第二目标子序列之间的相似度大于或等于预设阈值时,确定所述第一目标子序列与所述第二目标子序列为连续重复相似子序列。
A5、根据A4所述的方法,在所述确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列的步骤之前,还包括:
获得字符序列的自相关函数;
根据所述自相关函数极大值出现的位置,确定所述字符序列中字符串的重复周期;
根据所述重复周期,确定所述预设长度。
A6、根据A1至A5任一项所述的方法,所述基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类的步骤,包括:
采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类。
A7、根据A6所述的方法,在所述采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类的步骤之前,还包括:
获得样本文本,并对所述样本文本进行标注,获得所述样本文本的类型标签;
采用决策树算法,对所述样本文本的连续重复子序列特征、所述样本文本的基本特征集合以及所述类型标签进行模型训练,获得所述聚类模型。
A8、一种文本识别装置,所述装置包括:
获取模块,被配置为获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成模块,被配置为生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
提取模块,被配置为分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
聚类模块,被配置为基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
A9、根据A8所述的文本识别装置,所述获取模块还被配置为:
计算所述待识别文本所包含的文字文本的长度以及连续特殊符号序列的最大长度,其中,所述连续特殊符号序列是由连续的特殊符号组成的序列,所述特殊符号为所述待识别文本中除汉字、字母和表情符号之外的符号;
根据所述文字文本的长度以及所述待识别文本的长度,计算所述待识别文本所包含文字的第一占比;
根据所述连续特殊符号序列的最大长度以及所述待识别文本的长度,计算所述连续特殊符号序列的第二占比;
将所述文字文本的长度、所述连续特殊符号序列的最大长度、所述第一占比以及所述第二占比确定为所述基本特征集合的元素。
A10、根据A8所述的文本识别装置,所述提取模块包括:
第一单元,被配置为分别生成所述待识别文本和所述文字文本的字符序列;
第二单元,被配置为当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列;
第三单元,被配置为将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及在相应文本中的占比,确定为相应文本的连续重复子序列特征。
A11、根据A10所述的文本识别装置,所述第二单元还被配置为:
根据字符序列,按照预设规则生成多个后缀树序列以及与各所述后缀树序列对应的编码;
确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列;
当所述第一后缀树序列的编码与所述第二后缀树序列的编码之差绝对值等于所述预设长度,且所述第一目标子序列与所述第二目标子序列之间的相似度大于或等于预设阈值时,确定所述第一目标子序列与所述第二目标子序列为连续重复相似子序列。
A12、根据A11所述的文本识别装置,所述第二单元还被配置为:
获得字符序列的自相关函数;
根据所述自相关函数极大值出现的位置,确定所述字符序列中字符串的重复周期;
根据所述重复周期,确定所述预设长度。
A13、根据A8至A12任一项所述的文本识别装置,所述聚类模块还被配置为:
采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类。
A14、根据A13所述的文本识别装置,所述装置还包括训练模块,所述训练模块被配置为:
获得样本文本,并对所述样本文本进行标注,获得所述样本文本的类型标签;
采用决策树算法,对所述样本文本的连续重复子序列特征、所述样本文本的基本特征集合以及所述类型标签进行模型训练,获得所述聚类模型。
Claims (10)
1.一种文本识别方法,其特征在于,所述方法包括:
获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
基于所述连续重复子序列特征和所述基本特征集合进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
2.根据权利要求1所述的文本识别方法,其特征在于,所述获取待识别文本的基本特征集合的步骤,包括:
计算所述待识别文本所包含的文字文本的长度以及连续特殊符号序列的最大长度,其中,所述连续特殊符号序列是由连续的特殊符号组成的序列,所述特殊符号为所述待识别文本中除汉字、字母和表情符号之外的符号;
根据所述文字文本的长度以及所述待识别文本的长度,计算所述待识别文本所包含文字文本的第一占比;
根据所述连续特殊符号序列的最大长度以及所述待识别文本的长度,计算所述连续特殊符号序列的第二占比;
将所述文字文本的长度、所述连续特殊符号序列的最大长度、所述第一占比以及所述第二占比确定为所述基本特征集合的元素。
3.根据权利要求1所述的文本识别方法,其特征在于,所述分别从所述待识别文本和所述文字文本中提取连续重复子序列特征的步骤,包括:
分别生成所述待识别文本和所述文字文本的字符序列;
当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列;
将相应文本中重复次数最大的连续重复相似子序列的重复次数、长度以及在相应文本中的占比,确定为相应文本的连续重复子序列特征。
4.根据权利要求3所述的文本识别方法,其特征在于,当字符序列中存在连续的两个目标子序列之间长度和相似度均满足预设条件时,确定所述目标子序列为相应文本的连续重复相似子序列的步骤,包括:
根据字符序列,按照预设规则生成多个后缀树序列以及与各所述后缀树序列对应的编码;
确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列;
当所述第一后缀树序列的编码与所述第二后缀树序列的编码之差绝对值等于所述预设长度,且所述第一目标子序列与所述第二目标子序列之间的相似度大于或等于预设阈值时,确定所述第一目标子序列与所述第二目标子序列为连续重复相似子序列。
5.根据权利要求4所述的方法,其特征在于,在所述确定第一后缀树序列中自首位起长度为预设长度的第一目标子序列,以及第二后缀树序列中自首位起长度为所述预设长度的第二目标子序列的步骤之前,还包括:
获得字符序列的自相关函数;
根据所述自相关函数极大值出现的位置,确定所述字符序列中字符串的重复周期;
根据所述重复周期,确定所述预设长度。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类的步骤,包括:
采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类。
7.根据权利要求6所述的方法,其特征在于,在所述采用预先训练得到的聚类模型,对所述连续重复子序列特征和所述基本特征集合进行特征聚类的步骤之前,还包括:
获得样本文本,并对所述样本文本进行标注,获得所述样本文本的类型标签;
采用决策树算法,对所述样本文本的连续重复子序列特征、所述样本文本的基本特征集合以及所述类型标签进行模型训练,获得所述聚类模型。
8.一种文本识别装置,其特征在于,所述装置包括:
获取模块,被配置为获取待识别文本的基本特征集合,其中,所述基本特征集合为所述待识别文本所包含的文字和各预定类型符号的长度和占比特征的集合;
生成模块,被配置为生成与所述待识别文本对应的文字文本,其中,所述文字文本为包含所述待识别文本的文字、且不包含各预定类型符号的文本;
提取模块,被配置为分别从所述待识别文本和所述文字文本中提取连续重复子序列特征,其中,所述连续重复子序列特征用于表征相应文本中文字和各预定类型符号重复出现的信息;
聚类模块,被配置为基于所述连续重复子序列特征和所述基本特征集合,进行特征聚类,得到聚类结果,并基于所述聚类结果检测所述待识别文本是否为包含重复序列的文本。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行如权利要求1-7任一项所述的文本识别方法。
10.一种非临时性计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1-7任一项所述的文本识别方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910600211.1A CN110717328B (zh) | 2019-07-04 | 2019-07-04 | 文本识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910600211.1A CN110717328B (zh) | 2019-07-04 | 2019-07-04 | 文本识别方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110717328A true CN110717328A (zh) | 2020-01-21 |
CN110717328B CN110717328B (zh) | 2021-06-18 |
Family
ID=69209359
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910600211.1A Active CN110717328B (zh) | 2019-07-04 | 2019-07-04 | 文本识别方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110717328B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291551A (zh) * | 2020-01-22 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、电子设备及计算机可读存储介质 |
CN111597409A (zh) * | 2020-04-29 | 2020-08-28 | 北京七麦智投科技有限公司 | 一种恶意评论的识别方法及装置 |
CN112883703A (zh) * | 2021-03-19 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 一种识别关联文本的方法、装置、电子设备及存储介质 |
CN113670608A (zh) * | 2021-07-21 | 2021-11-19 | 广州大学 | 基于后缀树和向量机的故障检测方法、系统、装置及介质 |
CN114615377A (zh) * | 2020-11-25 | 2022-06-10 | 成都鼎桥通信技术有限公司 | 应用程序控制方法、装置及设备 |
CN115563627A (zh) * | 2022-12-06 | 2023-01-03 | 中国电子科技集团公司第三十研究所 | 一种基于人机协同的二进制程序漏洞静态分析方法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021231A (zh) * | 2016-05-24 | 2016-10-12 | 武汉斗鱼网络科技有限公司 | 一种检测重复聊天内容的方法及装置 |
CN106326197A (zh) * | 2016-08-23 | 2017-01-11 | 达而观信息科技(上海)有限公司 | 一种快速检测重复抄袭文本的方法 |
CN106649221A (zh) * | 2016-12-06 | 2017-05-10 | 北京锐安科技有限公司 | 重复文本的检测方法及装置 |
CN106909609A (zh) * | 2017-01-09 | 2017-06-30 | 北方工业大学 | 确定相似字符串的方法、文件查重的方法及系统 |
CN107133335A (zh) * | 2017-05-15 | 2017-09-05 | 北京航空航天大学 | 一种基于分词与索引技术的重复记录检测方法 |
CN107239512A (zh) * | 2017-05-18 | 2017-10-10 | 华中科技大学 | 一种结合评论关系网络图的微博垃圾评论识别方法 |
CN107239440A (zh) * | 2017-04-21 | 2017-10-10 | 同盾科技有限公司 | 一种垃圾文本识别方法和装置 |
CN109241523A (zh) * | 2018-08-10 | 2019-01-18 | 北京百度网讯科技有限公司 | 变体作弊字段的识别方法、装置及设备 |
CN109460455A (zh) * | 2018-10-25 | 2019-03-12 | 第四范式(北京)技术有限公司 | 一种文本检测方法及装置 |
CN109933648A (zh) * | 2019-02-28 | 2019-06-25 | 北京学之途网络科技有限公司 | 一种真实用户评论的区分方法和区分装置 |
-
2019
- 2019-07-04 CN CN201910600211.1A patent/CN110717328B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106021231A (zh) * | 2016-05-24 | 2016-10-12 | 武汉斗鱼网络科技有限公司 | 一种检测重复聊天内容的方法及装置 |
CN106326197A (zh) * | 2016-08-23 | 2017-01-11 | 达而观信息科技(上海)有限公司 | 一种快速检测重复抄袭文本的方法 |
CN106649221A (zh) * | 2016-12-06 | 2017-05-10 | 北京锐安科技有限公司 | 重复文本的检测方法及装置 |
CN106909609A (zh) * | 2017-01-09 | 2017-06-30 | 北方工业大学 | 确定相似字符串的方法、文件查重的方法及系统 |
CN107239440A (zh) * | 2017-04-21 | 2017-10-10 | 同盾科技有限公司 | 一种垃圾文本识别方法和装置 |
CN107133335A (zh) * | 2017-05-15 | 2017-09-05 | 北京航空航天大学 | 一种基于分词与索引技术的重复记录检测方法 |
CN107239512A (zh) * | 2017-05-18 | 2017-10-10 | 华中科技大学 | 一种结合评论关系网络图的微博垃圾评论识别方法 |
CN109241523A (zh) * | 2018-08-10 | 2019-01-18 | 北京百度网讯科技有限公司 | 变体作弊字段的识别方法、装置及设备 |
CN109460455A (zh) * | 2018-10-25 | 2019-03-12 | 第四范式(北京)技术有限公司 | 一种文本检测方法及装置 |
CN109933648A (zh) * | 2019-02-28 | 2019-06-25 | 北京学之途网络科技有限公司 | 一种真实用户评论的区分方法和区分装置 |
Non-Patent Citations (1)
Title |
---|
ACBINGO: "Java,用户刷屏检测\相似字符串检测", 《HTTPS://WWW.CNBLOGS.COM/ACBINGO/P/9645746.HTML》 * |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111291551A (zh) * | 2020-01-22 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、电子设备及计算机可读存储介质 |
CN111291551B (zh) * | 2020-01-22 | 2023-04-18 | 腾讯科技(深圳)有限公司 | 文本处理方法、装置、电子设备及计算机可读存储介质 |
CN111597409A (zh) * | 2020-04-29 | 2020-08-28 | 北京七麦智投科技有限公司 | 一种恶意评论的识别方法及装置 |
CN114615377A (zh) * | 2020-11-25 | 2022-06-10 | 成都鼎桥通信技术有限公司 | 应用程序控制方法、装置及设备 |
CN114615377B (zh) * | 2020-11-25 | 2023-08-15 | 成都鼎桥通信技术有限公司 | 应用程序控制方法、装置及设备 |
CN112883703A (zh) * | 2021-03-19 | 2021-06-01 | 腾讯科技(深圳)有限公司 | 一种识别关联文本的方法、装置、电子设备及存储介质 |
CN112883703B (zh) * | 2021-03-19 | 2023-10-20 | 腾讯科技(深圳)有限公司 | 一种识别关联文本的方法、装置、电子设备及存储介质 |
CN113670608A (zh) * | 2021-07-21 | 2021-11-19 | 广州大学 | 基于后缀树和向量机的故障检测方法、系统、装置及介质 |
CN115563627A (zh) * | 2022-12-06 | 2023-01-03 | 中国电子科技集团公司第三十研究所 | 一种基于人机协同的二进制程序漏洞静态分析方法 |
CN115563627B (zh) * | 2022-12-06 | 2023-03-14 | 中国电子科技集团公司第三十研究所 | 一种基于人机协同的二进制程序漏洞静态分析方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110717328B (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110717328B (zh) | 文本识别方法、装置、电子设备及存储介质 | |
CN111259148B (zh) | 信息处理方法、装置及存储介质 | |
CN110008401B (zh) | 关键词提取方法、关键词提取装置和计算机可读存储介质 | |
CN113792207B (zh) | 一种基于多层次特征表示对齐的跨模态检索方法 | |
CN111539443A (zh) | 一种图像识别模型训练方法及装置、存储介质 | |
CN110532345A (zh) | 一种未标注数据的处理方法、装置及存储介质 | |
US11983500B2 (en) | Method and device for semantic analysis and storage medium | |
CN112328793A (zh) | 评论文本数据的处理方法、装置及存储介质 | |
CN111583919A (zh) | 信息处理方法、装置及存储介质 | |
CN116166843B (zh) | 基于细粒度感知的文本视频跨模态检索方法和装置 | |
CN111813932B (zh) | 文本数据的处理方法、分类方法、装置及可读存储介质 | |
CN107424612B (zh) | 处理方法、装置和机器可读介质 | |
CN111222316B (zh) | 文本检测方法、装置及存储介质 | |
CN111651586A (zh) | 文本分类的规则模板生成方法、分类方法及装置、介质 | |
CN114547421A (zh) | 一种搜索处理方法、装置、电子设备及存储介质 | |
CN111274389B (zh) | 一种信息处理方法、装置、计算机设备及存储介质 | |
CN111538998A (zh) | 文本定密方法和装置、电子设备及计算机可读存储介质 | |
CN115718801A (zh) | 文本处理方法、模型的训练方法、装置、设备及存储介质 | |
CN115146633A (zh) | 一种关键词识别方法、装置、电子设备及存储介质 | |
CN115730073A (zh) | 文本处理方法、装置及存储介质 | |
CN112987941B (zh) | 生成候选词的方法及装置 | |
CN113822020B (zh) | 文本处理方法、设备、存储介质 | |
CN114020878B (zh) | 特征文本匹配方法及装置、电子设备和存储介质 | |
CN111414731B (zh) | 文本标注方法和装置 | |
CN112434519B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |