CN117252184B - 文本相似度的计算方法、装置、电子设备 - Google Patents
文本相似度的计算方法、装置、电子设备 Download PDFInfo
- Publication number
- CN117252184B CN117252184B CN202311336303.6A CN202311336303A CN117252184B CN 117252184 B CN117252184 B CN 117252184B CN 202311336303 A CN202311336303 A CN 202311336303A CN 117252184 B CN117252184 B CN 117252184B
- Authority
- CN
- China
- Prior art keywords
- text
- processed
- similarity
- keyword
- keywords
- 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.)
- Active
Links
- 238000004364 calculation method Methods 0.000 title claims abstract description 52
- 239000013598 vector Substances 0.000 claims abstract description 131
- 238000000034 method Methods 0.000 claims abstract description 78
- 238000012545 processing Methods 0.000 claims abstract description 64
- 238000007781 pre-processing Methods 0.000 claims abstract description 20
- 238000006243 chemical reaction Methods 0.000 claims abstract description 9
- 230000011218 segmentation Effects 0.000 claims description 12
- 238000009826 distribution Methods 0.000 claims description 11
- 238000012163 sequencing technique Methods 0.000 claims description 11
- 230000009466 transformation Effects 0.000 claims description 6
- 238000003860 storage Methods 0.000 description 10
- 230000009193 crawling Effects 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 238000004140 cleaning Methods 0.000 description 3
- 238000013136 deep learning model Methods 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000007405 data analysis Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000005520 cutting process Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005315 distribution function Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/194—Calculation of difference between files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/279—Recognition of textual entities
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种文本相似度的计算方法、装置、电子设备。该方法包括:获取待处理文本,将待处理文本预处理,得到文本关键词;根据每一文本关键词在待处理文本中出现的概率,确定待处理文本的文本信息熵;根据待处理文本,确定对比文本,将对比文本预处理,得到目标关键词;将文本关键词、目标关键词进行向量转化,分别得到对应的词向量以及目标词向量,利用词向量及目标词向量,计算余弦相似度;根据文本信息熵,将余弦相似度进行加权平均处理,得到处理后的相似度。通过确定待处理文本的相似度,利用文本信息熵,将得到的余弦相似度进行加权平均处理,可以使极差变小,更好地凸显相似度,从而提高相似度结果的准确性,减少计算误差。
Description
技术领域
本申请涉及数据处理领域,尤其是涉及一种文本相似度的计算方法、装置、电子设备。
背景技术
随着互联网信息的迅速增长,如何从海量信息中获取用户所需的信息是当前一项重要的研究工作。目前,在从海量信息中获取用户所需的信息前,一般会进行数据清洗处理,从而通过处理、修正和删除不适合的数据,以提高数据的质量和可用性。进而减小数据范围,提高获取用户所需信息的效率。
在进行数据清洗时,一般会通过文本相似度来帮助识别重复数据、标准化文本、检测异常文本、聚类分类文本以及进行数据集成和匹配。从而提高数据清洗的效率和准确性,为后续的数据分析和建模打下坚实的基础。
截止目前为止,文本相似度的确定存在多种方式,比如Jaccard相似度计算方法、编辑距离计算相似度等,但是不管使用哪种方法,都在不同程度上存在一定的缺陷,这就使得文本相似度存在一定的误差。
发明内容
本申请提供一种文本相似度的计算方法、装置、电子设备,以解决上述技术问题。
第一方面,本申请提供一种文本相似度的计算方法,包括:
获取待处理文本,并将所述待处理文本进行预处理,得到文本关键词;
根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵;
根据所述待处理文本,确定对比文本,并将所述对比文本进行预处理,得到目标关键词;
将所述文本关键词、所述目标关键词进行向量转化,得到所述文本关键词对应的词向量以及所述目标关键词对应的目标词向量,并利用所述词向量及所述目标词向量,计算余弦相似度;
根据所述文本信息熵,将所述余弦相似度进行加权平均处理,得到处理后的相似度。
通过本申请提供的方案,首先获取待处理文本,将得到的待处理文本进行预处理,确定出这一待处理文本的文本关键词,从而根据每一文本关键词在待处理文本中出现的概率,从而确定待处理文本的文本信息熵。此外,将每一文本关键词进行向量转化,得到对应的词向量。此外,获取待处理文本对应的对比文本并利用上述预处理的方式,得到目标关键词,并进行向量转化,得到对应的目标词向量。并利用对应的词向量以及目标词向量,计算余弦相似度。最后,利用每一文本关键词对应的文本信息熵,将得到的余弦相似度进行加权平均处理,得到最终处理后的相似度。通过利用余弦相似度的计算方式,先确定出这一待处理文本的相似度,另外,由于一段文本中有多个词,每个词的相似距离大小不一,在进行相似度对比时如果仅看某个词,则会出现很大的极差,而利用文本信息熵,将得到的余弦相似度进行加权平均处理,可以使极差变小,更好地凸显相似度,从而提高相似度结果的准确性,减少计算误差。
可选的,所述将所述待处理文本进行预处理,得到文本关键词包括:
将所述待处理文本按照预设单位进行分词,得到拆分后的若干词;
根据所述待处理文本的内容,确定每一词在所述待处理文本中出现的次数;
将每一词在所述待处理文本中出现的次数从高到低进行排序,得到排序结果,并将预设排名前的词作为文本关键词。
通过本实施例提供的方案,可以将待处理文本进行预处理,将待处理文本进行分割,使得可以进行后续的处理,相较于直接利用待处理文本进行后续的相似度计算而言,可以去除无用的符号,从而利用词出现的次数,确定词在文本中的重要性,并将较为重要的词作为文本关键词,便于后续进行相似度计算。
可选的,所述根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵,按以下公式计算:
;
式中,为所述待处理文本的文本信息熵;/>为每一文本关键词在所述待处理文本中出现的概率;/>为所述待处理文本;/>为文本关键词。
通过本实施例提供的方式,利用每一文本关键词在待处理文本中出现的概率,计算文本信息熵,可以将文本内容转化为数字化的度量,帮助我们理解文本的信息含量和重要程度。
可选的,所述词向量及所述目标词向量,计算余弦相似度,包括:
将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影;
将所述投影长度进行归一化处理,得到所述文本关键词及所述目标关键词在向量空间上的余弦相似度;
所述计算余弦相似度后,还包括:将组合形成一个相似度概率数组以便于应用。
通过本实施例提供的方案,将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影,为了方便后续计算,将投影长度进行归一化处理,得到对应的相似度。整个过程不需要进行复杂的计算,节省数据处理的时间。
可选的,所述利用所述词向量及所述目标词向量,计算余弦相似度,按以下公式计算:
;
式中,为每一文本关键词与所述目标关键词的余弦相似度;/>为文本关键词在第/>个维度上的值;/>为目标关键词在第𝑖个维度上的值。
通过本实施例提供的方案,利用文本关键词对应的词向量以及目标词向量,计算余弦相似度,由于词向量以及目标词向量均与待处理文本对应,因此,得出的余弦相似度的准确性更高,存在误差的概率较小。
可选的,所述根据所述文本信息熵,将所述余弦相似度进行加权平均处理,得到处理后的相似度,按以下公式计算:
;
式中,为所述处理后的相似度;/>为相似度概率数组中元素的个数;/>为相似度概率数组中第𝑖个元素的值;/>为所述待处理文本的文本信息熵;
通过本实施例提供的方案,相较于利用多种方式得到相似度,然后将多种方式得到的相似度进行加权平均而言,根据文本信息熵,将余弦相似度进行加权平均处理,可以减少余弦相似度与实际情况之间的极差,使余弦相似度的结果更加趋于真实状态。
可选的,得到处理后的相似度后,还包括:
利用标准正态分布的Z分位数表,确定置信水平对应的临界值;
根据所述处理后的相似度、所述临界值及所述文本关键词计算置信度;
根据计算得到的置信度,检测所述处理后的相似度的计算准确性。
通过本实施例提供的方式,利用标准正态分布的Z分位数表,确定处理后的相似度所在置信水平对应的临界值,进而根据处理后的相似度、临界值及文本关键词来计算置信度,从而根据置信度来确定本次得到的处理后的相似度是否真实,提高计算的效率。
可选的,所述根据所述处理后的相似度、所述临界值及所述文本关键词计算置信度,按以下公式计算:
;
式中,为置信度;/>为所述处理后的相似度;/>为所述文本关键词的总量;/>为置信水平对应的临界值。
通过本实施例提供的方式,利用这一公式计算置信度,只需知晓处理后的相似度,文本关键词的总量以及处理后的相似度的置信水平对应的临界值即可,这些数据都是可以通过较为简单的处理得到的,减少了数据处理的复杂程度。
第二方面,本申请提供一种文本相似度的计算装置,包括:
文本处理模块,用于获取待处理文本,并将所述待处理文本进行预处理,得到文本关键词;
信息熵确定模块,用于根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵;
目标关键词获取模块,用于根据所述待处理文本,确定对比文本,并将所述对比文本进行预处理,得到目标关键词;
相似度计算模块,用于将所述文本关键词、所述目标关键词进行向量转化,得到所述文本关键词对应的词向量以及所述目标关键词对应的目标词向量,并利用所述词向量及所述目标词向量,计算余弦相似度;
相似度处理模块,用于根据所述文本信息熵,将所述余弦相似度进行加权平均处理,得到处理后的相似度。
可选的,所述文本处理模块具体用于:
将所述待处理文本按照预设单位进行分词,得到拆分后的若干词;
根据所述待处理文本的内容,确定每一词在所述待处理文本中出现的次数;
将每一词在所述待处理文本中出现的次数从高到低进行排序,得到排序结果,并将预设排名前的词作为文本关键词。
可选的,所述信息熵确定模块具体用于:
;
式中,为所述待处理文本的文本信息熵;/>为每一文本关键词在所述待处理文本中出现的概率;/>为所述待处理文本;/>为文本关键词。
可选的,所述相似度计算模块具体用于:
将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影;
将所述投影长度进行归一化处理,得到所述文本关键词及所述目标关键词在向量空间上的余弦相似度;
所述计算余弦相似度后,还包括:将组合形成一个相似度概率数组以便于应用。
可选的,所述相似度计算模块具体还用于:
;
式中,为每一文本关键词与所述目标关键词的余弦相似度;/>为文本关键词在第/>个维度上的值;/>为目标关键词在第𝑖个维度上的值。
可选的,所述相似度处理模块具体用于:
;
式中,为所述处理后的相似度;/>为相似度概率数组中元素的个数;/>为相似度概率数组中第𝑖个元素的值;/>为所述待处理文本的文本信息熵。
可选的,所述文本相似度的计算装置还包括准确性检测模块,用于:
利用标准正态分布的Z分位数表,确定置信水平对应的临界值;
根据所述处理后的相似度、所述临界值及所述文本关键词计算置信度;
根据计算得到的置信度,检测所述处理后的相似度的计算准确性。
可选的,所述准确性检测模块具体用于:
;
式中,为置信度;/>为所述处理后的相似度;/>为所述文本关键词的总量;/>为置信水平对应的临界值。
第三方面,本申请提供一种电子设备,包括:存储器和处理器,所述存储器上存储有能够被处理器加载并执行第一方面的方法的计算机程序。
第四方面,本申请提供一种计算机可读存储介质,存储有能够被处理器加载并执行第一方面的方法的计算机程序。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本申请一实施例提供的一种应用场景示意图;
图2为本申请一实施例提供的一种文本相似度的计算方法的流程图;
图3为本申请一实施例提供的一种文本相似度的计算装置的结构示意图;
图4为本申请一实施例提供的一种电子设备的结构示意图。
实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
另外,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,如无特殊说明,一般表示前后关联对象是一种“或”的关系。
下面结合说明书附图对本申请实施例作进一步详细描述。
在进行数据清洗时,一般会通过文本相似度来帮助识别重复数据、标准化文本、检测异常文本、聚类分类文本以及进行数据集成和匹配。从而提高数据清洗的效率和准确性,为后续的数据分析和建模打下坚实的基础。
截止目前为止,文本相似度的确定存在多种方式,但是不管使用哪种方法,都在不同程度上无法完全捕捉到文本的语义和语境。这就使得文本相似度存在一定的误差。如果将多种方式进行结合,虽然可以解决上述问题,但是也大大增加了计算的复杂程度,同时,对模型的依赖也愈加严重,稍有数据出错,则需要重新进行计算,大大增加了工作量,同时也更加考验专业人员对需求和场景的权衡和选择。
基于此,本申请提供一种文本相似度的计算方法、装置、电子设备。
首先获取待处理文本,将得到的待处理文本进行预处理,确定出这一待处理文本的文本关键词,从而根据每一文本关键词在待处理文本中出现的概率,从而确定待处理文本的文本信息熵。此外,将每一文本关键词进行向量转化,得到对应的词向量。此外,获取待处理文本对应的对比文本并利用上述预处理的方式,得到目标关键词,并进行向量转化,得到对应的目标词向量。并利用对应的词向量以及目标词向量,计算余弦相似度。最后,利用每一文本关键词对应的文本信息熵,将得到的余弦相似度进行加权平均处理,得到最终处理后的相似度。通过利用余弦相似度的计算方式,先确定出这一待处理文本的相似度,另外,由于一段文本中有多个词,每个词的相似距离大小不一,在进行相似度对比时如果仅看某个词,则会出现很大的极差,而利用文本信息熵,将得到的余弦相似度进行加权平均处理,可以使极差变小,更好地凸显相似度,从而提高相似度结果的准确性,减少计算误差。
图1为本申请提供的一种应用场景示意图。在需要确定文本相似度时,可以通过本申请提供的方案进行确定。本申请提供的方案可以搭载在任意一个服务器中。首先,通过用户输入的待处理文本,利用本申请的方法将待处理文本进行对应的处理,得到文本信息熵。然后通过互联网爬取得到对比文本,并得到对应的目标词向量,进而利用文本信息熵以及文本关键词对应的西向量,得到余弦相似度,然后将余弦相似度进行加权平均处理,得到处理后的相似度。由于一段文本中有多个词,每个词的相似距离大小不一,在进行相似度对比时如果仅看某个词,则会出现很大的极差,而利用文本信息熵,将得到的余弦相似度进行加权平均处理,可以使极差变小,更好地凸显相似度,从而提高相似度结果的准确性,减少计算误差。
具体的实现方式可以参考以下实施例。
图2为本申请一实施例提供的一种文本相似度的计算方法的流程图,本实施例的方法可以应用于以上场景中的服务器。如图2所示的,该方法包括:
S201、获取待处理文本,并将待处理文本进行预处理,得到文本关键词。
待处理文本可以是从互联网上爬取到的文本数据,例如网页内容、论坛帖子、新闻文章等。也可以是来自社交媒体平台的文本数据,例如推特上的推文、微博上的微博内容、Facebook上的帖子等。也可以是来自本地存储的文本文件,例如日志文件、数据导出文件等。
预处理可以认为是对这一待处理文本进行的相关处理。比如对待处理文本进行分词,即将待处理文本按照句子或者单词或者空格切割的方式,将待处理文本进行分割。
另外,在对待处理文本进行分割以后,为了区分每一词,可以按照聚类算法,将待处理文本进行关键词的抽取,得到文本关键词。在具体实现方式中,首先利用聚类算法,计算待处理文本的距离和相似性,从而根据这一相似性和距离,将待处理文本进行分族,然后在每一族按照词出现的频率进行关键词抽取,得到文本关键词。比如,频率较高的词可以作为关键词。另外,也可以将每一族进行分词以后,利用词组的出现频率以及分布特征进行关键词的抽取。
S202、根据每一文本关键词在待处理文本中出现的概率,确定待处理文本的文本信息熵。
将这一文本关键词在待处理文本中出现的次数与这一待处理文本中得到的所有词进行比较,从而得出这一文本关键词在这一待处理文本中所占的比例。这一比例可以认为是文本关键词在待处理文本中出现的概率。
针对于每一文本关键词,均进行上述操作,确定每一文本关键词在待处理文本中出现的概率,从而利用文本信息熵的计算方式,将每一文本关键词在待处理文本中出现的概率代入,计算得到待处理文本的文本信息熵。
S203、根据待处理文本,确定对比文本,并将对比文本进行预处理,得到目标关键词。
目标关键词存在于对比文本中,而对比文本可以认为是与待处理文本相对应的,可以作为参考的文本内容,因为很多场景下获取的待处理文本的大致内容相同,可能只存在少部分内容有区别,因此可以在进行爬取时,以存在相同内容的部分为基础,作为对比文本存储在数据库中,当得到待处理文本后,可以对待处理文本进行文本的扫描,然后根据扫描结果,确定数据库中是否存在相似度较高文本,作为对比文本,即在得到这一待处理文本时,利用文本关键词进行爬取得到的。在进行爬取时,爬取的依据可以是文本关键词的词性、含义等。
当得到对比文本后,将对比文本按照上述步骤将对比文本进行预处理,得到对比文本对应的目标关键词。
S204、将文本关键词、目标关键词进行向量转化,得到文本关键词对应的词向量以及目标关键词对应的目标词向量,并利用词向量及目标词向量,计算余弦相似度。
向量转化可以认为是一种将文本数据转换为数值向量的过程。在具体实现方式中,可以首先创建一个词汇表,这一词汇表中可以包含若干可能存在的词汇,即可能成为待处理文本中文本关键词的词汇。在创建词汇表时,为这些词汇赋予对应的向量。然后创建一个深度学习模型,将这些词汇的标识符以及可能会出现这些词汇的上下关联文作为样本数据,训练这一深度学习模型,使得这一深度学习模型可以根据识别到的上下关联文,确定这一上下关联文中可能包含的词汇,从而确定对应的词向量。
然后将目标关键词按照上述步骤进行向量转化,得到目标词向量。此时,将得到的目标词向量以及对应的文本关键词的词向量一一代入余弦相似度的计算公式中,在计算完成后对其进行归一化处理,得到文本关键词及目标关键词在向量空间上的余弦相似度,作为处理后的相似度。
S205、根据文本信息熵,将余弦相似度进行加权平均处理,得到处理后的相似度。
当某两个文本中存在同样数量的文本关键词,如“A、B、C”时,虽然存在相同的文本关键词,但是由于文本的内容不同,长度不同,这就导致这两个文本对比相似度之后,发现两者之间并没有很高的相似度,和实际情况相差较大。由于文本信息熵可以用来表征文本的信息丰富程度,因此,在进行余弦相似度的加权平均处理时,可以根据加权平均公式,将文本信息熵作为底数,进行计算,这样处理可以使极差降低,结果更加真实,此时再进行相似度对比,得到的结果也更加准确。
通过本申请提供的方案,首先获取待处理文本,将得到的待处理文本进行预处理,确定出这一待处理文本的文本关键词,从而根据每一文本关键词在待处理文本中出现的概率,从而确定待处理文本的文本信息熵。此外,将每一文本关键词进行向量转化,得到对应的词向量。此外,获取待处理文本对应的对比文本并利用上述预处理的方式,得到目标关键词,并进行向量转化,得到对应的目标词向量。并利用对应的词向量以及目标词向量,计算余弦相似度。最后,利用每一文本关键词对应的文本信息熵,将得到的余弦相似度进行加权平均处理,得到最终处理后的相似度。通过利用余弦相似度的计算方式,先确定出这一待处理文本的相似度,另外,由于一段文本中有多个词,每个词的相似距离大小不一,在进行相似度对比时如果仅看某个词,则会出现很大的极差,而利用文本信息熵,将得到的余弦相似度进行加权平均处理,可以使极差变小,更好地凸显相似度,从而提高相似度结果的准确性,减少计算误差。
在一些实施例中,将待处理文本按照预设单位进行分词,得到拆分后的若干词;根据待处理文本的内容,确定每一词在待处理文本中出现的次数;将每一词在待处理文本中出现的次数从高到低进行排序,得到排序结果,并将预设排名前的词作为文本关键词。
预设单位可以认为是预先设置的文本分词单位,比如按照空格进行分词,每遇到一次空格即将空格前后的文本进行分割。这一预设单位可以是预先设置一种单位,也可以是多种混合的情况,比如第一种方式是按照空格进行分词,另一种方式是遇到文字“的”就进行分词,此时,当这两种情况中的任意一种触发时,即进行分词。
词性可以理解为词的特点,是一种将词进行划分词类的依据。
预设排名可以认为是排名的名次,比如100名,此时预设排名前的词可以认为是从高到低排序后,前100个词。
具体的,将待处理文本按照预设单位进行分词以后,按照每一词,在待处理文本中进行检索,确定每一词在待处理文本中出现的次数。遍历所有词后,将每一词出现的次数进行由高到低的排序,从而去预设排名前的词作为文本关键词。
通过本实施例提供的方案,可以将待处理文本进行预处理,将待处理文本进行分割,使得可以进行后续的处理,相较于直接利用待处理文本进行后续的相似度计算而言,可以去除无用的符号,从而利用词出现的次数,确定词在文本中的重要性,并将较为重要的词作为文本关键词,便于后续进行相似度计算。
在一些实施例中,根据每一文本关键词在待处理文本中出现的概率,确定待处理文本的文本信息熵,按以下公式(1)计算:
(1)
式中,为待处理文本的文本信息熵;/>为每一文本关键词在待处理文本中出现的概率;/>为待处理文本;/>为文本关键词。
通过本实施例提供的方式,利用每一文本关键词在待处理文本中出现的概率,计算文本信息熵,可以将文本内容转化为数字化的度量,帮助我们理解文本的信息含量和重要程度。
在一些实施例中,可以将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影;将投影长度进行归一化处理,得到文本关键词及目标关键词在向量空间上的余弦相似度;计算余弦相似度后,还包括:将组合形成一个相似度概率数组以便于应用。
在具体实现方式中,可以通过建立一个向量空间,为若干可能存在的词赋予向量。比如,建立一个model,这一model可以认为是一个多维空间。将若干第三方软件中可能存在的词组作为样本输入到这一model中,为每一个词组赋予对应的向量,从而得到一个向量空间。当通过上述方式分词以后,将词输入到这一model中,就可以得到这一词对应的向量。
由于上述model向量空间属于一个多维空间,因此,在将每一词向量与对应的目标词向量进行点积计算相似度时,结果就可能会存在正负之分,但其计算得到的结果均会在(-1,1)之间,为了得到相似度概率,将每一词向量与对应的目标词向量在多维空间上的投影进行归一化处理,使得结果范围落在(0,1)之间,从而得到每一词向量与对应的目标词向量的相似度。
在具体实现方式中通过上述词向量以及目标词向量计算得到每一文本关键词的余弦相似度后,这些相似度可以形成一个相似度概率数组,以便于后续进行操作。
通过本实施例提供的方案,将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影,为了方便后续计算,将投影长度进行归一化处理,得到对应的相似度。整个过程不需要进行复杂的计算,节省数据处理的时间。
在一些实施例中,根据每一文本关键词对应的词向量及目标词向量,计算余弦相似度,按以下公式(2)计算:
(2)
式中,为每一文本关键词与所述目标关键词的余弦相似度;/>为文本关键词在第/>个维度上的值;/>为目标关键词在第𝑖个维度上的值。
通过本实施例提供的方案,利用文本关键词对应的词向量以及目标词向量,计算余弦相似度,由于词向量以及目标词向量均与待处理文本对应,因此,得出的余弦相似度的准确性更高,存在误差的概率较小。
在一些实施例中,根据文本信息熵,将余弦相似度进行加权平均处理,得到处理后的相似度,按以下公式(3)计算:
(3)
式中,为所述处理后的相似度;/>为相似度概率数组中元素的个数;/>为相似度概率数组中第𝑖个元素的值;/>为所述待处理文本的文本信息熵。
在具体实现方式中,当关键词相同时,由于文本内容的长度不同,内容也大相径庭,此时,此时,即使文本关键词与目标关键词存在较多相同之处,但是计算出来的相似度也会由于文本长度或内容相差较大。为了减少这种情况的出现,以文本信息熵为底数,在文本丰富度已知的情况下,计算余弦相似度,从而减少余弦相似度与实际情况之间的极差。
通过本实施例提供的方案,相较于利用多种方式得到相似度,然后将多种方式得到的相似度进行加权平均而言,根据文本信息熵,将余弦相似度进行加权平均处理,可以减少余弦相似度与实际情况之间的极差,使余弦相似度的结果更加趋于真实状态。
在一些实施例中,得到处理后的相似度后,利用标准正态分布的Z分位数表,确定置信水平对应的临界值;根据处理后的相似度、临界值及文本关键词计算置信度;根据计算得到的置信度,检测处理后的相似度的计算准确性。
标准正态分布的Z分位数表是根据标准正态分布的累积分布函数计算得出的。它可以帮助我们进行标准正态分布的概率转换为Z值,或者根据Z值计算对应的概率和置信度。置信水平对应的临界值可以认为是Z值。
在得到临界值后,利用处理后的相似度、对应的临界值以及文本关键词计算置信度,从而根据这一置信度在置信区间的位置,来佐证本次计算出的处理后的相似度的可信程度。
通过本实施例提供的方式,利用标准正态分布的Z分位数表,确定处理后的相似度所在置信水平对应的临界值,进而根据处理后的相似度、临界值及文本关键词来计算置信度,从而根据置信度来确定本次得到的处理后的相似度是否真实,提高计算的效率。
在一些实施例中,根据处理后的相似度、临界值及文本关键词计算置信度,按以下公式(4)计算:
(4)
式中,为置信度;/>为所述处理后的相似度;/>为所述文本关键词的总量;/>为处理后的相似度的置信水平对应的临界值。
通过本实施例提供的方式,利用这一公式计算置信度,只需知晓处理后的相似度,文本关键词的总量以及处理后的相似度的置信水平对应的临界值即可,这些数据都是可以通过较为简单的处理得到的,减少了数据处理的复杂程度。
图3为本申请一实施例提供的一种文本相似度的计算装置的结构示意图,如图3所示的,本实施例的文本相似度的计算装置300包括:文本处理模块301、信息熵确定模块302、目标关键词获取模块303、相似度计算模块304、相似度处理模块305。
文本处理模块301,用于获取待处理文本,并将所述待处理文本进行预处理,得到文本关键词;
信息熵确定模块302,用于根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵;
目标关键词获取模块303,用于根据所述待处理文本,确定对比文本,并将所述对比文本进行预处理,得到目标关键词;
相似度计算模块304,用于将所述文本关键词、所述目标关键词进行向量转化,得到所述文本关键词对应的词向量以及所述目标关键词对应的目标词向量,并利用所述词向量及所述目标词向量,计算余弦相似度;
相似度处理模块305,用于根据所述文本信息熵,将所述余弦相似度进行加权平均处理,得到处理后的相似度。
可选的,所述文本处理模块301具体用于:
将所述待处理文本按照预设单位进行分词,得到拆分后的若干词;
根据所述待处理文本的内容,确定每一词在所述待处理文本中出现的次数;
将每一词在所述待处理文本中出现的次数从高到低进行排序,得到排序结果,并将预设排名前的词作为文本关键词。
可选的,所述信息熵确定模块302具体用于:
;
式中,为所述待处理文本的文本信息熵;/>为每一文本关键词在所述待处理文本中出现的概率;/>为所述待处理文本;/>为文本关键词。
可选的,所述相似度计算模块304具体用于:
将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影;
将所述投影长度进行归一化处理,得到所述文本关键词及所述目标关键词在向量空间上的余弦相似度;
所述计算余弦相似度后,还包括:将组合形成一个相似度概率数组以便于应用。
可选的,所述相似度计算模块304具体用于:
;
式中,为每一文本关键词与所述目标关键词的余弦相似度;/>为文本关键词在第/>个维度上的值;/>为目标关键词在第𝑖个维度上的值。
可选的,所述相似度处理模块305具体用于:
;
式中,为所述处理后的相似度;/>为相似度概率数组中元素的个数;/>为相似度概率数组中第𝑖个元素的值;/>为所述待处理文本的文本信息熵。
可选的,所述文本相似度的计算装置还包括准确性检测模块306,用于:
利用标准正态分布的Z分位数表,确定置信水平对应的临界值;
根据所述处理后的相似度、所述临界值及所述文本关键词计算置信度;
根据计算得到的置信度,检测所述处理后的相似度的计算准确性。
可选的,所述准确性检测模块306具体用于:
;
式中,为置信度;/>为所述处理后的相似度;/>为所述文本关键词的总量;/>为置信水平对应的临界值。
本实施例的装置,可以用于执行上述任一实施例的方法,其实现原理和技术效果类似,此处不再赘述。
图4为本申请一实施例提供的一种电子设备的结构示意图,如图4所示,本实施例的电子设备400可以包括:存储器401和处理器402。
存储器401上存储有能够被处理器402加载并执行上述实施例中方法的计算机程序。
其中,处理器402和存储器401相连,如通过总线相连。
可选地,电子设备400还可以包括收发器。需要说明的是,实际应用中收发器不限于一个,该电子设备400的结构并不构成对本申请实施例的限定。
处理器402可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器402也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等。
总线可包括一通路,在上述组件之间传送信息。总线可以是PCI(PeripheralComponent Interconnect,外设部件互连标准)总线或EISA(Extended Industry StandardArchitecture,扩展工业标准结构)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器401可以是ROM(Read Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(Random Access Memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
存储器401用于存储执行本申请方案的应用程序代码,并由处理器402来控制执行。处理器402用于执行存储器401中存储的应用程序代码,以实现前述方法实施例所示的内容。
其中,电子设备包括但不限于:移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。还可以为服务器等。图4示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
本实施例的电子设备,可以用于执行上述任一实施例的方法,其实现原理和技术效果类似,此处不再赘述。
本申请还提供一种计算机可读存储介质,存储有能够被处理器加载并执行如上实施例中的方法的计算机程序。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (9)
1.一种文本相似度的计算方法,其特征在于,包括:
获取待处理文本,并将所述待处理文本进行预处理,得到文本关键词;
根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵;
根据所述待处理文本,确定对比文本,并将所述对比文本以与所述待处理文本相同的方式进行预处理,得到目标关键词;
将所述文本关键词、所述目标关键词进行向量转化,得到所述文本关键词对应的词向量以及所述目标关键词对应的目标词向量,并利用所述词向量及所述目标词向量,计算余弦相似度;
按照如下公式,根据所述文本信息熵,将所述余弦相似度进行加权平均处理,得到处理后的相似度:;式中,nl_prob为所述处理后的相似度;n为相似度概率数组中元素的个数;si为相似度概率数组中第i个元素的值;H(X)为所述待处理文本的文本信息熵。
2.根据权利要求1所述的方法,其特征在于,所述将所述待处理文本进行预处理,得到文本关键词包括:
将所述待处理文本按照预设单位进行分词,得到拆分后的若干词;
根据所述待处理文本的内容,确定每一词在所述待处理文本中出现的次数;
将每一词在所述待处理文本中出现的次数从高到低进行排序,得到排序结果,并将预设排名前的词作为文本关键词。
3.根据权利要求1所述的方法,其特征在于,所述根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵,按以下公式计算:
H(X)=-∑P(x)×log2(P(x));
式中,H(X)为所述待处理文本的文本信息熵;p(x)为每一文本关键词在所述待处理文本中出现的概率;X为所述待处理文本;x为文本关键词。
4.根据权利要求1所述的方法,其特征在于,所述利用词向量及所述目标词向量,计算余弦相似度,包括:
将每一词向量与对应的目标词向量进行点积计算,得到每一词向量与对应的目标词向量在多维空间上的投影;
将所述投影长度进行归一化处理,得到所述文本关键词及所述目标关键词在向量空间上的余弦相似度;
所述计算余弦相似度后,还包括:将组合形成一个相似度概率数组以便于应用。
5.根据权利要求1所述的方法,其特征在于,所述利用所述词向量及所述目标词向量,计算余弦相似度,按以下公式计算:
式中,similarity为每一文本关键词与所述目标关键词的余弦相似度;v1,i为文本关键词在第i个维度上的值;v2,i为目标关键词在第i个维度上的值。
6.根据权利要求1所述的方法,其特征在于,得到处理后的相似度后,还包括:
利用标准正态分布的Z分位数表,确定置信水平对应的临界值;
根据所述处理后的相似度、所述临界值及所述文本关键词的总量计算置信度;
根据计算得到的置信度,检测所述处理后的相似度的计算准确性。
7.根据权利要求6所述的方法,其特征在于,所述根据所述处理后的相似度、所述临界值及所述文本关键词计算置信度,按以下公式计算:
式中,W为置信度;nl_prob为所述处理后的相似度;total为所述文本关键词的总量;pz为置信水平对应的临界值。
8.一种文本相似度的计算装置,其特征在于,包括:
文本处理模块,用于获取待处理文本,并将所述待处理文本进行预处理,得到文本关键词;
信息熵确定模块,用于根据每一文本关键词在所述待处理文本中出现的概率,确定所述待处理文本的文本信息熵;
目标关键词获取模块,用于根据所述待处理文本,确定对比文本,并将所述对比文本以与所述待处理文本相同的方式进行预处理,得到目标关键词;
相似度计算模块,用于将所述文本关键词、所述目标关键词进行向量转化,得到所述文本关键词对应的词向量以及所述目标关键词对应的目标词向量,并利用所述词向量及所述目标词向量,计算余弦相似度;
相似度处理模块,用于按照如下公式,根据所述文本信息熵,将所述余弦相似度进行加权平均处理,得到处理后的相似度:
式中,nl_prob为所述处理后的相似度;n为相似度概率数组中元素的个数;si为相似度概率数组中第i个元素的值;H(X)为所述待处理文本的文本信息熵。
9.一种电子设备,其特征在于,包括:存储器和处理器;
所述存储器,用于存储程序指令;
所述处理器,用于调用并执行所述存储器中的程序指令,执行如权利要求1-7任一项所述的文本相似度的计算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311336303.6A CN117252184B (zh) | 2023-10-16 | 2023-10-16 | 文本相似度的计算方法、装置、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311336303.6A CN117252184B (zh) | 2023-10-16 | 2023-10-16 | 文本相似度的计算方法、装置、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117252184A CN117252184A (zh) | 2023-12-19 |
CN117252184B true CN117252184B (zh) | 2024-05-28 |
Family
ID=89127714
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311336303.6A Active CN117252184B (zh) | 2023-10-16 | 2023-10-16 | 文本相似度的计算方法、装置、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117252184B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180072167A (ko) * | 2016-12-21 | 2018-06-29 | 특허법인 해담 | 유사특허 추출 시스템 및 그 방법 |
CN109325229A (zh) * | 2018-09-19 | 2019-02-12 | 中译语通科技股份有限公司 | 一种利用语义信息计算文本相似度的方法 |
CN111737997A (zh) * | 2020-06-18 | 2020-10-02 | 达而观信息科技(上海)有限公司 | 一种文本相似度确定方法、设备及储存介质 |
CN115374775A (zh) * | 2021-05-19 | 2022-11-22 | 中移(苏州)软件技术有限公司 | 一种确定文本相似度的方法、装置、设备及存储介质 |
-
2023
- 2023-10-16 CN CN202311336303.6A patent/CN117252184B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20180072167A (ko) * | 2016-12-21 | 2018-06-29 | 특허법인 해담 | 유사특허 추출 시스템 및 그 방법 |
CN109325229A (zh) * | 2018-09-19 | 2019-02-12 | 中译语通科技股份有限公司 | 一种利用语义信息计算文本相似度的方法 |
CN111737997A (zh) * | 2020-06-18 | 2020-10-02 | 达而观信息科技(上海)有限公司 | 一种文本相似度确定方法、设备及储存介质 |
CN115374775A (zh) * | 2021-05-19 | 2022-11-22 | 中移(苏州)软件技术有限公司 | 一种确定文本相似度的方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117252184A (zh) | 2023-12-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109885813B (zh) | 一种基于词语覆盖度的文本相似度的运算方法及系统 | |
WO2021189951A1 (zh) | 文本搜索方法、装置、计算机设备和存储介质 | |
US20210216576A1 (en) | Systems and methods for providing answers to a query | |
CN110334209B (zh) | 文本分类方法、装置、介质及电子设备 | |
CN111797214A (zh) | 基于faq数据库的问题筛选方法、装置、计算机设备及介质 | |
CN109783631B (zh) | 社区问答数据的校验方法、装置、计算机设备和存储介质 | |
CN111898366A (zh) | 文献主题词聚合方法、装置、计算机设备及可读存储介质 | |
CN112329460B (zh) | 文本的主题聚类方法、装置、设备及存储介质 | |
CN112836039B (zh) | 基于深度学习的语音数据处理方法和装置 | |
CN112487824A (zh) | 客服语音情感识别方法、装置、设备及存储介质 | |
CN110727769A (zh) | 语料库生成方法及装置、人机交互处理方法及装置 | |
CN111400439A (zh) | 网络不良数据监控方法、装置及存储介质 | |
CN111859079A (zh) | 信息搜索方法、装置、计算机设备及存储介质 | |
CN117252184B (zh) | 文本相似度的计算方法、装置、电子设备 | |
CN112765976A (zh) | 文本相似度计算方法、装置、设备及存储介质 | |
CN112613310A (zh) | 一种人名匹配方法、装置、电子设备及存储介质 | |
CN109344397B (zh) | 文本特征词语的提取方法及装置、存储介质及程序产品 | |
CN114691907B (zh) | 一种跨模态检索的方法、设备及介质 | |
CN113505196B (zh) | 基于词性的文本检索方法、装置、电子设备及存储介质 | |
CN112989040B (zh) | 一种对话文本标注方法、装置、电子设备及存储介质 | |
CN112579783B (zh) | 基于拉普拉斯图谱的短文本聚类方法 | |
CN110442864B (zh) | 语句通顺度确定方法、装置、电子设备及存储介质 | |
CN111666770A (zh) | 一种语义匹配方法及装置 | |
CN116414939B (zh) | 基于多维度数据的文章生成方法 | |
CN115033594B (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 |