CN108304378B - 文本相似度计算方法、装置、计算机设备和存储介质 - Google Patents
文本相似度计算方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN108304378B CN108304378B CN201810031770.0A CN201810031770A CN108304378B CN 108304378 B CN108304378 B CN 108304378B CN 201810031770 A CN201810031770 A CN 201810031770A CN 108304378 B CN108304378 B CN 108304378B
- Authority
- CN
- China
- Prior art keywords
- matched
- target
- sequence
- word
- similarity
- 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
Classifications
-
- 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
- G06F40/289—Phrasal analysis, e.g. finite state techniques or chunking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Data Mining & Analysis (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Evolutionary Computation (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请涉及一种文本相似度计算方法、系统、计算机设备和存储介质。方法包括:获取待匹配字符序列和目标字符序列;对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。采用本方法能够提高文本相似度的准确性。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种文本相似度计算方法、装置、计算机设备和存储介质。
背景技术
随着聊天机器人技术的发展,出现了字符串模糊搜索的概念,通常会采取编辑距离算法实现字符串匹配。编辑距离又称Levenshtein距离,是指两个字串之间,由一个转成另一个所需的最少编辑操作次数。许可的编辑操作包括将一个字符替换成另一个字符,插入一个字符,删除一个字符。编辑距离值越大,则字符串之间的相似度越小。
然而,由于语言的复杂性,相同的意思可以通过不同的文本来进行表达,而表面上很相似的文本,所表达出的含义也可能大不相同,传统的编辑距离算法通常以单个字符为单位计算各个字符序列之间的编辑距离,计算出来的编辑距离只是文字表面的距离,导致计算得到的文本相似度的准确度较低。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高文本相似度的文本相似度计算方法、装置、计算机设备和存储介质。
一种文本相似度计算方法,所述方法包括:获取待匹配字符序列和目标字符序列;对所述待匹配字符序列和所述目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;将所述待匹配词集合和所述目标词集合通过第二相似度算法进行计算,得到第二相似度;根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度。
在其中一个实施例中,所述对所述待匹配字符序列和所述目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列,包括:将所述待匹配字符序列中包含的无关字符和所述目标字符序列中包含的无关字符删除;对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
在其中一个实施例中,所述无关字符包括停用字符和相同字符;所述将所述待匹配字符序列中包含的无关字符和所述目标字符序列中包含的无关字符删除,包括:将所述待匹配字符序列中包含的停用字符和所述目标字符序列中包含的停用字符删除;判断删除停用字符后的待匹配字符序列和目标字符序列中是否存在相同字符;所述相同字符是指在所述删除停用字符后的待匹配字符序列和目标字符序列中,处于相同位置的相同字符;若是,则将所述删除停用字符后的待匹配字符序列和目标字符序列中包含的所述相同字符删除,得到相应的待匹配词序列和目标词序列。
在其中一个实施例中,所述将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度,包括:将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过编辑距离公式进行计算,得到所述待匹配词序列与所述目标词序列之间的编辑距离;获取所述待匹配词序列中包含的待匹配词的第一数量,和所述目标词序列中包含的目标词的第二数量;根据所述编辑距离、第一数量和第二数量进行计算,得到第一相似度。
在其中一个实施例中,所述将所述待匹配词集合和所述目标词集合通过第二相似度算法进行计算,得到第二相似度,包括:将所述待匹配词集合和所述目标词集合进行匹配,统计所述待匹配词与所述目标词的匹配数量;统计所述待匹配词集合的待匹配词数量和所述目标词集合的目标词数量;根据所述匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
在其中一个实施例中,在所述获取待匹配字符序列和目标字符序列之后,还包括:获取所述待匹配字符序列对应的待匹配拼音序列和目标字符序列对应的目标拼音序列;将所述待匹配拼音序列中包含的待匹配拼音和所述目标拼音序列中包含的目标拼音通过第一相似度算法进行计算,得到第三相似度;所述根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度,包括:根据所述第一相似度、所述第二相似度和第三相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度。
在其中一个实施例中,所述获取待匹配字符序列和目标字符序列,包括:接收终端发送的待匹配字符序列;根据所述待匹配字符序列从数据库中获取多个目标字符序列;在所述根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度之后,还包括:查询文本相似度大于预设相似度阈值的目标字符序列所对应的相关资源;将所述相关资源发送至所述终端。
一种文本相似度计算装置,所述装置包括:字符序列获取模块,用于获取待匹配字符序列和目标字符序列;词序列获取模块,用于对所述待匹配字符序列和所述目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;第一相似度计算模块,用于将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;词集合形成模块,用于提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;第二相似度计算模块,用于将所述待匹配词集合和所述目标词集合通过第二相似度算法进行计算,得到第二相似度;文本相似度计算模块,用于根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述各个实施例中所述的文本相似度计算方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述各个实施例中所述的文本相似度计算方法的步骤。
上述文本相似度计算方法、装置、计算机设备和存储介质,在获取待匹配字符序列和目标字符序列之后,通过对匹配字符序列和目标字符序列进行预处理,得到以词语为单位按顺序形成的待匹配词序列和目标词序列,通过考虑词语顺序的第一相似度算法计算得到第一相似度,再根据待匹配词序列中包含的待匹配词和目标词序列中包含的目标词分别形成待匹配词集合与目标词集合,通过不考虑词语顺序的第二相似度算法计算得到第二相似度,然后综合第一相似度和第二相似度计算得到待匹配字符序列和目标字符序列之间的文本相似度。通过以词语为单位进行相似度计算,并综合两种相似度算法计算文本相似度,降低了以单字符通过单一相似度算法导致的误差,提高了文本相似度计算的准确性。
附图说明
图1为一个实施例中文本相似度计算方法的应用场景图;
图2为一个实施例中文本相似度计算方法的流程示意图;
图3A为一个实施例中实体物质衍生的词语树的示意图;
图3B为一个实施例中虚拟事件衍生的词语树的示意图;
图4为另一个实施例中文本相似度计算方法的流程示意图;
图5为一个实施例中文本相似度计算装置的结构框图;
图6为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解,本发明所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语的限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本发明的范围的情况下,可以将第一相似度称为第二相似度,且类似地,可将第二相似度称为第一相似度。第一相似度和第二相似度两者都是相似度,但其不是同一相似度。
本申请提供的文本相似度计算方法,可以应用于如图1所示的应用环境中。其中,终端102通过网络与服务器104通过网络进行通信。比如说服务器104可接收终端102发送的待匹配字符序列。其中,终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种文本相似度计算方法,以该方法应用于图1中的服务器104为例进行说明,包括以下步骤:
步骤202,获取待匹配字符序列和目标字符序列。
待匹配字符序列是指需要进行匹配的字符序列。目标字符序列是指数据库中预设的字符序列,用于与待匹配字符序列进行匹配。其中,字符序列是指以字符为单位按顺序形成的序列,字符可以是字母、阿拉伯数字、汉字和标点符号中的至少一种。字符序列包括但不限于字母、阿拉伯数字、汉字和标点符号等其中一种或多种的组合。
步骤204,对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列。
预处理是指对待匹配字符序列和目标字符序列进行转换、缩减、拆分等其中至少一种操作的过程。待匹配词序列是指由待匹配字符序列经过预处理得到的词序列。目标词序列是指由目标字符序列经过预处理得到的词序列。其中,词序列是指以词语为单位按顺序形成的序列。待匹配词序列是指以待匹配词为单位按顺序形成的序列。目标词序列是指以目标词为单位按顺序形成的序列。待匹配词和目标词可为由一个或多个字符构成的单纯词,也可为由两个及以上的单纯词构成的合成词。
在一个实施例中,步骤204包括:将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除;对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
无关字符是指不影响文本相似度计算的字符,包括但不限于标点符号及停用字符。分词是指将字符序列按照一定的规律转换成词序列的处理过程。可采用基于字符串匹配的分词方法、基于理解的分词方法和基于统计的分词方法等其中一种或多种的分词方法,对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词。
步骤206,将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度。
第一相似度算法是指按照两个词序列中词语的顺序进行逐词比较之后计算得到相似度的算法。将待匹配词序列与目标词序列分别作为一维词序列,按照待匹配词的顺序和目标词的顺序通过第一相似度算法进行计算,得到第一相似度。将待匹配词序列与目标词序列以一维的形式进行相似度计算,能够节约系统的存储空间,降低时间复杂度。
在一个实施例中,步骤206包括:将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过编辑距离公式进行计算,得到待匹配词序列与目标词序列之间的编辑距离;获取待匹配词序列中包含的待匹配词的第一数量,和目标词序列中包含的目标词的第二数量;根据编辑距离、第一数量和第二数量进行计算,得到第一相似度。
编辑距离是指两个词序列之间,由一个转成另一个所需的最少编辑操作次数。以词语为单位计算两个词序列之间的编辑距离,能够降低词序列的语义对词序列编辑的影响,提高计算词序列相似度的准确性。
举例来说,长度为|S|的待匹配词序列S中包含|S|个待匹配词,长度为|T|的目标词序列T中包含|T|个目标词。待匹配词序列S与目标词序列T的编辑距离levS,T(i,j)可通过公式计算得到。其中,i表示待匹配词序列S中第i个待匹配词,j表示目标词序列T中第j个目标词。当i和j中存在至少一个为0时,编辑距离levS,T(i,j)取i和j中的最大值;否则,编辑距离levS,T(i,j)取levS,T(i,j-1)+1、levS,T(i-1,j)+1、levS,T(i-1,j-1)+1中的最小值。可通过公式计算得到第一相似度sim1S,T(i,j)。其中,Max(|S|,|T|)表示|S|、|T|中的最大值。且第一相似度sim1S,T(i,j)取值为0至1。
步骤208,提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合。
待匹配词集合是指由待匹配词序列中包含的所有待匹配词构成的集合。待目标词集合是指由目标词序列中包含的所有目标词构成的集合。待匹配词集合中的待匹配词不具有顺序,相应地,目标词集合中的目标词也不具有顺序。
在一个实施例中,还可将文字表达的数字转换为阿拉伯数字,比如说可将“三十三”转换为“33”。统一为阿拉伯数字,可以更快捷地进行数字的匹配,提高文本相似度的准确性。
步骤210,将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度。
第二相似度算法是将所有的待匹配词和所有的目标词分别作为一个整体进行比较的相似度算法。包括但不限于基于语义词典的词汇相似度算法及基于语料统计的词汇相似度算法等。
在一个实施例中,步骤210,包括:将待匹配词集合和目标词集合进行匹配,统计待匹配词与目标词的匹配数量;统计待匹配词集合的待匹配词数量和目标词集合的目标词数量;根据匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
步骤212,根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
文本相似度是指待匹配字符序列和目标字符序列之间的相似度。计算得到第一相似度和第二相似度之后,可将第一相似度乘以第二相似度作为文本相似度。还可预设与第一相似度的对应的第一权值,与第二相似度对应的第二权值,对第一相似度与第二相似度进行加权求和计算,得到文本相似度。
上述文本相似度计算方法中,在获取待匹配字符序列和目标字符序列之后,通过对匹配字符序列和目标字符序列进行预处理,得到以词语为单位按顺序形成的待匹配词序列和目标词序列,通过考虑词语顺序的第一相似度算法计算得到第一相似度,再根据待匹配词序列中包含的待匹配词和目标词序列中包含的目标词分别形成待匹配词集合与目标词集合,通过不考虑词语顺序的第二相似度算法计算得到第二相似度,然后综合第一相似度和第二相似度计算得到待匹配字符序列和目标字符序列之间的文本相似度。通过以词语为单位进行相似度计算,并综合两种相似度算法计算文本相似度,降低了以单字符通过单一相似度算法导致的误差,提高了文本相似度计算的准确性。
在一个实施例中,无关字符包括停用字符和相同字符;将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除,包括:将待匹配字符序列中包含的停用字符和目标字符序列中包含的停用字符删除;判断删除停用字符后的待匹配字符序列和目标字符序列中是否存在相同字符;相同字符是指在删除停用字符后的待匹配字符序列和目标字符序列中,处于相同位置的相同字符;若是,则将删除停用字符后的待匹配字符序列和目标字符序列中包含的相同字符删除,得到相应的待匹配词序列和目标词序列。
停用字符是指在信息检索中,为节省存储空间和提高搜索效率,在处理字符序列之前可滤掉某些字或词。针对过滤停用字符可预设停用字符库。比如中文停用字符包括但不限于语气词、连接词及转折词等,比如“啊”、“吧”、“哎”、“的”、“此外”、“但是”等。当检测到停用字符时,可将待匹配字符序列或目标字符序列中包含的停用字符删除。
由于待匹配字符序列中包含的待匹配字符和目标字符序列中包含的目标字符都具有顺序,可将待匹配字符和目标字符按顺序进行匹配,将在待匹配字符序列和目标字符序列中处于相同位置上的相同的字符作为相同字符。分别将待匹配字符序列中的相同字符与目标字符序列中的目标字符删除。举例来说,待匹配字符序列为“这个算法该如何优化”,目标字符序列为“优化算法该怎么做”,通过匹配可知,“算”和“法”处于待匹配字符序列和目标字符序列中的相同位置,因此,可以删除“算”和“法”。删除相同字符之后的待匹配字符序列为“这个该如何优化”,目标字符序列为“优化该怎么做”。
上述实施例中,通过删除停用字符和相同字符等无关字符,可以缩减参与文本相似度计算的词序列长度,能够节约文本相似度计算时间,减少计算所占用的内存空间,提高文本相似度计算效率。
在一个实施例中,还可以将待匹配字符序列或目标字符序列中包含的无关字符替换为预设字符,替换之后可将待匹配字符序列或目标字符序列中包含的预设字符全部清除。比如可将待匹配字符序列S1中包含的无关字符替换为空格符之后,得到包含空格符的待匹配字符序列S2,将待匹配字符序列S2中包含的空格符全部清除,得到不包含空格符的待匹配字符序列S3。可对待匹配字符序列S3进行分词,得到待匹配词序列S4。
在一个实施例中,通过基于语义词典的词汇相似度算法计算第二相似度之前,可针对语义词典中词语的上下位层次关系可构建词语树,如图3A和图3B所示,图3A中的词语为实体物质衍生的词语树,图3B中的词语为虚拟事件衍生的词语树。父节点所对应的词语与子节点所对应的词语具有上下位的关系。可根据词语树计算词语之间的语义距离,且层次越高路径参数越大,层次越低,路径参数越小。距离越大,相似度越小。根据词语树计算词语A和词语B在词语树中的路径长度,即语义距离为d之后,可根据公式计算词语A和词语B的相似度α为参数。
在一个实施例中,可将待匹配词集合与目标词集合进行匹配,通过第二相似度算法计算得到待匹配词集合中的每个待匹配词与目标词集合中每个目标词的第二子相似度。根据计算得到的所有的第二子相似度可计算得到第二相似度。
在一个实施例中,还可将在提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合之后,统计大于预设子相似度阈值的第二子相似度所对应的待匹配词的匹配数量Q(S,T),并统计待匹配词集合中包含的待匹配词数量|S|和目标词集合中包含的目标词数量|T|。第二相似度sim2可通过公式计算得到。其中Max(|S|,|T|)表示待匹配词数量|S|和目标词数量|T|中的最大值。
在一个实施例中,在获取待匹配字符序列和目标字符序列之后,还包括:获取待匹配字符序列对应的待匹配拼音序列和目标字符序列对应的目标拼音序列;将待匹配拼音序列中包含的待匹配拼音和目标拼音序列中包含的目标拼音通过第一相似度算法进行计算,得到第三相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度,包括:根据第一相似度、第二相似度和第三相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
待匹配拼音序列是指待匹配字符序列中的待匹配字符所对应的拼音构成的序列。目标拼音序列是指目标字符序列中的目标字符所对应的拼音构成的序列。可通过在用户进行输入操作时,获取用户输入的待匹配字符所对应的拼音,生成待匹配拼音序列。目标拼音序列可为数据库中预设的与目标字符序列所对应的序列。可以将待匹配拼音序列与目标字符序列以每个字符所对应的拼音为单位,通过第一相似度算法进行计算得到第三相似度。
举例来说,待匹配字符序列“你名字拗口”所对应的待匹配拼音序列为“ni mingzi ao kou”,目标字符序列“你太执拗”所对应的目标拼音序列为“ni tai zhi niu”。虽然待匹配字符序列和目标字符序列中都包含“拗”这个字符,但是由于“拗”在待匹配拼音序列和目标拼音序列中所对应的拼音分别为“ao”和“niu”,差别很大,因此通过以待匹配拼音序列和目标拼音序列进行文本相似度的计算,可以降低“拗”这个多音字带来的误差。
上述实施例中,通过引入待匹配拼音序列和目标拼音序列,能够检测到由于多音字导致相同文字但语义不同的情况,从而降低因多音字导致的文本相似度误差。
在一个实施例中,获取待匹配字符序列和目标字符序列,包括:接收终端发送的待匹配字符序列;根据待匹配字符序列从数据库中获取多个目标字符序列;在根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度之后,还包括:查询文本相似度大于预设相似度阈值的目标字符序列所对应的相关资源;将相关资源发送至终端。
将待匹配字符序列与多个目标字符序列进行文本相似度计算,还可以确定与待匹配字符序列的文本相似度最高的目标字符序列。目标字符序列可关联文本、图片、链接、音频、视频等相关资源。举例来说,待匹配字符序列可为用户通过终端发送的用于咨询问题的字符序列。目标字符序列可为关联相应答案文本的字符序列。当确定了与待匹配字符序列文本相似度最高的目标字符序列之后,可将目标字符序列关联的相应答案文本的字符序列发送至终端。
在一个实施例中,如图4所示,提供了另一种文本相似度计算方法,该方法包括以下步骤:
步骤402,获取待匹配字符序列和目标字符序列。
待匹配字符序列和目标字符序列可为字母、阿拉伯数字、汉字和标点符号等其中一种或多种的组合。
举例来说,待匹配字符序列可以为用户通过终端发送的用于咨询问题的字符序列。比如待匹配字符序列可以是“请问3台电脑是多少钱?”。而目标字符序列可以为数据库中预存的问题模板的字符序列。比如目标字符序列可以是“3台计算机价格?”。当接收到终端发送的待匹配字符序列之后,可查找数据库中预设的目标字符序列。
步骤404,将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除。
无关字符包括但不限于标点符号及停用字符。针对过滤停用字符可预设停用字符库。中文停用字符包括但不限于语气词、连接词及转折词等,比如“啊”、“吧”、“哎”、“的”、“此外”、“但是”等。当检测到停用字符时,可将待匹配字符序列或目标字符序列中包含的停用字符删除。
举例来说,待匹配字符序列为“请问3台电脑是多少钱?”。其中,包含标点符号“?”,和停用字符“是”,将该待匹配字符序列中包含的无关字符进行删除之后得到“3台电脑多少钱”。
步骤406,对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
分词是指将字符序列按照一定的规律转换成词序列的处理过程。待匹配词序列是指以待匹配词为单位按顺序形成的序列。目标词序列是指以目标词为单位按顺序形成的序列。
举例来说,对该删除无关字符之后的待匹配字符序列进行分词,可得到待匹配词序列“3|台|电脑|多少|钱”,其中“|”表示词分隔符,用于区分待匹配词序列中不同的词语。该待匹配词序列中包含“3”、“台”、“电脑”、“多少”、“钱”五个待匹配词。
步骤408,将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过编辑距离公式进行计算,得到待匹配词序列与目标词序列之间的编辑距离。
编辑距离公式是指计算两个词序列之间以词语为单位由一个转成另一个所需的最少编辑操作次数的公式。其中,最少编辑操作次数即为编辑距离。许可的编辑操作包括将一个词语替换成另一个词语,插入一个词语,删除一个词语。
举例来说,待匹配词序列为“3|台|电脑|多少|钱”,目标词序列为“3|台|计算机|价格”。将待匹配词序列转换为目标词序列需要进行3次操作,包括将“电脑”替换成“计算机”,将“多少”删除,将“钱”替换为“价格”。还可以预设同义词词库,由于“电脑”等同于“计算机”,因此可以不将“电脑”与“计算机”的替换过程不计入编辑距离。
步骤410,获取待匹配词序列中包含的待匹配词的第一数量,和目标词序列中包含的目标词的第二数量。
步骤412,根据编辑距离、第一数量和第二数量进行计算,得到第一相似度。
举例来说,长度为|S|的待匹配词序列S中包含|S|个待匹配词,长度为|T|的目标词序列T中包含|T|个目标词。待匹配词序列S与目标词序列T的编辑距离levS,T(i,j)可通过公式计算得到。其中,i表示待匹配词序列S中第i个待匹配词,j表示目标词序列T中第j个目标词。当i和j中存在至少一个为0时,编辑距离levS,T(i,j)取i和j中的最大值;否则,编辑距离levS,T(i,j)取levS,T(i,j-1)+1、levS,T(i-1,j)+1、levS,T(i-1,j-1)+1中的最小值。可通过公式计算得到第一相似度sim1S,T(i,j)。其中,Max(|S|,|T|)表示|S|、|T|中的最大值。且第一相似度sim1S,T(i,j)取值为0至1。
步骤414,提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合。
举例来说,待匹配词序列为“3|台|电脑|多少|钱”,可提取待匹配词序列中包含的所有待匹配词,形成待匹配词集合为{“3”、“台”、“电脑”、“多少”、“钱”}。其中,“3”、“台”、“电脑”、“多少”及“钱”五个待匹配词是并列关系,不具有顺序。
步骤416,将待匹配词集合和目标词集合进行匹配,统计待匹配词与目标词的匹配数量。
可针对语义词典中词语的上下位层次关系可构建词语树,通过待匹配词与目标词在词语树中的路径距离,计算待匹配词与目标词之间的第二子相似度。将大于预设子相似度阈值的第二子相似度所对应的待匹配词与目标词判定为匹配,统计待匹配词集合和目标词集合中待匹配词与目标词的匹配数量。
步骤418,统计待匹配词集合的待匹配词数量和目标词集合的目标词数量。
步骤420,根据匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
举例来说,待匹配词集合为{“电脑”、“多少”、“钱”},目标词集合为{“计算机”、“价格”},可计算“电脑”与“计算机”的相似度sim11、“电脑”与“价格”的相似度sim12、“多少”与“计算机”的相似度sim21、“多少”与“价格”的相似度sim22、“钱”与“计算机”的相似度sim31、“钱”与“价格”的相似度sim32。取每个待匹配词与目标词集合的目标词计算得到的最大第二子相似度相乘,得到第二相似度sim2。比如说,与“电脑”、“多少”、“钱”所对应的最大第二子相似度分别为sim11、sim22、sim32,则第二相似度sim2可通过公式sim2=sim11×sim22×sim32计算得到。
步骤422,根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
举例来说,计算得到第一相似度sim1和第二相似度sim2之后,可将第一相似度sim1和第二相似度sim2乘以相应的第一权值w1与第二权值w2,计算得到文本相似度sim(S,T)=sim1×w1+sim2×w2。
上述文本相似度计算方法中,在获取待匹配字符序列和目标字符序列之后,通过对匹配字符序列和目标字符序列进行预处理,得到以词语为单位按顺序形成的待匹配词序列和目标词序列,通过考虑词语顺序的第一相似度算法计算得到第一相似度,再根据待匹配词序列中包含的待匹配词和目标词序列中包含的目标词分别形成待匹配词集合与目标词集合,通过不考虑词语顺序的第二相似度算法计算得到第二相似度,然后综合第一相似度和第二相似度计算得到待匹配字符序列和目标字符序列之间的文本相似度。通过以词语为单位进行相似度计算,并综合两种相似度算法计算文本相似度,降低了以单字符通过单一相似度算法导致的误差,提高了文本相似度计算的准确性。
应该理解的是,虽然图2和4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2和4中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图5所示,提供了一种文本相似度计算装置500,该装置包括:字符序列获取模块502,用于获取待匹配字符序列和目标字符序列;词序列获取模块504,用于对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;第一相似度计算模块506,用于将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;词集合形成模块508,用于提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;第二相似度计算模块510,用于将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度;文本相似度计算模块512,用于根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
在一个实施例中,词序列获取模块504还用于将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除;对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
在一个实施例中,无关字符包括停用字符和相同字符;词序列获取模块504还用于将待匹配字符序列中包含的停用字符和目标字符序列中包含的停用字符删除;判断删除停用字符后的待匹配字符序列和目标字符序列中是否存在相同字符;相同字符是指在删除停用字符后的待匹配字符序列和目标字符序列中,处于相同位置的相同字符;若是,则将删除停用字符后的待匹配字符序列和目标字符序列中包含的相同字符删除,得到相应的待匹配词序列和目标词序列。
在一个实施例中,第一相似度计算模块506还用于将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过编辑距离公式进行计算,得到待匹配词序列与目标词序列之间的编辑距离;获取待匹配词序列中包含的待匹配词的第一数量,和目标词序列中包含的目标词的第二数量;根据编辑距离、第一数量和第二数量进行计算,得到第一相似度。
在一个实施例中,第二相似度计算模块510还用于将待匹配词集合和目标词集合进行匹配,统计待匹配词与目标词的匹配数量;统计待匹配词集合的待匹配词数量和目标词集合的目标词数量;根据匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
在一个实施例中,该装置还包括第三相似度计算模块514,用于获取待匹配字符序列对应的待匹配拼音序列和目标字符序列对应的目标拼音序列;将待匹配拼音序列中包含的待匹配拼音和目标拼音序列中包含的目标拼音通过第一相似度算法进行计算,得到第三相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度,包括:根据第一相似度、第二相似度和第三相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
在一个实施例中,字符序列获取模块502,还用于接收终端发送的待匹配字符序列;根据待匹配字符序列从数据库中获取多个目标字符序列;该装置还包括相关资源发送模块,用于查询文本相似度大于预设相似度阈值的目标字符序列所对应的相关资源;将相关资源发送至终端。
关于文本相似度计算装置的具体限定可以参见上文中对于文本相似度计算方法的限定,在此不再赘述。上述文本相似度计算装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储目标字符序列。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种文本相似度计算方法。
本领域技术人员可以理解,图6中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:获取待匹配字符序列和目标字符序列;对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
在一个实施例中,处理器执行计算机程序时,所实现的对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列的步骤,包括:将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除;对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
在一个实施例中,无关字符包括停用字符和相同字符;处理器执行计算机程序时,所实现的将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除的步骤,包括:将待匹配字符序列中包含的停用字符和目标字符序列中包含的停用字符删除;判断删除停用字符后的待匹配字符序列和目标字符序列中是否存在相同字符;相同字符是指在删除停用字符后的待匹配字符序列和目标字符序列中,处于相同位置的相同字符;若是,则将删除停用字符后的待匹配字符序列和目标字符序列中包含的相同字符删除,得到相应的待匹配词序列和目标词序列。
在一个实施例中,处理器执行计算机程序时,所实现的将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度的步骤,包括:将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过编辑距离公式进行计算,得到待匹配词序列与目标词序列之间的编辑距离;获取待匹配词序列中包含的待匹配词的第一数量,和目标词序列中包含的目标词的第二数量;根据编辑距离、第一数量和第二数量进行计算,得到第一相似度。
在一个实施例中,处理器执行计算机程序时,所实现的将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度的步骤,包括:将待匹配词集合和目标词集合进行匹配,统计待匹配词与目标词的匹配数量;统计待匹配词集合的待匹配词数量和目标词集合的目标词数量;根据匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
在一个实施例中,处理器执行计算机程序时,在所实现的获取待匹配字符序列和目标字符序列的步骤之后,还包括:获取待匹配字符序列对应的待匹配拼音序列和目标字符序列对应的目标拼音序列;将待匹配拼音序列中包含的待匹配拼音和目标拼音序列中包含的目标拼音通过第一相似度算法进行计算,得到第三相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度,包括:根据第一相似度、第二相似度和第三相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
在一个实施例中,处理器执行计算机程序时,所实现的获取待匹配字符序列和目标字符序列的步骤,包括:接收终端发送的待匹配字符序列;根据待匹配字符序列从数据库中获取多个目标字符序列;在所实现的根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度的步骤之后,还包括:查询文本相似度大于预设相似度阈值的目标字符序列所对应的相关资源;将相关资源发送至终端。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:获取待匹配字符序列和目标字符序列;对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
在一个实施例中,计算机程序被处理器执行时,所实现的对待匹配字符序列和目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列的步骤,包括:将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除;对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
在一个实施例中,无关字符包括停用字符和相同字符;处理器执行计算机程序时,所实现的将待匹配字符序列中包含的无关字符和目标字符序列中包含的无关字符删除的步骤,包括:将待匹配字符序列中包含的停用字符和目标字符序列中包含的停用字符删除;判断删除停用字符后的待匹配字符序列和目标字符序列中是否存在相同字符;相同字符是指在删除停用字符后的待匹配字符序列和目标字符序列中,处于相同位置的相同字符;若是,则将删除停用字符后的待匹配字符序列和目标字符序列中包含的相同字符删除,得到相应的待匹配词序列和目标词序列。
在一个实施例中,计算机程序被处理器执行时,所实现的将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度的步骤,包括:将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过编辑距离公式进行计算,得到待匹配词序列与目标词序列之间的编辑距离;获取待匹配词序列中包含的待匹配词的第一数量,和目标词序列中包含的目标词的第二数量;根据编辑距离、第一数量和第二数量进行计算,得到第一相似度。
在一个实施例中,计算机程序被处理器执行时,所实现的将待匹配词集合和目标词集合通过第二相似度算法进行计算,得到第二相似度的步骤,包括:将待匹配词集合和目标词集合进行匹配,统计待匹配词与目标词的匹配数量;统计待匹配词集合的待匹配词数量和目标词集合的目标词数量;根据匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
在一个实施例中,计算机程序被处理器执行时,在所实现的获取待匹配字符序列和目标字符序列的步骤之后,还包括:获取待匹配字符序列对应的待匹配拼音序列和目标字符序列对应的目标拼音序列;将待匹配拼音序列中包含的待匹配拼音和目标拼音序列中包含的目标拼音通过第一相似度算法进行计算,得到第三相似度;根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度,包括:根据第一相似度、第二相似度和第三相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度。
在一个实施例中,计算机程序被处理器执行时,所实现的获取待匹配字符序列和目标字符序列的步骤,包括:接收终端发送的待匹配字符序列;根据待匹配字符序列从数据库中获取多个目标字符序列;在所实现的根据第一相似度和第二相似度进行计算,得到待匹配字符序列和目标字符序列的文本相似度的步骤之后,还包括:查询文本相似度大于预设相似度阈值的目标字符序列所对应的相关资源;将相关资源发送至终端。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (9)
1.一种文本相似度计算方法,所述方法包括:
获取待匹配字符序列和目标字符序列;
对所述待匹配字符序列和所述目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;
将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;
提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;
将所述待匹配词集合和所述目标词集合通过第二相似度算法进行计算,得到第二相似度;
根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度;
所述将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度,包括:
将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过编辑距离公式进行计算,得到所述待匹配词序列与所述目标词序列之间的编辑距离;
获取所述待匹配词序列中包含的待匹配词的第一数量,和所述目标词序列中包含的目标词的第二数量;
根据所述编辑距离、第一数量和第二数量进行计算,得到第一相似度;
所述通过第二相似度算法进行计算,得到第二相似度的过程包括:计算每个待匹配词与目标集合的目标词的相似度的最大值,将每个所述最大值相乘得到第二相似度。
2.根据权利要求1所述的方法,其特征在于,所述对所述待匹配字符序列和所述目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列,包括:
将所述待匹配字符序列中包含的无关字符和所述目标字符序列中包含的无关字符删除;
对删除无关字符后的待匹配字符序列和目标字符序列分别进行分词,得到相应的待匹配词序列和目标词序列。
3.根据权利要求2所述的方法,其特征在于,所述无关字符包括停用字符和相同字符;所述将所述待匹配字符序列中包含的无关字符和所述目标字符序列中包含的无关字符删除,包括:
将所述待匹配字符序列中包含的停用字符和所述目标字符序列中包含的停用字符删除;
判断删除停用字符后的待匹配字符序列和目标字符序列中是否存在相同字符;所述相同字符是指在所述删除停用字符后的待匹配字符序列和目标字符序列中,处于相同位置的相同字符;
若是,则将所述删除停用字符后的待匹配字符序列和目标字符序列中包含的所述相同字符删除,得到相应的待匹配词序列和目标词序列。
4.根据权利要求1所述的方法,其特征在于,所述将所述待匹配词集合和所述目标词集合通过第二相似度算法进行计算,得到第二相似度,包括:
将所述待匹配词集合和所述目标词集合进行匹配,统计所述待匹配词与所述目标词的匹配数量;
统计所述待匹配词集合的待匹配词数量和所述目标词集合的目标词数量;
根据所述匹配数量、待匹配词数量和目标词数量进行计算,得到第二相似度。
5.根据权利要求1至4任意一项所述的方法,其特征在于,在所述获取待匹配字符序列和目标字符序列之后,还包括:
获取所述待匹配字符序列对应的待匹配拼音序列和目标字符序列对应的目标拼音序列;
将所述待匹配拼音序列中包含的待匹配拼音和所述目标拼音序列中包含的目标拼音通过第一相似度算法进行计算,得到第三相似度;
所述根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度,包括:
根据所述第一相似度、所述第二相似度和第三相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度。
6.根据权利要求1至4任意一项所述的方法,其特征在于,所述获取待匹配字符序列和目标字符序列,包括:
接收终端发送的待匹配字符序列;
根据所述待匹配字符序列从数据库中获取多个目标字符序列;
在所述根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度之后,还包括:
查询文本相似度大于预设相似度阈值的目标字符序列所对应的相关资源;
将所述相关资源发送至所述终端。
7.一种文本相似度计算装置,其特征在于,所述装置包括:
字符序列获取模块,用于获取待匹配字符序列和目标字符序列;
词序列获取模块,用于对所述待匹配字符序列和所述目标字符序列分别进行预处理,得到相应的待匹配词序列和目标词序列;
第一相似度计算模块,用于将所述待匹配词序列中包含的待匹配词和所述目标词序列中包含的目标词通过第一相似度算法进行计算,得到第一相似度;
词集合形成模块,用于提取所有待匹配词形成待匹配词集合,并提取所有目标词形成目标词集合;
第二相似度计算模块,用于将所述待匹配词集合和所述目标词集合通过第二相似度算法进行计算,得到第二相似度;
文本相似度计算模块,用于根据所述第一相似度和所述第二相似度进行计算,得到所述待匹配字符序列和所述目标字符序列的文本相似度;
所述第一相似度计算模块还用于将待匹配词序列中包含的待匹配词和目标词序列中包含的目标词通过编辑距离公式进行计算,得到待匹配词序列与目标词序列之间的编辑距离;获取待匹配词序列中包含的待匹配词的第一数量,和目标词序列中包含的目标词的第二数量;根据编辑距离、第一数量和第二数量进行计算,得到第一相似度;
所述第二相似度计算模块还用于计算每个待匹配词与目标集合的目标词的相似度的最大值,将每个所述最大值相乘得到第二相似度。
8.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
9.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031770.0A CN108304378B (zh) | 2018-01-12 | 2018-01-12 | 文本相似度计算方法、装置、计算机设备和存储介质 |
PCT/CN2018/099994 WO2019136993A1 (zh) | 2018-01-12 | 2018-08-10 | 文本相似度计算方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810031770.0A CN108304378B (zh) | 2018-01-12 | 2018-01-12 | 文本相似度计算方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108304378A CN108304378A (zh) | 2018-07-20 |
CN108304378B true CN108304378B (zh) | 2019-09-24 |
Family
ID=62868820
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810031770.0A Active CN108304378B (zh) | 2018-01-12 | 2018-01-12 | 文本相似度计算方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108304378B (zh) |
WO (1) | WO2019136993A1 (zh) |
Families Citing this family (29)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108304378B (zh) * | 2018-01-12 | 2019-09-24 | 深圳壹账通智能科技有限公司 | 文本相似度计算方法、装置、计算机设备和存储介质 |
CN109189907A (zh) * | 2018-08-22 | 2019-01-11 | 山东浪潮通软信息科技有限公司 | 一种基于语义匹配的检索方法及装置 |
CN110083834B (zh) * | 2019-04-24 | 2023-05-09 | 北京百度网讯科技有限公司 | 语义匹配模型训练方法、装置、电子设备及存储介质 |
CN110287286B (zh) * | 2019-06-13 | 2022-03-08 | 北京百度网讯科技有限公司 | 短文本相似度的确定方法、装置及存储介质 |
CN110633356B (zh) * | 2019-09-04 | 2022-05-20 | 广州市巴图鲁信息科技有限公司 | 一种词语相似度计算方法、装置以及存储介质 |
CN110738202A (zh) * | 2019-09-06 | 2020-01-31 | 平安科技(深圳)有限公司 | 字符识别方法、装置及计算机可读存储介质 |
CN110717158B (zh) * | 2019-09-06 | 2024-03-01 | 冉维印 | 信息验证方法、装置、设备及计算机可读存储介质 |
CN110765767B (zh) * | 2019-09-19 | 2024-01-19 | 平安科技(深圳)有限公司 | 局部优化关键词的提取方法、装置、服务器及存储介质 |
CN112825090B (zh) * | 2019-11-21 | 2024-01-05 | 腾讯科技(深圳)有限公司 | 一种兴趣点确定的方法、装置、设备和介质 |
CN111159339A (zh) * | 2019-12-24 | 2020-05-15 | 北京亚信数据有限公司 | 一种文本匹配处理方法和装置 |
CN111382563B (zh) * | 2020-03-20 | 2023-09-08 | 腾讯科技(深圳)有限公司 | 文本相关性的确定方法及装置 |
CN111274366A (zh) * | 2020-03-25 | 2020-06-12 | 联想(北京)有限公司 | 搜索推荐方法及装置、设备、存储介质 |
CN113779183B (zh) * | 2020-06-08 | 2024-05-24 | 北京沃东天骏信息技术有限公司 | 文本匹配方法、装置、设备及存储介质 |
CN111767706B (zh) * | 2020-06-19 | 2022-02-22 | 北京工业大学 | 文本相似度的计算方法、装置、电子设备及介质 |
CN111898376B (zh) * | 2020-07-01 | 2024-04-26 | 拉扎斯网络科技(上海)有限公司 | 一种名称数据处理方法、装置、存储介质及计算机设备 |
CN112149414B (zh) * | 2020-09-23 | 2023-06-23 | 腾讯科技(深圳)有限公司 | 文本相似度确定方法、装置、设备及存储介质 |
CN112287657B (zh) * | 2020-11-19 | 2024-01-30 | 每日互动股份有限公司 | 基于文本相似度的信息匹配系统 |
CN114637812A (zh) * | 2020-12-15 | 2022-06-17 | 顺丰恒通支付有限公司 | 基于物流信息的物流主体匹配方法、装置和计算机设备 |
CN112765962B (zh) * | 2021-01-15 | 2022-08-30 | 上海微盟企业发展有限公司 | 一种文本纠错方法、装置及介质 |
CN113032519A (zh) * | 2021-01-22 | 2021-06-25 | 中国平安人寿保险股份有限公司 | 一种句子相似度判断方法、装置、计算机设备及存储介质 |
CN113011178B (zh) * | 2021-03-29 | 2023-05-16 | 广州博冠信息科技有限公司 | 文本生成方法、文本生成装置、电子设备及存储介质 |
CN113076748B (zh) * | 2021-04-16 | 2024-01-19 | 平安国际智慧城市科技股份有限公司 | 弹幕敏感词的处理方法、装置、设备及存储介质 |
CN113268972B (zh) * | 2021-05-14 | 2022-01-11 | 东莞理工学院城市学院 | 两英语单词外观相似度的智能计算方法、系统、设备和介质 |
CN113821587B (zh) * | 2021-06-02 | 2024-05-17 | 腾讯科技(深圳)有限公司 | 文本相关性确定方法、模型训练方法、装置及存储介质 |
CN113420234B (zh) * | 2021-07-02 | 2022-08-02 | 青海师范大学 | 一种微博数据采集方法与系统 |
CN113627722B (zh) * | 2021-07-02 | 2024-04-02 | 湖北美和易思教育科技有限公司 | 基于关键字分词的简答题评分方法、终端及可读存储介质 |
CN113569036A (zh) * | 2021-07-20 | 2021-10-29 | 上海明略人工智能(集团)有限公司 | 一种媒体信息的推荐方法、装置及电子设备 |
CN116136839B (zh) * | 2023-04-17 | 2023-06-23 | 湖南正宇软件技术开发有限公司 | 法规文件花脸稿的生成方法、生成系统及相关设备 |
CN116881437B (zh) * | 2023-09-08 | 2023-12-01 | 北京睿企信息科技有限公司 | 一种获取文本集的数据处理系统 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103123618A (zh) * | 2011-11-21 | 2013-05-29 | 北京新媒传信科技有限公司 | 文本相似度获取方法和装置 |
CN103838789A (zh) * | 2012-11-27 | 2014-06-04 | 大连灵动科技发展有限公司 | 一种文本相似度计算方法 |
CN104216968A (zh) * | 2014-08-25 | 2014-12-17 | 华中科技大学 | 一种基于文件相似度的排重方法及系统 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8077984B2 (en) * | 2008-01-04 | 2011-12-13 | Xerox Corporation | Method for computing similarity between text spans using factored word sequence kernels |
US9535899B2 (en) * | 2013-02-20 | 2017-01-03 | International Business Machines Corporation | Automatic semantic rating and abstraction of literature |
CN103176962B (zh) * | 2013-03-08 | 2015-11-04 | 深圳先进技术研究院 | 文本相似度的统计方法及系统 |
CN107491425A (zh) * | 2017-07-26 | 2017-12-19 | 合肥美的智能科技有限公司 | 确定方法、确定装置、计算机装置和计算机可读存储介质 |
CN108304378B (zh) * | 2018-01-12 | 2019-09-24 | 深圳壹账通智能科技有限公司 | 文本相似度计算方法、装置、计算机设备和存储介质 |
-
2018
- 2018-01-12 CN CN201810031770.0A patent/CN108304378B/zh active Active
- 2018-08-10 WO PCT/CN2018/099994 patent/WO2019136993A1/zh active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103123618A (zh) * | 2011-11-21 | 2013-05-29 | 北京新媒传信科技有限公司 | 文本相似度获取方法和装置 |
CN103838789A (zh) * | 2012-11-27 | 2014-06-04 | 大连灵动科技发展有限公司 | 一种文本相似度计算方法 |
CN104216968A (zh) * | 2014-08-25 | 2014-12-17 | 华中科技大学 | 一种基于文件相似度的排重方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
WO2019136993A1 (zh) | 2019-07-18 |
CN108304378A (zh) | 2018-07-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108304378B (zh) | 文本相似度计算方法、装置、计算机设备和存储介质 | |
JP6956177B2 (ja) | キーワード抽出方法、コンピュータ装置及び記憶媒体 | |
CN110444198B (zh) | 检索方法、装置、计算机设备和存储介质 | |
WO2021114810A1 (zh) | 基于图结构的公文推荐方法、装置、计算机设备及介质 | |
US9195738B2 (en) | Tokenization platform | |
US11373423B2 (en) | Automated classification and interpretation of life science documents | |
CN110321470A (zh) | 文档处理方法、装置、计算机设备和存储介质 | |
US11816138B2 (en) | Systems and methods for parsing log files using classification and a plurality of neural networks | |
TW202020691A (zh) | 特徵詞的確定方法、裝置和伺服器 | |
CN108536745B (zh) | 基于Shell的数据表提取方法、终端、设备及存储介质 | |
US20230086735A1 (en) | Systems and methods for retrieving videos using natural language description | |
WO2023236257A1 (zh) | 文档搜索平台、搜索方法、装置、电子设备及存储介质 | |
US11574491B2 (en) | Automated classification and interpretation of life science documents | |
JP6810352B2 (ja) | 障害解析プログラム、障害解析装置及び障害解析方法 | |
WO2021042084A1 (en) | Systems and methods for retreiving images using natural language description | |
CN108984612A (zh) | 目标sql语句的获取方法、装置、计算机设备及存储介质 | |
CN109040191A (zh) | 文件下载方法、装置、计算机设备和存储介质 | |
WO2020132933A1 (zh) | 短文本过滤方法、装置、介质及计算机设备 | |
CN104933077B (zh) | 基于规则的多文件信息分析方法 | |
CN115345168A (zh) | 自然语言处理的级联池化 | |
CN110134846A (zh) | 文本的专有名词处理方法、装置和计算机设备 | |
CN114282513A (zh) | 文本语义相似度的匹配方法、系统、智能终端及存储介质 | |
CN117725182A (zh) | 基于大语言模型的数据检索方法、装置、设备和存储介质 | |
CN109359176A (zh) | 数据提取方法、装置、计算机设备和存储介质 | |
CN116226681B (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 |