相似文本的确定方法、装置及设备与流程

文档序号:12887150阅读:158来源:国知局
相似文本的确定方法、装置及设备与流程

本发明涉及通信技术领域,尤其涉及一种相似文本的确定方法、装置及设备。



背景技术:

随着网络技术的发展,人们的生活越来越依赖网络和移动终端。在网络改变我们日常生活的同时,不法分子将网络信息作为其发布广告、诈骗等非法信息的渠道。不良信息很容易对人民的财产造成损失,或者对社会的稳定造成损坏,因此,目前对网络信息进行监控,尽可能限制不良信息的下发,成为一种保障网络安全的必要手段。目前,通常先制定拦截策略,然后采用计算机技术实现不良信息的自动化拦截。但是为了优化拦截的策略,提高拦截的准确性,需要抽取大量的文本信息进行人工审核。在对为了提高审核效率,通常需要对待审核的文本进行相似聚类处理。

现有技术中的计算文本相似度的算法,通常依赖中文分词库与中文分词算法,即通过中文分词库与中文分词算法对待审核的文本进行分词。但是,如果待审核的文本过长,现有的文本相似度算法将会消耗很大的内存,增加内存的开销。



技术实现要素:

本发明实施例提供了一种相似文本的确定方法、装置及设备,能够解决现有的文本相似度算法将会消耗很大的内存,增加内存的开销的问题。

第一方面,本发明实施例提供了一种相似文本的确定方法,包括:

将第一目标文本和第二目标文本划分为相同数量的短文本;

从第一目标文本的短文本中筛选第一特征文本,从第二目标文本短文本中筛选第二特征文本;

基于第一特征文本与第二特征文本中字符长度较大的目标字符长度值和预设相似阈值,计算第一目标文本和第二目标文本之间允许不相同字符数;

识别第一特征文本和第二特征文本之间不相同字符数;

不相同字符数大于允许不相同字符数,确定第一目标文本和第二目标文本不相似;

不相同字符数小于等于允许不相同字符数,确定第一目标文本和第二目标文本相似。

第二方面,本发明实施例提供了一种相似文本的确定装置,包括:

划分单元,用于将第一目标文本和第二目标文本划分为相同数量的短文本;

筛选单元,用于从第一目标文本的短文本中筛选第一特征文本,从第二目标文本短文本中筛选第二特征文本;

计算单元,用于基于第一特征文本与第二特征文本中字符长度较大的目标字符长度值和预设相似阈值,计算第一目标文本和第二目标文本之间允许不相同字符数;

识别单元,用于识别第一特征文本和第二特征文本之间不相同字符数;

确定单元,用于不相同字符数大于允许不相同字符数,确定第一目标文本和第二目标文本不相似;

确定单元,还用于不相同字符数小于等于允许不相同字符数,确定第一目标文本和第二目标文本相似。

第三方面,本发明实施例提供了一种相似文本的确定设备,包括:

存储器、处理器、通信接口和总线;

存储器、处理器和通信接口通过总线连接并完成相互间的通信;

存储器用于存储程序代码;

处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,以用于执行一种相似文本的确定的方法,所述相似文本的确定方法包括:

将第一目标文本和第二目标文本划分为相同数量的短文本;

从第一目标文本的短文本中筛选第一特征文本,从第二目标文本短文本中筛选第二特征文本;

基于第一特征文本与第二特征文本中字符长度较大的目标字符长度值和预设相似阈值,计算第一目标文本和第二目标文本之间允许不相同字符数;

识别第一特征文本和第二特征文本之间不相同字符数;

不相同字符数大于允许不相同字符数,确定第一目标文本和第二目标文本不相似;

不相同字符数小于等于允许不相同字符数,确定第一目标文本和第二目标文本相似。

本发明实施例提供了一种相似文本的确定方法、装置及设备,本发明实施例中,在对两个目标文本进行相似判断时,首先将两个目标文本划分为数量相同的短文本,再从短文本中提取各自的特征文本,如果两个特征文本相似,则可以说明两个目标文本也相似,即通过判断特征文本是否相似来比较两个目标文本的相似性,简化了比较两个目标文本的处理过程;在判断两个特征文本是否相似时,首先根据预设相似阈值计算出第一目标文本和第二目标文本之间允许不相同字符数,然后识别第一特征文本和第二特征文本之间不相同字符数,将识别出的不相同字符数与计算出的允许不相同字符数进行比较,来确定第一目标文本和第二目标文本之间是否相似,如此不依赖中文分词库与中文分词算法,确定两个目标文本是否相似,减少内存的消耗和开销。

附图说明

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

图1是根据本发明一实施例的相似文本的确定方法的示意性流程图;

图2是根据本发明又一实施例的相似文本的确定方法的示意性流程图;

图3是根据本发明一实施例的相似文本的确定装置的示意性框图;

图4是根据本发明又一实施例的相似文本的确定装置的示意性框图;

图5是根据本发明一实施例的相似文本的确定设备的示意性框图。

具体实施方式

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

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

图1示出了根据本发明一实施例的相似文本的确定方法的示意性流程图。如图1所示,该方法包括步骤110-160。

110,将第一目标文本和第二目标文本划分为相同数量的短文本。

其中,为了简化确定两个目标文本是否相似的过程,本发明实施例将目标文本划分为短文本,如果短文本相似,则目标文本也是相似的,由此可以基于短文本来确定目标文本是否相似。在对两个目标文本进行划分时,两个目标文本划分的短文本数量需要相同,从而可以建立两个目标文本的短文本之间的一一对应关系。

120,从第一目标文本的短文本中筛选第一特征文本,从第二目标文本短文本中筛选第二特征文本。

其中,在对目标文本进行划分后,从各目标文本的短文本中提取出特征文本,以两个特征文本来确定两个目标文本的相似性,进一步简化确定两个目标文本是否相似的过程。

130,基于第一特征文本与第二特征文本中字符长度较大的目标字符长度值和预设相似阈值,计算第一目标文本和第二目标文本之间允许不相同字符数。

其中,本发明实施例中预设相似阈值,即第一目标文本和第二目标文本的相似程度达到预设相似阈值,即可确定两者相似。基于预设相似阈值,可以计算出如果第一目标文本和第二目标文本相似,则第一目标文本包括的字符和第二目标文本之间包括的字符相同的程度,即可以计算出第一目标文本和第二目标文本相似的情况下,第一目标文本和第二目标文本之间允许不相同字符数。

140,识别第一特征文本和第二特征文本之间不相同字符数。

其中,在步骤130中计算出了第一目标文本和第二目标文本相似的情况下,第一目标文本和第二目标文本之间允许不相同字符数,所以本步骤中需要识别第一特征文本和第二特征文本之间不相同字符数,然后将识别的不相同字符数与计算的允许不相同字符数进行比较,进而确定第一特征文本和第二特征文本是否相似。

150,不相同字符数大于允许不相同字符数,确定第一目标文本和第二目标文本不相似。

其中,在步骤140中识别的第一特征文本和第二特征文本之间不相同字符数大于允许不相同字符数时,说明第一特征文本和第二特征文本之间不相同字符数超过了步骤130计算的允许不相同字符数,即第一特征文本和第二特征文本之间的相似程度不能达到预设相似阈值,从而确定第一特征文本和第二特征文本不相似,进而确定第一目标文本和第二目标文本不相似。

160,不相同字符数小于等于允许不相同字符数,确定第一目标文本和第二目标文本相似。

其中,在步骤140中识别的第一特征文本和第二特征文本之间不相同字符数小于等于允许不相同字符数时,说明第一特征文本和第二特征文本之间不相同字符数未超过步骤130计算的允许不相同字符数,即第一特征文本和第二特征文本之间的相似程度能够达到预设相似阈值,从而确定第一特征文本和第二特征文本相似,进而确定第一目标文本和第二目标文本相似。

本发明实施例中,在对两个目标文本进行相似判断时,首先将两个目标文本划分为数量相同的短文本,再从短文本中提取各自的特征文本,如果两个特征文本相似,则可以说明两个目标文本也相似,即通过判断特征文本是否相似来比较两个目标文本的相似性,简化了比较两个目标文本的处理过程;在判断两个特征文本是否相似时,首先根据预设相似阈值计算出第一目标文本和第二目标文本之间允许不相同字符数,然后识别第一特征文本和第二特征文本之间不相同字符数,将识别出的不相同字符数与计算出的允许不相同字符数进行比较,来确定第一目标文本和第二目标文本之间是否相似,如此不依赖中文分词库与中文分词算法,确定两个目标文本是否相似,减少内存的消耗和开销。

可以理解的是,在本发明实施例中,步骤120还可以具体执行为步骤121和步骤122。

121,基于预设映射规则将第一目标文本的短文本中字符和第二目标文本的短文本中字符均映射为数字。

其中,本发明实施例为了便于提取特征文本,首先将各短文本按照预设映射规则映射为数字。预设映射规则可以为预先设置的字符与数字之间的对应关系,数字可以为十进制或二进制等等的数字。

122,根据第一目标文本的短文本对应数字的大小筛选第一特征文本,根据第二目标文本的短文本对应数字的大小筛选第二特征文本。

其中,在将短文本映射为数字后,可以基于数字的数值大小来筛选特征文本,即基于数字的数值大小来确定筛选的数值,然后将筛选出的数值对饮的字符组成特征文本。

具体的,步骤122可以具体执行为如下步骤:从第一目标文本的短文本对应数字中,筛选m个数值较大和/或n个数值较小的数字对应字符作为第一特征文本;从第二目标文本的短文本对应数字中,筛选m个数值较大和/或n个数值较小的数字对应字符作为第二特征文本。

其中,m和n为大于零的整数。本发明实施例中可以预先设置筛选特征文本的规则,例如,筛选每个短文本对应的m个数值较大数字对应字符,或者筛选每个短文本对应的n个数值较小数字对应字符等等。基于设置的规则筛选出第一特征文本和第二特征文本。

需要说明的是,本步骤中在筛选m个数值较大和/或n个数值较小的数字时,可以通过最大堆数组和/或最小堆数组的方法来进行筛选,从而节省时间的开销。筛选第一特征文本时m可以与筛选第二特征文本时m的取值相同,也可以不同,筛选第一特征文本时n可以与筛选第二特征文本时n的取值相同,也可以不同,在此不做限定。

本发明实施例中,将短文本中的字符映射为数字后再筛选特征文本,将对字符的操作转换为对数字的操作,简化操作的难度,节省时间的开销,进一步简化确定两个目标文本是否相似的过程。

可以理解的是,在本发明实施例中,步骤130还可以具体执行为如下步骤:根据公式(1)计算允许不相同字符数。

y=a-b×a(1)

其中,y表示允许不相同字符数,a表示目标字符长度值,b表示预设相似阈值。

本发明实施例中,基于编辑距离算法的原理,确定公式(1)计算允许第一特征文本和第二特征文本在相似的条件下允许的不相同字符数。

在编辑距离算法的原理中,两个文本p和q,两个文本对应的文本长度分别为p和q,通过编辑距离算法计算两者的相似度的计算方式为公式(2)。

相似度=(max(p,q)-r)/max(p,q)(2)

其中,max(p,q)表示p和q中较大的值,r表示编辑距离算法计算出的文本p和q不相同的字符数。

本发明实施例中基于上述编辑距离算法的原理,在预先设置出满足相似条件的相似阈值(预设相似阈值)后,再结合文本长度,即可计算出两个文本如果能够满足预设相似阈值,其文本中字符允许出现不相同字符的最大值。

具体的,本发明实施例中将第一特征文本的字符长度和第二特征文本的字符长度之间较大的值确定为目标字符长度值(用a表示);如果第一特征文本和第二特征文本相似,则其需要满足的预设相似阈值表示为b;基于编辑距离算法的原理,则可以通过公式(1)计算出在第一特征文本和第二特征文本相似度达到预设相似阈值时允许不相同字符数y。

通过上述方式计算出允许不相同字符数,然后只需要识别第一特征文本和第二特征文本中的不相同字符即可确定第一特征文本和第二特征文本是否相似,而不需要计算出第一特征文本和第二特征文本准确的相似度,大幅减少计算时间,提高系统性能,降低时间开销和内存开销。

可以理解的是,本发明实施例中,步骤140的识别第一特征文本和第二特征文本中的不相同字符,执行的具体方式可以有多种,再次不做限定。例如,通过哈希算法等方法来识别第一特征文本和第二特征文本中的不相同字符。

具体的,在步骤130计算出允许不相同字符数y后,可以将第一特征文本和第二特征文本以相同的方式划分为y+1个文本段,然后按照第一特征文本中各文本段的位置和第二特征文本中各文本段的位置之间的对应关系,识别出完全相同的文本段或者不相同的文本段。本发明实施例中,允许不相同字符数为y,如果第一特征文本和第二特征文本相似,则其最多会出现y个不相同的文本段,即第一特征文本和第二特征文本划分的y+1个文本段中至少存在1个相同的文本段,所以本发明实施例中,如果识别出没有完全相同的文本段,则可以确定第一特征文本和第二特征文本之间不相同字符数大于y,两者不相似,即本发明实施例可以基于识别相同文本段的数量确定第一特征文本和第二特征文本中的不相同字符。

另外,本发明实施例中,通过上述方式无法确定第一特征文本和第二特征文本是否相似时,还可以通过编辑距离算法来识别,即通过第一特征文本和第二特征文本之间的编辑距离来确定第一特征文本和第二特征文本中的不相同字符。在计算编辑距离之前,还可以遍历第一特征文本和第二特征文本,把对应位置相同的字符删除,然后再通过编辑距离算法来识别,使得计算量减少,所占内存减少,并加快了计算的效率,提高系统性能。

可以理解的是,在本发明实施例中,步骤150在具体执行时,可以在步骤140识别第一特征文本和第二特征文本之间不相同字符数完成后,将识别出的不相同字符数与允许不相同字符数进行比较,来确定第一目标文本和第二目标文本是否相似。

但是,在第一目标文本和第二目标文本不相似时,第一特征文本和第二特征文本之间不相同字符数肯定大于允许不相同字符数。此时可以在识别第一特征文本和第二特征文本之间不相同字符数未完成的情况下,对识别出的不相同字符数进行统计。如果统计出识别出的不相同字符数大于允许不相同字符数,则即可确定出第一目标文本和第二目标文本不相似,而不需要等到将识别第一特征文本和第二特征文本之间不相同字符全部识别完,再来确定出第一目标文本和第二目标文本不相似,从而能够节省识别第一特征文本和第二特征文本之间不相同字符数的时间,降低时间开销和内存开销,提高效率。

作为一个可选的实施例,图2示出了根据本发明又一实施例的相似文本的确定方法的示意性流程图。图2所示方法中步骤110-160的数据处理过程与图1所示方法中步骤110-160的数据处理过程基本相同,不同之处在于,如图2所示,该方法在步骤110之前还包括步骤170。

170,删除第一目标文本的干扰信息和第二目标文本中的干扰信息。

其中,步骤170为对进行相似判断的第一目标文本和第二目标文本进行预处理,删除其中的干扰信息。干扰信息包括以下一个或两个以上的参数:数字、特殊符号、字母、字符等等。干扰信息的具体内容可以根据具体场景进行设定。

本发明实施例中,在确定第一目标文本和第二目标文本之间是否相似前,先删除干扰信息,在对分别删除干扰信息的第一目标文本和第二目标文本进行步骤110-160的处理,避免第一目标文本的干扰信息和第二目标文本的干扰信息对后续的处理过程产生影响,降低准确率。

需要说明的是,由于只有两个文本的字符数量相同或接近时,两个文本才有可能是相似的,如果两个文本的字符数量相差较大,则两个文本不存在相似的可能性,所以本发明实施例可以预设比值范围,用来表示第一目标文本的字符数量和第二目标文本的字符数量的比值处于此范围时第一目标文本的字符数量和第二目标文本的字符数量相同或接近。在第一目标文本和第二目标文本进行步骤170的处理后,执行步骤110的处理之前,可以先判断第一目标文本的字符数量和第二目标文本的字符数量之间的比值,判断比值是否处于预设比值范围内。如果第一目标文本的字符数量和第二目标文本的字符数量之间的比值处于预设比值范围内,则说明第一目标文本的字符数量和第二目标文本的字符数量相同或接近,两者存在相似的可能性,然后进行步骤110-160的处理;如果第一目标文本的字符数量和第二目标文本的字符数量之间的比值不处于预设比值范围内,则说明第一目标文本的字符数量和第二目标文本的字符数量相差较大,两者不存在相似的可能性,此时即可确定第一目标文本的字符数量和第二目标文本不相似。

图3示出了根据本发明一实施例的相似文本的确定装置200的示意性框图。如图3所示,该装置200包括:

划分单元201,用于将第一目标文本和第二目标文本划分为相同数量的短文本;

筛选单元202,用于从所述第一目标文本的短文本中筛选第一特征文本,从所述第二目标文本短文本中筛选第二特征文本;

计算单元203,用于基于所述第一特征文本与所述第二特征文本中字符长度较大的目标字符长度值和预设相似阈值,计算所述第一目标文本和所述第二目标文本之间允许不相同字符数;

识别单元204,用于识别所述第一特征文本和所述第二特征文本之间不相同字符数;

确定单元205,用于所述不相同字符数大于所述允许不相同字符数,确定所述第一目标文本和第二目标文本不相似;

所述确定单元205,还用于所述不相同字符数小于等于所述允许不相同字符数,确定所述第一目标文本和第二目标文本相似。

本发明实施例中,在对两个目标文本进行相似判断时,首先将两个目标文本划分为数量相同的短文本,再从短文本中提取各自的特征文本,如果两个特征文本相似,则可以说明两个目标文本也相似,即通过判断特征文本是否相似来比较两个目标文本的相似性,简化了比较两个目标文本的处理过程;在判断两个特征文本是否相似时,首先根据预设相似阈值计算出第一目标文本和第二目标文本之间允许不相同字符数,然后识别第一特征文本和第二特征文本之间不相同字符数,将识别出的不相同字符数与计算出的允许不相同字符数进行比较,来确定第一目标文本和第二目标文本之间是否相似,如此不依赖中文分词库与中文分词算法,确定两个目标文本是否相似,减少内存的消耗和开销。

可以理解的是,所述筛选单元202具体用于:

基于预设映射规则将所述第一目标文本的短文本中字符和所述第二目标文本的短文本中字符均映射为数字;

根据所述第一目标文本的短文本对应数字的大小筛选所述第一特征文本,根据所述第二目标文本的短文本对应数字的大小筛选第二特征文本。

可以理解的是,所述筛选单元202具体用于:

从所述第一目标文本的短文本对应数字中,筛选m个数值较大和/或n个数值较小的数字对应字符作为所述第一特征文本,其中,m和n为大于零的整数;

从所述第二目标文本的短文本对应数字中,筛选m个数值较大和/或n个数值较小的数字对应字符作为所述第二特征文本。

可以理解的是,所述计算单元203具体用于:

根据公式计算所述允许不相同字符数,所述公式为:

y=a-b×a

其中,y表示所述允许不相同字符数,a表示所述目标字符长度值,b表示所述预设相似阈值。

图4示出了根据本发明又一实施例的相似文本的确定装置200的示意性框图。

可以理解的是,如图4所示,该装置200还可以包括:

删除单元206,用于删除所述第一目标文本的干扰信息和所述第二目标文本中的干扰信息。

可以理解的是,所述确定单元205具体用于:

所述识别所述第一特征文本和所述第二特征文本之间不相同字符数未完成,所述不相同字符数大于所述允许不相同字符数,确定所述第一目标文本和第二目标文本不相似。

根据本发明实施例的相似文本的确定装置200可对应于根据本发明实施例的相似文本的确定方法中的执行主体,并且相似文本的确定装置200中的各个模块的上述和其它操作和/或功能分别为了实现图1至图2中的各个方法的相应流程,为了简洁,在此不再赘述。

图5是根据本发明一实施例的相似文本的确定设备300的示意性框图。如图5所示,设备300包括处理器301、存储器302和通信接口303,存储器302用于存储可执行的程序代码,处理器301通过读取存储器302中存储的可执行程序代码来运行与可执行程序代码对应的程序,通信接口303用于与外部设备通信,设备300还可以包括总线304,总线304用于连接处理器301、存储器302和通信接口303,使处理器301、存储器302和通信接口303通过总线304进行相互通信。

具体地,处理器301还用于执行一种相似文本的确定方法;其中,所述相似文本的确定方法包括:

将第一目标文本和第二目标文本划分为相同数量的短文本;

从所述第一目标文本的短文本中筛选第一特征文本,从所述第二目标文本短文本中筛选第二特征文本;

基于所述第一特征文本与所述第二特征文本中字符长度较大的目标字符长度值和预设相似阈值,计算所述第一目标文本和所述第二目标文本之间允许不相同字符数;

识别所述第一特征文本和所述第二特征文本之间不相同字符数;

所述不相同字符数大于所述允许不相同字符数,确定所述第一目标文本和第二目标文本不相似;

所述不相同字符数小于等于所述允许不相同字符数,确定所述第一目标文本和第二目标文本相似。

根据本发明实施例的相似文本的确定设备300可对应于根据本发明实施例的相似文本的确定方法中的执行主体,并且相似文本的确定设备300中的各个模块的上述和其它操作和/或功能分别为了实现图1至图2中的各个方法的相应流程,为了简洁,在此不再赘述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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