一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

文本去重方法、装置、设备及介质与流程

2022-04-09 05:05:32 来源:中国专利 TAG:


1.本技术涉及自然语言处理技术领域,尤其涉及一种文本去重方法、装置、设备及介质。


背景技术:

2.目前,网上的数据信息比较繁杂,用户在查看需要的数据信息时需要阅读大量重复的数据信息。因此,如何筛选掉重复的数据信息是大众比较关注的问题。
3.目前为用户筛选掉重复的数据信息的方法中,所使用的去重算法均为比较简单的相似度比较的方法,这样会导致去重的效果不是很理想,用户还是会看到很多重复性的内容。
4.因此,亟需一种文本去重方法,能够在数据量较大、中央处理器(central processing unit,简称cpu)资源有限的情况下,提高重复数据信息的计算效率且准确地删除重复的文本。


技术实现要素:

5.本技术提供一种文本去重方法、装置、设备及介质,能够在数据量较大、cpu资源有限的情况下,提高重复的数据信息的计算效率且准确地删除重复的文本。
6.第一方面,本技术提供一种文本去重方法,所述方法包括:
7.获取预设文本库中每一文本的文本特征;
8.根据所述每一文本的文本特征,确定所述每一文本的特征向量,并根据所述每一文本的特征向量生成所述预设文本库中文本之间的特征矩阵;
9.根据所述特征矩阵,确定所述预设文本库中文本之间的相似度信息,根据所述相似度信息,在所述预设文本库中筛选出与每一文本相似的第一预设数量的文本;
10.根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除所述预设文本库中的待去重文本;其中,所述第二预设数量与所述第三预设数量的总和等于所述第一预设数量。
11.在一个示例中,根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除所述预设文本库中的待去重文本,包括:
12.根据所述第二预设数量的文本的相似度信息确定每一文本的相似文本列表;
13.若所述第三预设数量的文本的相似度信息小于所述第二预设数量的文本的相似度信息,则将所述相似文本列表中的文本作为所述预设文本库中的待去重文本,并去除所述预设文本库中的待去重文本。
14.在一个示例中,所述方法还包括:
15.若所述第三预设数量的文本的相似度信息不小于所述第二预设数量的文本的相似度信息,则重新计算所述第三预设数量的文本的相似度信息;
16.若重新计算的所述第三预设数量的文本的相似度信息大于所述第二预设数量的
文本的相似度信息,则更新所述相似文本列表中的文本,并将更新后的所述相似文本列表中的文本作为所述预设文本库中的待去重文本,并去除所述预设文本库中的待去重文本。
17.在一个示例中,根据所述特征矩阵,确定所述预设文本库中文本之间的相似度信息,包括:
18.根据所述特征矩阵,确定所述预设文本库中文本之间的子特征矩阵,并根据所述文本之间的子特征矩阵确定所述文本之间的相似度信息;其中,所述子特征矩阵的数量为至少两个。
19.在一个示例中,根据所述特征矩阵,确定所述预设文本库中文本之间的子特征矩阵,包括:
20.根据所述特征矩阵,确定所述特征矩阵的转置矩阵;
21.根据所述特征矩阵,确定所述特征矩阵的子特征矩阵;
22.根据所述特征矩阵的转置矩阵,确定所述特征矩阵的转置矩阵的子特征矩阵;
23.将所述特征矩阵的子特征矩阵和所述特征矩阵的转置矩阵的子特征矩阵作为所述预设文本库中文本之间的子特征矩阵。
24.在一个示例中,根据所述文本之间的子特征矩阵确定所述文本之间的相似度信息,包括:
25.根据所述特征矩阵的每一文本的每一子特征矩阵和所述特征矩阵的转置矩阵的每一文本的每一子特征矩阵确定两者之间的第一余弦相似度信息;
26.根据所述第一余弦相似度信息确定所述特征矩阵之间的第二余弦相似度信息;
27.根据所述第二余弦相似度信息确定所述文本之间的相似度信息。
28.在一个示例中,所述文本特征包括文本内容和文本标签,所述文本标签表征文本的特征属性;若所述文本特征为文本内容,根据所述每一文本的文本特征,确定所述每一文本的特征向量,包括:
29.获取所述每一文本的文本内容中的词语信息;
30.根据所述词语信息,确定所述词语信息的词向量;其中,所述词向量表征所述词语信息的语义信息;
31.根据所述词向量,确定所述每一文本的中心向量,将所述每一文本的中心向量作为所述每一文本的特征向量。
32.在一个示例中,所述文本特征包括文本内容和文本标签,所述文本标签表征文本的特征属性;若所述文本特征为文本标签,根据所述每一文本的文本特征,确定所述每一文本的特征向量,包括:
33.获取所述每一文本的文本标签中的频度信息和类别信息;
34.根据所述频度信息和所述类别信息,确定所述每一文本的标签向量,将所述每一文本的标签向量作为所述每一文本的特征向量。
35.第二方面,本技术提供一种文本去重装置,所述装置包括:
36.获取单元,用于获取预设文本库中每一文本的文本特征;
37.特征矩阵生成单元,用于根据所述每一文本的文本特征,确定所述每一文本的特征向量,并根据所述每一文本的特征向量生成所述预设文本库中文本之间的特征矩阵;
38.筛选单元,用于根据所述特征矩阵,确定所述预设文本库中文本之间的相似度信
息,根据所述相似度信息,在所述预设文本库中筛选出与每一文本相似的第一预设数量的文本;
39.待去重文本确定单元,用于根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除所述预设文本库中的待去重文本;其中,所述第二预设数量与所述第三预设数量的总和等于所述第一预设数量。
40.在一个示例中,待去重文本确定单元,包括:
41.相似文本列表确定模块,用于根据所述第二预设数量的文本的相似度信息确定每一文本的相似文本列表;
42.待去重文本去除模块,用于若所述第三预设数量的文本的相似度信息小于所述第二预设数量的文本的相似度信息,则将所述相似文本列表中的文本作为所述预设文本库中的待去重文本,并去除所述预设文本库中的待去重文本。
43.在一个示例中,待去重文本确定单元,包括:
44.计算模块,用于若所述第三预设数量的文本的相似度信息不小于所述第二预设数量的文本的相似度信息,则重新计算所述第三预设数量的文本的相似度信息;
45.文本更新模块,用于若重新计算的所述第三预设数量的文本的相似度信息大于所述第二预设数量的文本的相似度信息,则更新所述相似文本列表中的文本,并将更新后的所述相似文本列表中的文本作为所述预设文本库中的待去重文本,并去除所述预设文本库中的待去重文本。
46.筛选单元,包括:
47.相似度信息确定模块,用于根据所述特征矩阵,确定所述预设文本库中文本之间的子特征矩阵,并根据所述文本之间的子特征矩阵确定所述文本之间的相似度信息;其中,所述子特征矩阵的数量为至少两个。
48.相似度信息确定模块,包括:
49.转置矩阵确定子模块,用于根据所述特征矩阵,确定所述特征矩阵的转置矩阵;
50.第一子特征矩阵确定子模块,用于根据所述特征矩阵,确定所述特征矩阵的子特征矩阵;
51.第二子特征矩阵确定子模块,用于根据所述特征矩阵的转置矩阵,确定所述特征矩阵的转置矩阵的子特征矩阵;
52.第三子特征矩阵确定子模块,用于将所述特征矩阵的子特征矩阵和所述特征矩阵的转置矩阵的子特征矩阵作为所述预设文本库中文本之间的子特征矩阵。
53.相似度信息确定模块,包括:
54.第一余弦相似度信息确定子模块,用于根据所述特征矩阵的每一文本的每一子特征矩阵和所述特征矩阵的转置矩阵的每一文本的每一子特征矩阵确定两者之间的第一余弦相似度信息;
55.第二余弦相似度信息确定子模块,用于根据所述第一余弦相似度信息确定所述特征矩阵之间的第二余弦相似度信息;
56.相似度信息确定子模块,用于根据所述第二余弦相似度信息确定所述文本之间的相似度信息。
57.所述文本特征包括文本内容和文本标签,所述文本标签表征文本的特征属性;若
所述文本特征为文本内容,特征矩阵生成单元,包括:
58.词语信息获取模块,用于获取所述每一文本的文本内容中的词语信息;
59.词向量确定模块,用于根据所述词语信息,确定所述词语信息的词向量;其中,所述词向量表征所述词语信息的语义信息;
60.中心向量确定模块,用于根据所述词向量,确定所述每一文本的中心向量,将所述每一文本的中心向量作为所述每一文本的特征向量。
61.所述文本特征包括文本内容和文本标签,所述文本标签表征文本的特征属性;若所述文本特征为文本标签,特征矩阵生成单元,包括:
62.获取模块,用于获取所述每一文本的文本标签中的频度信息和类别信息;
63.标签向量确定模块,用于根据所述频度信息和所述类别信息,确定所述每一文本的标签向量,将所述每一文本的标签向量作为所述每一文本的特征向量。
64.第三方面,本技术提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;
65.所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如第一方面中所述的方法。
66.第四方面,本技术提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如第一方面中所述的方法。
67.第五方面,本技术提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如第一方面所述的方法。
68.本技术提供的一种文本去重方法、装置、设备及介质,通过获取预设文本库中每一文本的文本特征;根据所述每一文本的文本特征,确定所述每一文本的特征向量,并根据所述每一文本的特征向量生成所述预设文本库中文本之间的特征矩阵;根据所述特征矩阵,确定所述预设文本库中文本之间的相似度信息,根据所述相似度信息,在所述预设文本库中筛选出与每一文本相似的第一预设数量的文本;根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除所述预设文本库中的待去重文本;其中,所述第二预设数量与所述第三预设数量的总和等于所述第一预设数量。采用本技术方案,能够在数据量较大、cpu资源有限的情况下,提高重复的数据信息的计算效率且准确地删除重复的文本。
附图说明
69.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本技术的实施例,并与说明书一起用于解释本技术的原理。
70.图1是根据本技术实施例一提供的一种文本去重方法的流程示意图;
71.图2是根据本技术实施例二提供的一种文本去重方法的流程示意图;
72.图3是根据本技术实施例三提供的一种文本去重装置的示意图;
73.图4是根据本技术实施例四提供的一种文本去重装置的示意图;
74.图5是根据一示例性实施例示出的一种终端设备的框图。
75.通过上述附图,已示出本技术明确的实施例,后文中将有更详细的描述。这些附图
和文字描述并不是为了通过任何方式限制本技术构思的范围,而是通过参考特定实施例为本领域技术人员说明本技术的概念。
具体实施方式
76.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本技术相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
77.本技术提供的一种文本去重方法、装置、设备及介质,旨在解决现有技术的如上技术问题。
78.下面以具体地实施例对本技术的技术方案以及本技术的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。下面将结合附图,对本技术的实施例进行描述。
79.图1是根据本技术实施例一提供的一种文本去重方法的流程示意图。实施例一中包括如下步骤:
80.s101、获取预设文本库中每一文本的文本特征。
81.示例性地,预设文本库为存储有多个文本的数据库。文本特征包括文本内容和文本标签,文本内容是由文本中的多个词组成的,在获取到文本内容后,对文本内容进行分词和去词。其中,去词包括去停用词、副词、助词、标点符号、介词以及部分连词,分词和去词后得到有效词,由有效词构成文本特征。文本标签是由多个分层标签组成的,不同的层级的标签为所属关系,标签与标签之间两两独立。例如,分层标签可以分为三层;其中,第一层标签可以为财经、股票、互联网金融、信托、娱乐、电影、电视剧和欧美明星;第二层标签为高收益的股票、稳定的股票和由小说翻拍的电影;第三层为股票代码000000、股票代码000001和《简爱》。
82.s102、根据每一文本的文本特征,确定每一文本的特征向量,并根据每一文本的特征向量生成预设文本库中文本之间的特征矩阵。
83.本实施例中,文本特征是文本内容与文本特征是文本标签所确定的每一文本的特征向量的过程是不同的。
84.具体的,文本特征是文本内容时,所确定的每一文本的特征向量可以采用的算法是word2vec;文本特征是文本标签时,所确定的每一文本的特征向量可以采用的算法是tag2vec。
85.在得到每一文本的特征向量后,可以将每一文本的特征向量进行组合,得到预设文本库中文本之间的特征矩阵。例如,预设文本库中文本的数量为n,每一文本的特征向量为mi,其中,i的范围为1到n。假设特征向量为mi的向量维度为d,则n个文本的特征矩阵为m∈rn×d。
86.s103、根据特征矩阵,确定预设文本库中文本之间的相似度信息,根据相似度信息,在预设文本库中筛选出与每一文本相似的第一预设数量的文本。
87.本实施例中,根据预设文本库中文本之间的特征矩阵,按照预设的维度确定文本的子特征矩阵,例如,n个文本的特征矩阵为m∈rn×d,子特征矩阵可以为mi,其中,i的范围为
1-k1,则在得到子特征矩阵后,可以根据子特征矩阵计算预设文本库中文本之间的相似度信息。进一步地,子特征矩阵的数量与预设的维度的数量相同。
88.示例性地,在去除预设文本库中的待去重文本时,在预设文本库中根据相似度信息,筛选出第一预设数量的文本;具体的,是根据相似度信息的大小进行排序,确定出相似度信息排序在第一预设数量的文本。其中,预设文本库中文本的数量为n,则筛选出第一预设数量的文本为n*k个。
89.s104、根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除预设文本库中的待去重文本;其中,第二预设数量与第三预设数量的总和等于第一预设数量。
90.本实施例中,设定第二预设数量的文本为k个,则计算第二预设数量的文本的相似度信息,所采用的算法是wmd算法。计算第三预设数量的文本的相似度信息,即n*k-k个文本的相似度信息时所采用的算法是rwmd算法。
91.进一步地,wmd算法是一种新的衡量文本相似度的方法,两篇文本的d1和d2,每篇文本中的词都使用word2vec算法映射到embedding空间中,并且d1中每个词都可以找到d2中某个词对应,即找到每一对词在embedding空间中的距离,所有词对的距离之和最小值即为wmd。
92.数学公式为:
[0093][0094][0095]
其中,为单词i在文本d的权重,ci为单词i在文本d的词频,c(i,j)为词i,j travel cost,c(i,j)=‖x
i-xj‖,xi,xj分别为词i,jembedding后的词向量。wmd计算的时间复杂度为o(p3logp),其中p为文本中非重复词的个数。
[0096]
具体的,修剪wmd算法,即rwmd算法的计算过程如下:
[0097]
由于wmd计算效率的时间复杂度为o(p3logp),其中p为总词数。本实施例是利用rwmd算法从预设文本库中为每篇文本筛选出k个最相似的文本。
[0098]
rwmd基于wmd目标函数,分别去掉两个约束条件中的一个,然后求解最小值,使用两个最小值中的最大值作为wmd的近似值。故wmd需要计算两次。
[0099]
例如去掉第二个约束条件,问题变为:
[0100][0101][0102]
显然,这个问题的最优解变为:
[0103]
对于文本d1中的一个词,找到另一个文本d2中与之最相近的一个词,全部转移到这个词,即:
[0104][0105]
使用l1(d,d

),l2(d,d

)分别表示去掉不同约束条件所计算得最小值,rwmd最终最小值为lr(d,d

)=max(l1(d,d

),l2(d,d

)),其中rwmd计算时间复杂度为o(p2)。rwmd比文本中心向量的余弦距离更接近wmd。
[0106]
本实施例中,确定并去除预设文本库中的待去重文本的具体过程为:
[0107]
根据相似度信息,从预设文本库中的n个文本筛选出n*k个最相似的文本,其中n为超参数;每个文本分别计算前k个文本的文本内容的wmd和文本标签的wmd,根据公式得到文本内容wmd相似度信息和文本标签wmd相似度信息,根据文本内容、文本标签的wmd相似度信息加权平均,得到第二预设数量的文本的相似度信息。
[0108]
每个文本,分别计算与剩下的n*k-k个文本内容的rwmd和文本标签的rwmd,根据公式得到文本内容wmd相似度和文本标签wmd相似度,根据文本内容、文本标签的相似度信息加权平均,得到第三预设数量的文本的相似度信息。
[0109]
在得到第二预设数量的文本的相似度信息和第三预设数量的文本的相似度信息后,比较第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的大小,确定并去除预设文本库中的待去重文本。
[0110]
本技术提供的一种文本去重方法,通过获取预设文本库中每一文本的文本特征;根据每一文本的文本特征,确定每一文本的特征向量,并根据每一文本的特征向量生成预设文本库中文本之间的特征矩阵;根据特征矩阵,确定预设文本库中文本之间的相似度信息,根据相似度信息,在预设文本库中筛选出与每一文本相似的第一预设数量的文本;根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除预设文本库中的待去重文本;其中,第二预设数量与第三预设数量的总和等于第一预设数量。采用本技术方案,能够在数据量较大、cpu资源有限的情况下,提高重复的数据信息的计算效率且准确地删除重复的文本。
[0111]
图2是根据本技术实施例二提供的一种文本去重方法的流程示意图。实施例二中包括如下步骤:
[0112]
s201、获取预设文本库中每一文本的文本特征。
[0113]
示例性地,本步骤可以参见上述步骤s101,不再赘述。
[0114]
s202、根据每一文本的文本特征,确定每一文本的特征向量,并根据每一文本的特征向量生成预设文本库中文本之间的特征矩阵。
[0115]
示例性地,本步骤可以参见上述步骤s102,不再赘述。
[0116]
s203、根据特征矩阵,确定预设文本库中文本之间的相似度信息,根据相似度信息,在预设文本库中筛选出与每一文本相似的第一预设数量的文本。
[0117]
本实施例中,根据特征矩阵,确定预设文本库中文本之间的相似度信息,包括:
[0118]
根据特征矩阵,确定预设文本库中文本之间的子特征矩阵,并根据文本之间的子特征矩阵确定文本之间的相似度信息;其中,子特征矩阵的数量为至少两个。
[0119]
本实施例中,根据预设文本库中文本之间的特征矩阵,按照预设的维度确定文本的子特征矩阵,例如,n个文本的特征矩阵为m∈rn×d,子特征矩阵可以为mi,其中,i的范围为
1-k1,则在得到子特征矩阵后,可以根据子特征矩阵计算预设文本库中文本之间的相似度信息。进一步地,子特征矩阵的数量与预设的维度的数量相同。
[0120]
本实施例中,根据特征矩阵,确定预设文本库中文本之间的子特征矩阵,包括:
[0121]
根据特征矩阵,确定特征矩阵的转置矩阵;根据特征矩阵,确定特征矩阵的子特征矩阵;根据特征矩阵的转置矩阵,确定特征矩阵的转置矩阵的子特征矩阵;将特征矩阵的子特征矩阵和特征矩阵的转置矩阵的子特征矩阵作为预设文本库中文本之间的子特征矩阵。
[0122]
本实施例中,假设预设文本库中有n篇文本,其每篇文本向量为m1,其中向量维度为d,将m1,

,mn拼接成大矩阵m∈rn×d,如果cpu资源足够大的话,n篇文本两两相余弦似度计算可以直接采用n篇文本大矩阵乘以n篇文本大矩阵的转置,具体见公式为:
[0123]
simi=m*m
t

[0124]
其中simi∈rn×n,其中simi(k,q)表示文本k与文本q余弦相似度,时间复杂度为o(1)。
[0125]
考虑到文本数据量较大,cpu资源有限的情况,为提高计算效率,通过分块矩阵乘法,将m矩阵按列顺序均匀切分成k1块,即得到多个子特征矩阵组成的矩阵:
[0126][0127]
将m
t
矩阵按列顺序均匀切分成k2块,即得到特征矩阵的转置矩阵的子特征矩阵
[0128]
示例性地,根据文本之间的子特征矩阵确定文本之间的相似度信息,包括:
[0129]
根据特征矩阵的每一文本的每一子特征矩阵和特征矩阵的转置矩阵的每一文本的每一子特征矩阵确定两者之间的第一余弦相似度信息;
[0130]
根据第一余弦相似度信息确定特征矩阵之间的第二余弦相似度信息;
[0131]
根据第二余弦相似度信息确定文本之间的相似度信息。
[0132]
本实施例中,计算预设文本库中两两余弦相似度,则转化为m矩阵所有块与m
t
矩阵所有块矩阵两两相乘,时间复杂度为o(k1*k2),其中k1<<n,k2<<n。具体计算方法参考下面伪代码。第一层循环k1次,第二层循环k2次,每次计算结果为(i,j)块余弦相似度结果:
[0133][0134]
其中其中simi(i,j)(k,q)表示的文本余弦相似度,其中k1,k2作为超参数,可以调节。其中,simi(i,j)为第一余弦相似度信息。根据第一余弦相似度信息,以及余弦相似度距离由每一子特征矩阵之间的第一余弦相似度信息得到特征矩阵的第二余弦相似度信息,其中,simi(i,j)为余弦相似度距离中的d值。在得到第二余弦相似度信息后,根据第二相似度信息确定文本之间的相似度信息。
[0135]
s204、根据第二预设数量的文本的相似度信息确定每一文本的相似文本列表。
[0136]
根据相似度信息,从预设文本库中的n个文本筛选出n*k个最相似的文本,其中n为超参数;计算前k个文本的文本内容的wmd和文本标签的wmd,其中,k为第二预设数量,根据公式得到文本内容wmd相似度信息和文本标签wmd相似度信息,根据文本内容、文本标签的wmd相似度信息加权平均,得到第二预设数量的文本的相似度信息,并将第二预设数量的文本作为相似文本列表。
[0137]
s205、若第三预设数量的文本的相似度信息小于第二预设数量的文本的相似度信息,则将相似文本列表中的文本作为预设文本库中的待去重文本,并去除预设文本库中的待去重文本。
[0138]
本实施例中,若第三预设数量的文本的相似度信息小于第二预设数量的文本的相似度信息,则说明第三预设数量的文本的相似度小于第二预设数量的文本,因此,第二预设数量的文本组成的相似文本列表是预设文本库中比较相似的文本,因此,将相似文本列表中的文本进行去除。
[0139]
s206、若第三预设数量的文本的相似度信息不小于第二预设数量的文本的相似度信息,则重新计算第三预设数量的文本的相似度信息。
[0140]
本实施例中,若第三预设数量的文本的相似度信息不小于第二预设数量的文本的相似度信息,则重新计算第三预设数量的文本的相似度信息,在计算第三预设数量的文本的相似度信息时,采用wmd算法。
[0141]
s207、若重新计算的第三预设数量的文本的相似度信息大于第二预设数量的文本的相似度信息,则更新相似文本列表中的文本,并将更新后的相似文本列表中的文本作为预设文本库中的待去重文本,并去除预设文本库中的待去重文本。
[0142]
本实施例中,重新计算的第三预设数量的文本的相似度信息大于第二预设数量的文本的相似度信息,则说明存在更为相似的文本,因此,将相似文本列表中的文本进行替换后,将相似文本列表中的文本进行去除。
[0143]
在一个可选的实施例中,文本特征包括文本内容和文本标签,文本标签表征文本的特征属性;若文本特征为文本内容,根据每一文本的文本特征,确定每一文本的特征向量,包括:
[0144]
获取每一文本的文本内容中的词语信息;根据词语信息,确定词语信息的词向量;其中,词向量表征词语信息的语义信息;根据词向量,确定每一文本的中心向量,将每一文本的中心向量作为每一文本的特征向量。
[0145]
本实施例中,假设文本d经过分词和去词之后,剩余的有效词为w1,w2…
,wn,每个词对应的词频为c1,c2…
,cn,文本d经过归一化词袋模型可以表示为[d1,d2…
,dn],其中是单词i在一个文本中的权重,其中ci表示单词i在文本d中出现的次数,分母表示该文本的总的词个数(去词之后的)。经过分词和去词以及归一化词袋模型,可以得到文本d中每个词的权重。利用word2vec技术构建语言模型,将词语映射到数学空间中,形成word embedding,形成的word embedding具有丰富的语义信息。结合归一化词袋模型与word embedding将文本向量化,具体结合方式见下列数学公式形成doc embedding:
[0146]
假设词i的词向量为xi,di为词i的归一化词频,根据余弦相似度距
离,计算预设文本库的两两余弦相似度,其中,余弦相似度距离为:
[0147][0148]
在一个可选的实施例中,文本特征包括文本内容和文本标签,文本标签表征文本的特征属性;若文本特征为文本标签,根据每一文本的文本特征,确定每一文本的特征向量,包括:
[0149]
获取每一文本的文本标签中的频度信息和类别信息;根据频度信息和类别信息,确定每一文本的标签向量,将每一文本的标签向量作为每一文本的特征向量。
[0150]
本实施例中,统计文本所有标签的频度,并归一化,具体方法类似于文本内容词频归一化技术。假设文本d所有标签为t1,t2…
,tn,每个标签对应的频度为c1,c2…
,cn,文本d经过归一化标签可以表示为[d1,d2…
,dn],其中是标签i在文本d中的权重,其中ci表示标签i在文本d的频度(频度不同主要体现实体层,而在主题层和概念层标签频度为1),其中,实体层、主题层和概念层是标签的三个层级,其中,三个层级之间的层级关系为主题层》概念层》实体层。分母表示该文本的总的标签个数。从tag embedding获取文本所有标签的embedding,并与归一化的标签频度、标签权重加权平均获得该文本的标签向量。具体计算方式如下:假设标签i的向量为xi,di为得到标签i的归一化频度,wi标签i的权重,文本标签向量可以表示为:
[0151][0152]
根据余弦相似度距离,计算预设文本库标签的两两余弦相似度。其中,余弦相似度距离为:
[0153][0154]
本技术提供的一种文本去重方法,通过获取预设文本库中每一文本的文本特征,根据每一文本的文本特征,确定每一文本的特征向量,并根据每一文本的特征向量生成预设文本库中文本之间的特征矩阵,根据特征矩阵,确定预设文本库中文本之间的相似度信息,根据相似度信息,在预设文本库中筛选出与每一文本相似的第一预设数量的文本,根据第二预设数量的文本的相似度信息确定每一文本的相似文本列表,若第三预设数量的文本的相似度信息小于第二预设数量的文本的相似度信息,则将相似文本列表中的文本作为预设文本库中的待去重文本,并去除预设文本库中的待去重文本,若第三预设数量的文本的相似度信息不小于第二预设数量的文本的相似度信息,则重新计算第三预设数量的文本的相似度信息,若重新计算的第三预设数量的文本的相似度信息大于第二预设数量的文本的相似度信息,则更新相似文本列表中的文本,并将更新后的相似文本列表中的文本作为预设文本库中的待去重文本,并去除预设文本库中的待去重文本。本技术方案,通过比较第二预设数量的文本的相似度信息和第三预设数量的文本的相似度信息之间的关系,进而确定待去重的文本,该过程充分利用了文本内容相似度信息和文本标签相似度信息来度量文本相似度,提高去除重复文本的准确性。
[0155]
图3是根据本技术实施例三提供的一种文本去重装置的示意图。实施例三中的装置30包括:
[0156]
获取单元301,用于获取预设文本库中每一文本的文本特征。
[0157]
特征矩阵生成单元302,用于根据每一文本的文本特征,确定每一文本的特征向量,并根据每一文本的特征向量生成预设文本库中文本之间的特征矩阵。
[0158]
筛选单元303,用于根据特征矩阵,确定预设文本库中文本之间的相似度信息,根据相似度信息,在预设文本库中筛选出与每一文本相似的第一预设数量的文本。
[0159]
待去重文本确定单元304,用于根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除预设文本库中的待去重文本;其中,第二预设数量与第三预设数量的总和等于第一预设数量。
[0160]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0161]
图4是根据本技术实施例四提供的一种文本去重装置的示意图。实施例四中的装置40包括:
[0162]
获取单元401,用于获取预设文本库中每一文本的文本特征。
[0163]
特征矩阵生成单元402,用于根据每一文本的文本特征,确定每一文本的特征向量,并根据每一文本的特征向量生成预设文本库中文本之间的特征矩阵。
[0164]
筛选单元403,用于根据特征矩阵,确定预设文本库中文本之间的相似度信息,根据相似度信息,在预设文本库中筛选出与每一文本相似的第一预设数量的文本。
[0165]
待去重文本确定单元404,用于根据第二预设数量的文本的相似度信息以及第三预设数量的文本的相似度信息的关系,确定并去除预设文本库中的待去重文本;其中,第二预设数量与第三预设数量的总和等于第一预设数量。
[0166]
在一个示例中,待去重文本确定单元404,包括:
[0167]
相似文本列表确定模块4041,用于根据第二预设数量的文本的相似度信息确定每一文本的相似文本列表。
[0168]
待去重文本去除模块4042,用于若第三预设数量的文本的相似度信息小于第二预设数量的文本的相似度信息,则将相似文本列表中的文本作为预设文本库中的待去重文本,并去除预设文本库中的待去重文本。
[0169]
在一个示例中,待去重文本确定单元404,包括:
[0170]
计算模块4043,用于若第三预设数量的文本的相似度信息不小于第二预设数量的文本的相似度信息,则重新计算第三预设数量的文本的相似度信息。
[0171]
文本更新模块4044,用于若重新计算的第三预设数量的文本的相似度信息大于第二预设数量的文本的相似度信息,则更新相似文本列表中的文本,并将更新后的相似文本列表中的文本作为预设文本库中的待去重文本,并去除预设文本库中的待去重文本。
[0172]
筛选单元403,包括:
[0173]
相似度信息确定模块4031,用于根据特征矩阵,确定预设文本库中文本之间的子特征矩阵,并根据文本之间的子特征矩阵确定文本之间的相似度信息;其中,子特征矩阵的数量为至少两个。
[0174]
相似度信息确定模块4032,包括:
[0175]
转置矩阵确定子模块40321,用于根据特征矩阵,确定特征矩阵的转置矩阵。
[0176]
第一子特征矩阵确定子模块40322,用于根据特征矩阵,确定特征矩阵的子特征矩
阵。
[0177]
第二子特征矩阵确定子模块40323,用于根据特征矩阵的转置矩阵,确定特征矩阵的转置矩阵的子特征矩阵。
[0178]
第三子特征矩阵确定子模块40324,用于将特征矩阵的子特征矩阵和特征矩阵的转置矩阵的子特征矩阵作为预设文本库中文本之间的子特征矩阵。
[0179]
相似度信息确定模块4032,包括:
[0180]
第一余弦相似度信息确定子模块40325,用于根据特征矩阵的每一文本的每一子特征矩阵和特征矩阵的转置矩阵的每一文本的每一子特征矩阵确定两者之间的第一余弦相似度信息。
[0181]
第二余弦相似度信息确定子模块40326,用于根据第一余弦相似度信息确定特征矩阵之间的第二余弦相似度信息。
[0182]
相似度信息确定子模块40327,用于根据第二余弦相似度信息确定文本之间的相似度信息。
[0183]
文本特征包括文本内容和文本标签,文本标签表征文本的特征属性;若文本特征为文本内容,特征矩阵生成单元402,包括:
[0184]
词语信息获取模块4021,用于获取每一文本的文本内容中的词语信息。
[0185]
词向量确定模块4022,用于根据词语信息,确定词语信息的词向量;其中,词向量表征词语信息的语义信息。
[0186]
中心向量确定模块4023,用于根据词向量,确定每一文本的中心向量,将每一文本的中心向量作为每一文本的特征向量。
[0187]
文本特征包括文本内容和文本标签,文本标签表征文本的特征属性;若文本特征为文本标签,特征矩阵生成单元402,包括:
[0188]
获取模块4024,用于获取每一文本的文本标签中的频度信息和类别信息。
[0189]
标签向量确定模块4025,用于根据频度信息和类别信息,确定每一文本的标签向量,将每一文本的标签向量作为每一文本的特征向量。
[0190]
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
[0191]
图5是根据一示例性实施例示出的一种终端设备的框图,该设备可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。
[0192]
装置500可以包括以下一个或多个组件:处理组件802,存储器804,电源组件806,多媒体组件808,音频组件510,输入/输出(i/o)接口512,传感器组件514,以及通信组件516。
[0193]
处理组件502通常控制装置500的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件502可以包括一个或多个处理器520来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件502可以包括一个或多个模块,便于处理组件502和其他组件之间的交互。例如,处理组件502可以包括多媒体模块,以方便多媒体组件508和处理组件502之间的交互。
[0194]
存储器504被配置为存储各种类型的数据以支持在装置500的操作。这些数据的示
例包括用于在装置500上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器504可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(sram),电可擦除可编程只读存储器(eeprom),可擦除可编程只读存储器(eprom),可编程只读存储器(prom),只读存储器(rom),磁存储器,快闪存储器,磁盘或光盘。
[0195]
电源组件506为装置500的各种组件提供电力。电源组件506可以包括电源管理系统,一个或多个电源,及其他与为装置500生成、管理和分配电力相关联的组件。
[0196]
多媒体组件508包括在装置500和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(lcd)和触摸面板(tp)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件508包括一个前置摄像头和/或后置摄像头。当装置500处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。
[0197]
音频组件510被配置为输出和/或输入音频信号。例如,音频组件510包括一个麦克风(mic),当装置500处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器504或经由通信组件516发送。在一些实施例中,音频组件510还包括一个扬声器,用于输出音频信号。
[0198]
i/o接口512为处理组件502和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。
[0199]
传感器组件514包括一个或多个传感器,用于为装置500提供各个方面的状态评估。例如,传感器组件514可以检测到装置500的打开/关闭状态,组件的相对定位,例如所述组件为装置500的显示器和小键盘,传感器组件514还可以检测装置500或装置500一个组件的位置改变,用户与装置500接触的存在或不存在,装置500方位或加速/减速和装置500的温度变化。传感器组件514可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件514还可以包括光传感器,如cmos或ccd图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件514还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。
[0200]
通信组件516被配置为便于装置500和其他设备之间有线或无线方式的通信。装置500可以接入基于通信标准的无线网络,如wifi,2g或3g,或它们的组合。在一个示例性实施例中,通信组件516经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件516还包括近场通信(nfc)模块,以促进短程通信。例如,在nfc模块可基于射频识别(rfid)技术,红外数据协会(irda)技术,超宽带(uwb)技术,蓝牙(bt)技术和其他技术来实现。
[0201]
在示例性实施例中,装置500可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述方法。
[0202]
在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器504,上述指令可由装置500的处理器520执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0203]
一种非临时性计算机可读存储介质,当该存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行上述终端设备的文本去重方法。
[0204]
本技术还公开了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现如本实施例中所述的方法。
[0205]
本技术以上描述的系统和技术的各种实施方式可以在数字电子电路系统、集成电路系统、场可编程门阵列(fpga)、专用集成电路(asic)、专用标准产品(assp)、芯片上系统的系统(soc)、负载可编程逻辑设备(cpld)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程系统上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储系统、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储系统、该至少一个输入装置、和该至少一个输出装置。
[0206]
用于实施本技术的方法的程序代码可以采用一个或多个编程语言的任何组合来编写。这些程序代码可以提供给通用计算机、专用计算机或其他可编程数据处理装置的处理器或控制器,使得程序代码当由处理器或控制器执行时使流程图和/或框图中所规定的功能/操作被实施。程序代码可以完全在机器上执行、部分地在机器上执行,作为独立软件包部分地在机器上执行且部分地在远程机器上执行或完全在远程机器或电子设备上执行。
[0207]
在本技术的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或快闪存储器)、光纤、便捷式紧凑盘只读存储器(cd-rom)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0208]
为了提供与用户的交互,可以在计算机上实施此处描述的系统和技术,该计算机具有:用于向用户显示信息的显示装置(例如,crt(阴极射线管)或者lcd(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
[0209]
可以将此处描述的系统和技术实施在包括后台部件的计算系统(例如,作为数据电子设备)、或者包括中间件部件的计算系统(例如,应用电子设备)、或者包括前端部件的计算系统(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的系统和技术的实施方式交互)、或者包括这种后
台部件、中间件部件、或者前端部件的任何组合的计算系统中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将系统的部件相互连接。通信网络的示例包括:局域网(lan)、广域网(wan)和互联网。
[0210]
计算机系统可以包括客户端和电子设备。客户端和电子设备一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-电子设备关系的计算机程序来产生客户端和电子设备的关系。电子设备可以是云电子设备,又称为云计算电子设备或云主机,是云计算服务体系中的一项主机产品,以解决了传统物理主机与vps服务("virtual private server",或简称"vps")中,存在的管理难度大,业务扩展性弱的缺陷。电子设备也可以为分布式系统的电子设备,或者是结合了区块链的电子设备。应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本技术中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本技术公开的技术方案所期望的结果,本文在此不进行限制。
[0211]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本技术的其它实施方案。本技术旨在涵盖本技术的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本技术的一般性原理并包括本技术未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本技术的真正范围和精神由下面的权利要求书指出。
[0212]
应当理解的是,本技术并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本技术的范围仅由所附的权利要求书来限制。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献