CN109117474B - 语句相似度的计算方法、装置及存储介质 - Google Patents
语句相似度的计算方法、装置及存储介质 Download PDFInfo
- Publication number
- CN109117474B CN109117474B CN201810659225.6A CN201810659225A CN109117474B CN 109117474 B CN109117474 B CN 109117474B CN 201810659225 A CN201810659225 A CN 201810659225A CN 109117474 B CN109117474 B CN 109117474B
- Authority
- CN
- China
- Prior art keywords
- sentence
- similarity
- vector
- word
- user
- 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
Images
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
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
-
- 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)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Evolutionary Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种语句相似度的计算方法,涉及语句分析领域,该方法包括步骤:获取待计算语句对;计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度。本发明实施例还提供了语句相似度的装置和存储介质,能有效提高对句子进行相似度计算的计算效率和计算结果的可信度。
Description
技术领域
本发明涉及语句分析领域,尤其涉及一种语句相似度的计算方法、装置及存储介质。
背景技术
在聊天机器人开发中,根据用户输入的语句获取相同或相近的语句,是其中一个核心过程,而这个核心过程的实现依赖于语句相似度的计算方法。
在现有技术中,语句相似度的计算方法的一般有三种不同的实现方式,包括基于字符串的方式、基于词袋模型的方式和基于知识的方式。其中,基于字符串的方式以字符作为独立的知识单元,根据字符的相似性计算语句相似度;基于词袋模型的方式通过神经网络进行学习,根据从语料库中获取的信息计算文本相似度;基于知识的方式通过构建具有规范组织体系的知识库,以根据所述知识库计算文本相似度。
在实施本发明的过程中,发明人发现,现有的语句相似度的计算方法至少存在以下问题:
1、基于字符串的方式缺少对句子中各个组分的重要性考虑,导致对于语句相似度的计算结果的可信度较低;
2、基于词袋模型的方式忽略了句子中的语序关系,并且随着句子体量增大容易导致维度灾难,运算效率低下;
3、基于知识的方式依赖于知识库的构建,由于需要保证知识库中的信息有效可靠,因此知识库的更新效率缓慢,导致对于包含新兴词汇的语句相似度的计算结果可信度较低。
发明内容
本发明实施例的目的是提供一种语句相似度的计算方法、装置和存储介质,能有效提高对句子进行相似度计算的计算效率和计算结果的可信度。
为实现上述目的,本发明实施例提供了一种语句相似度的计算方法,包括步骤:
获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句;
计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量;
将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量;
根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度。
作为上述方案的改进,所述每一词语的语义贡献度,根据该词语在所属的语句中的词性和词频进行计算;所述相似向量为对相似度向量进行归一化处理得到的计算值,其中,所述相似度向量包括了所述用户语句中的每一词语与所述标准语句中的每一词语之间的相似度。
作为上述方案的改进,所述每一词语的语义贡献度,通过预先定义的词语与语义贡献度的关系进行计算。
作为上述方案的改进,所述计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量,包括步骤:
计算每一词语的语义贡献度;
拼接所述用户语句的每一词语的语义贡献度,得到所述用户语句的权重向量;
拼接所述标准语句的每一词语的语义贡献度,得到所述标准语句的权重向量。
作为上述方案的改进,所述根据所述相似向量、所述用户语句的权重向量和所述标准语句的权重向量,计算所述用户语句与所述标准语句之间的语句相似度,包括步骤:
根据所述用户语句的相似向量和所述用户语句的权重向量,计算所述用户语句的相似度参数;
根据所述标准语句的相似向量和所述标准语句的权重向量,计算所述标准语句的相似度参数;
对所述用户语句的相似度参数和所述标准语句的相似度参数进行加权平均,得到所述语句相似度。
作为上述方案的改进,所述用户语句的相似向量、所述用户语句的权重向量和所述用户语句的相似度参数之间满足关系:
其中,S1为所述用户语句的相似向量,W1为所述用户语句的权重向量,Y1为所述用户语句的相似度参数。
作为上述方案的改进,所述标准语句的相似向量、所述标准语句的权重向量和所述标准语句的相似度参数之间满足关系:
其中,S2为所述标准语句的相似向量,W2为所述标准语句的权重向量,Y2为所述标准语句的相似度参数。
本发明实施例还提供了一种语句相似度的计算装置,包括获取模块、权重计算模块、相似计算模块和结果输出模块。
所述获取模块,用于获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句;
所述权重计算模块,用于计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量;
所述相似计算模块,用于将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量;
所述结果输出模块,用于根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度。
本发明实施例还提供了一种语句相似度的计算装置,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如上任意一项所述的语句相似度的计算方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如上任意一项所述的语句相似度的计算方法。
与现有技术相比,本发明公开的语句相似度的计算方法、装置及存储介质,通过获取待计算语句对,计算待计算语句对中的词语的语义贡献度,以得到所述待计算语句对中的用户语句的权重向量和标准语句的权重向量,并分别计算所述用户语句的相似向量与所述标准语句之间的相似向量,根据所述相似向量和所述权重向量计算得到语句相似度。通过结合用户语句的权重向量和标准语句的权重向量计算语句相似度,解决了现有的语句相似度计算中,影响因素考虑不充分的问题,提高了语句相似度计算的计算效率和计算结果的可信度。
附图说明
图1是本发明实施例中一种语句相似度的计算方法的流程示意图。
图2是如图1所示的计算方法的步骤S110中的预处理流程的流程示意图。
图3是如图1所示的计算方法的步骤S120的语义贡献度计算的流程示意图。
图4是如图1所示的计算方法的步骤S120的流程示意图。
图5是如图1所示的计算方法的步骤S130的词间相似度计算的流程示意图。
图6是如图1所示的计算方法的步骤S140的流程示意图。
图7是本发明实施例提供的一种语句相似度的计算装置的结构示意图。
图8是本发明实施例提供的另一种语句相似度的计算装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
参见图1,是本发明实施例1提供的一种语句相似度的计算方法的流程示意图。该计算方法包括步骤S110至步骤S140。
S110、获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句。
具体地,所述用户输入的用户语句,可以是在聊天机器人场景下,聊天机器人接收到用户输入的语句,也可以是在其他与用户进行交互的场景下接收到的用户输入的语句,不影响本发明可取得的有益效果。
优选地,步骤S110还可以包括对所述待计算语句对的预处理,参见图2,作为举例,所述预处理可以包括步骤111至步骤S114。
S111对所述待计算语句对中的语句进行分词,得到词语列表;其中,所述词语列表包括所述待计算语句对中的用户语句对应的用户词语列表和标准语句对应的标准词语列表。
S112、根据所述词语列表,对所述用户语句和所述标准语句进行词性标注。
S113、根据所述词语列表,对所述用户语句和所述标准语句进行关键词提取。
S114、根据所述词语列表,对所述用户语句和所述标准语句进行命名实体识别,以识别所述用户语句中的实体词语和所述标准语句中的实体词语。
可以理解地,步骤S112、113和114的执行时机可以相互替换,并且还可以分别对所述用户语句和所述标准语句分别执行所述词性标注、所述关键词提取和所述命名实体识别,均不影响本发明可取得的有益效果。
S120、计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量。
所述语义贡献度根据预先设定的词语与语义贡献度的关系进行计算,并在得到所述每一词语的语义贡献度之后,根据所述每一词语的语义贡献度计算所述用户语句的权重向量和所述标准语句的权重向量。
优选地,所述语义贡献度可以是根据词语在所属语句中的词性和词频进行计算。作为举例,可以设定名词的基础语义贡献度为0.9,设定动词的基础语义贡献度为0.8,语气词的基础语义贡献度为0.1,并根据词语的词频调整该词语的词义贡献度。例如,名词A的词频较高,可以在0.9基础语义贡献度之上,将名词A的语义贡献度调整为0.91;名词B的词频较低,可以将名词B的语义贡献度调整为0.89。可以理解地,在其他情况下,所述语义贡献度的计算依据也可以根据实际情况进行调整,不影响本发明可取得的有益效果。
作为另一优选实施方式,所述语义贡献度还可以是根据先验知识进行针对性的设定。例如在问答系统中,可以设定如“什么”、“哪里”和“怎么”等具有疑问性质的词语具有较高的语义贡献度,在医疗系统中可以设定疾病名称和药品名称等医疗词语具有较高的语义贡献度。
更优选地,参见图3,还可以根据如步骤S120a至步骤S120c所示的流程计算所述每一词语的语义贡献度。
S120a、根据预设的运算规则计算当前词语的初阶语义贡献度。
所述预设的运算规则可以是如上所述的词语在所属语句中的词性和词频,也可以是如上所述的根据先验知识进行针对性的设定,均不影响本发明可取得的有益效果。
S120b、提取所述当前词语所属的语句的关键词和实体词,以得到所述关键词和所述实体词的字数总和。
S120c、根据所述字数总和,计算贡献度校正值,并以所述初阶语义贡献度与所述贡献度校正值之和作为所述当前词语的语义贡献度。
其中,所述贡献度校正值与所述字数总和之间满足关系:
ΔW=1-1/M
式中ΔW为所述贡献度校正值,M为所述字数总和。
作为一种优选的实施方式,参见图4,步骤S120可以包括步骤S121至步骤S123。
S121、计算每一词语的语义贡献度。
其中,可以是通过如步骤S120a至步骤S120c所示的方法得到所述语义贡献度,也可以是根据如上所述的词语在所属语句中的词性和词频计算所述语义贡献度,还可以是根据如上所述的根据先验知识进行针对性的设定计算所述语义贡献度,均不影响本发明可取得的有益效果。
S122、拼接所述用户语句的每一词语的语义贡献度,得到所述用户语句的权重向量。
具体地,可以根据所述用户语句的每一词语的语义贡献度和预设的排序方式,得到所述用户语句的权重向量。例如根据词语在所述用户语句中出现的顺序、逆序或是转置等,将所述用户语句的每一词语的语义贡献度进行排列,得到所述用户语句的权重向量。
S123、拼接所述标准语句的每一词语的语义贡献度,得到所述标准语句的权重向量。
具体地,可以根据所述标准语句的每一词语的语义贡献度和预设的排序方式,得到所述标准语句的权重向量。例如根据词语在所述标准语句中出现的顺序、逆序或是转置等,将所述标准语句的每一词语的语义贡献度进行排列,得到所述标准语句的权重向量。
可以理解地,步骤S122和步骤S123的执行次序可以根据实际情况进行调整,例如将步骤S122的执行次序调整到步骤S123之后,或是同步执行步骤S122和步骤S123,均不影响本发明可取得的有益效果。
S130、将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量。
可以是通过预先训练相似度分类模型,采用所述相似度分类模型对词语进行比较,以得到所述词间相似度。具体地,可以是向量化所述用户语句和所述标准语句中的词语,得到每一词语的词向量,分别计算每一语句中的每一词语的词向量与另一语句的每一词语的词向量之间的余弦相似度,取最大的所述余弦相似度作为所述词间相似度。
在其他情况下,还可以通过先验的相似知识设定词语间的相似关系。例如,预先设定“多益网络”的同义词包括“多益”和“益网”,则在词语“多益网络”与词语“多益”进行所述比较时,或是与词语“益网”进行所述比较时,认为所述比较的两个词语词间相似度为最大值。
例如,对所述用户语句中的每一词语进行向量化,得到所述用户语句的每一词语的词向量,记为用户词向量;对所述标准语句中的每一词语进行向量化,得到所述标准语句的每一词语的词向量,记为标准词向量;针对每一所述用户词向量,将每一所述标准词向量与当前的用户词向量进行比较,选取其中最大的余弦相似度作为该用户词向量对应的词语的词间相似度;针对每一所述标准词向量,将每一所述标准词向量与当前的标准词向量进行比较,选取其中最大的余弦相似度作为该标准词向量对应的词语的词间相似度。
优选地,参见图5,针对得到每一词语的所述词间相似度的过程,还可以通过如步骤S130a至步骤S130c所示的流程实现。
S130a、根据预先训练的相似度分类模型,计算当前词语的初阶词间相似度。
其中,可以是通过预先训练相似度分类模型,采用所述相似度分类模型对词语进行比较,以得到所述初阶词间相似度;还可以通过先验的相似知识设定词语间的相似关系,以根据所述相似关系得到所述初阶词间相似度。
S130b、结合预先录入的词义词典,分析所述当前词语的词义相关的词语在另一语句中的存在情况。
所述词义词典中记录了包括所述当前词语的同义词、近义词和反义词在内的词语信息;所述词义相关的词语包括同义词、近义词和反义词。所述另一语句区别于所述当前词语所属的语句,例如,在所述当前词语属于用户语句时,所述另一语句为标准语句;在所述当前词语属于标准语句时,所述另一语句为用户语句。
S130c、根据所述存在情况,对所述初阶词间相似度进行修正,得到所述当前词语的词间相似度。
作为举例,设当前词语为词语A,步骤S130a得到的词语A的初阶词间相似度为0.8。在所述词语A的同义词存在另一语句的情况下,可以基于词语A的初阶词间相似度进行向上修正,例如取词语A的词间相似度为0.9;在所述词语A的近义词存在另一语句的情况下,可以基于词语A的初阶词间相似度进行向上修正,例如取词语A的词间相似度为0.85;在所述词语A的反义词存在另一语句的情况下,可以基于词语A的初阶词间相似度进行向下修正,例如取词语A的词间相似度为0.7;在所述词语A的语义相关的词语未存在于另一语句的情况下,可以将词语A的初阶词间相似度作为其词间相似度。可以理解地,上述修正方式仅作为举例,在实际应用中,可以根据需要进行调整,不影响本发明可取得的有益效果。
优选地,所述每一语句的相似向量与该语句的词语的词间相似度的关系满足:
S=(γ1s1,γ2s2,…,γnsn)
式中S为该语句的相似向量,n为该语句中词数,γn为第n个词语的加权值,sn为第n个词语的词间相似度。
例如,假设用户语句包括词语A、词语B和词语C,其中词语A的词间相似度为0.7,词语B的词间相似度为0.6,词语C的词间相似度为0.5,设加权值均为1/3,则所述用户语句的相似向量S1为:
可得所述用户语句的相似向量S1=(0.23,0.2,0.17)。
在其他情况下,也可以是通过对语句的每一词语的的词间相似度进行其他形式的组合,例如对所述用户语句的每一词语的词间相似度进行排列,以得到所述用户语句的相似向量,或是对所述标准语句的每一词语的词间相似度进行排列,以得到所述标准语句的相似向量,均不影响本发明可取得的有益效果。
S140、根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度。
其中,所述语句相似度、所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量之间满足关系:
式中,Y为所述语句相似度,S1为所述用户语句的相似向量,W1为所述用户语句的权重向量,S2为所述标准语句的相似向量,W2为所述标准语句的权重向量,α为所述用户语句在语句相似度计算中所占权重,β为所述标准语句在语句相似度计算中所占权重,并且α和β可以根据实际情况进行调整,作为举例,α和β的取值可以是α=β=1/2。
优选地,参见图6,步骤S140可以包括步骤S141至步骤S143。
S141、根据所述相似向量和所述用户语句的权重向量,计算所述用户语句的相似度参数。
所述用户语句的相似向量、所述用户语句的权重向量和所述用户语句的相似度参数之间满足关系:
其中,S1为所述用户语句的相似向量,W1为所述用户语句的权重向量,Y1为所述用户语句的相似度参数。
S142、根据所述相似向量和所述标准语句的权重向量,计算所述标准语句的相似度参数。
所述标准语句的相似向量、所述标准语句的权重向量和所述标准语句的相似度参数之间满足关系:
其中,S2为所述标准语句的相似向量,W2为所述标准语句的权重向量,Y2为所述标准语句的相似度参数。
可以理解地,步骤S141和步骤S142的执行次序可以根据实际情况进行调整,例如将步骤S141的执行次序调整到步骤S142之后,或是同步执行步骤S141和步骤S142,均不影响本发明可取得的有益效果。
S143、对所述用户语句的相似度参数和所述标准语句的相似度参数进行加权平均,得到所述语句相似度。
所述语句相似度、所述用户语句的相似度参数和所述标准语句的相似度参数之间满足关系:
Y=αY1+βY2
式中,Y为所述语句相似度,α为所述用户语句在语句相似度计算中所占权重,β为所述标准语句在语句相似度计算中所占权重,Y1为所述用户语句的相似度参数,Y2为所述标准语句的相似度参数。
本发明实施例公开的语句相似度的计算方法,通过获取待计算语句对,计算待计算语句对中的词语的语义贡献度,以得到所述待计算语句对中的用户语句的权重向量和标准语句的权重向量,并分别计算所述用户语句的相似向量与所述标准语句之间的相似向量,根据所述相似向量和所述权重向量计算得到语句相似度。通过结合用户语句的权重向量和标准语句的权重向量计算语句相似度,解决了现有的语句相似度计算中,影响因素考虑不充分的问题,提高了语句相似度计算的计算效率和计算结果的可信度。
本发明实施例还提供的一种语句相似度的计算装置,参见图7,计算装置20包括获取模块21、权重计算模块22、相似计算模块23和结果输出模块24。
所述获取模块21,用于获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句;
所述权重计算模块22,用于计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量;
所述相似计算模块23,用于将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量;
所述结果输出模块24,用于根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度。
所述计算装置20的工作过程如上提供的计算方法所述,在此不作赘述。
本发明实施例公开的语句相似度的计算装置,通过获取待计算语句对,计算待计算语句对中的词语的语义贡献度,以得到所述待计算语句对中的用户语句的权重向量和标准语句的权重向量,并分别计算所述用户语句的相似向量与所述标准语句之间的相似向量,根据所述相似向量和所述权重向量计算得到语句相似度。通过结合用户语句的权重向量和标准语句的权重向量计算语句相似度,解决了现有的语句相似度计算中,影响因素考虑不充分的问题,提高了语句相似度计算的计算效率和计算结果的可信度。
本发明实施例还提供了另一种语句相似度的计算装置,如图8所示,语句相似度的计算装置30包括:处理器31、存储器32以及存储在所述存储器中并可在所述处理器上运行的计算机程序,例如语句相似度的计算程序。所述处理器31执行所述计算机程序时实现上述各个计算方法实施例中的步骤,例如图1所示的步骤S120。或者,所述处理器执行所述计算机程序时实现上述各装置实施例中各模块的功能,例如上述实施例中所述的语句相似度的计算装置。
示例性的,所述计算机程序可以被分割成一个或多个模块,所述一个或者多个模块被存储在所述存储器32中,并由所述处理器31执行,以完成本发明。所述一个或多个模块可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述语句相似度的计算装置30中的执行过程。例如,所述计算机程序可以被分割成获取模块、权重计算模块、相似计算模块和结果输出模块,各模块具体功能如下:所述获取模块,用于获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句;所述权重计算模块,用于计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量;所述相似计算模块,用于将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量;所述结果输出模块,用于根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度。
所述语句相似度的计算装置30可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。所述语句相似度的计算装置30可包括,但不仅限于,处理器31、存储器32。本领域技术人员可以理解,所述示意图仅仅是语句相似度的计算装置的示例,并不构成对语句相似度的计算装置30的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述语句相似度的计算装置30还可以包括输入输出设备、网络接入设备、总线等。
所称处理器31可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器31是所述语句相似度的计算装置30的控制中心,利用各种接口和线路连接整个语句相似度的计算装置30的各个部分。
所述存储器32可用于存储所述计算机程序和/或模块,所述处理器31通过运行或执行存储在所述存储器32内的计算机程序和/或模块,以及调用存储在存储器32内的数据,实现所述语句相似度的计算装置30的各种功能。所述存储器32可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器32可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
其中,所述语句相似度的计算装置30集成的模块如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
本发明实施例公开的语句相似度的计算装置和存储介质,通过获取待计算语句对,计算待计算语句对中的词语的语义贡献度,以得到所述待计算语句对中的用户语句的权重向量和标准语句的权重向量,并分别计算所述用户语句的相似向量与所述标准语句之间的相似向量,根据所述相似向量和所述权重向量计算得到语句相似度。通过结合用户语句的权重向量和标准语句的权重向量计算语句相似度,解决了现有的语句相似度计算中,影响因素考虑不充分的问题,提高了语句相似度计算的计算效率和计算结果的可信度。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。
Claims (8)
1.一种语句相似度的计算方法,其特征在于,包括步骤:
获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句;
计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量;
将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量;
根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度;
其中,根据所述相似向量、所述用户语句的权重向量和所述标准语句的权重向量,计算所述用户语句与所述标准语句之间的语句相似度,包括步骤:
根据所述用户语句的相似向量和所述用户语句的权重向量,计算所述用户语句的相似度参数;
根据所述标准语句的相似向量和所述标准语句的权重向量,计算所述标准语句的相似度参数;
对所述用户语句的相似度参数和所述标准语句的相似度参数进行加权平均,得到所述语句相似度。
2.如权利要求1所述的语句相似度的计算方法,其特征在于,所述每一词语的语义贡献度,根据该词语在所属的语句中的词性和词频进行计算。
3.如权利要求1所述的语句相似度的计算方法,其特征在于,所述每一词语的语义贡献度,通过预先定义的词语与语义贡献度的关系进行计算。
4.如权利要求1所述的语句相似度的计算方法,其特征在于,所述计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量,包括步骤:
计算每一词语的语义贡献度;
拼接所述用户语句的每一词语的语义贡献度,得到所述用户语句的权重向量;
拼接所述标准语句的每一词语的语义贡献度,得到所述标准语句的权重向量。
7.一种语句相似度的计算装置,其特征在于,包括获取模块、权重计算模块、相似计算模块和结果输出模块;
所述获取模块,用于获取待计算语句对;其中,所述待计算语句对中的语句包括用户输入的用户语句和预先存入语料库的标准语句;
所述权重计算模块,用于计算所述待计算语句对中的每一词语的语义贡献度,以得到所述用户语句的权重向量和所述标准语句的权重向量;其中,每一词语的语义贡献度为该词语对所属语句的语义表达的贡献度,每一语句的权重向量为该语句中的词语的语义贡献度所构成的向量;
所述相似计算模块,用于将所述待计算语句对中的每一语句中的每一词语与另一语句的词语的进行比较,以得到词间相似度,根据所述词间相似度计算所述用户语句的相似向量和所述标准语句的相似向量;其中,每一语句的相似向量为该语句的词语的词间相似度所构成的向量;
所述结果输出模块,用于根据所述用户语句的权重向量和相似向量,以及所述标准语句的权重向量和相似向量,计算所述用户语句与所述标准语句之间的语句相似度;
其中,根据所述相似向量、所述用户语句的权重向量和所述标准语句的权重向量,计算所述用户语句与所述标准语句之间的语句相似度,包括步骤:
根据所述用户语句的相似向量和所述用户语句的权重向量,计算所述用户语句的相似度参数;
根据所述标准语句的相似向量和所述标准语句的权重向量,计算所述标准语句的相似度参数;
对所述用户语句的相似度参数和所述标准语句的相似度参数进行加权平均,得到所述语句相似度。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述计算机可读存储介质所在设备执行如权利要求1至6中任意一项所述的语句相似度的计算方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810659225.6A CN109117474B (zh) | 2018-06-25 | 2018-06-25 | 语句相似度的计算方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810659225.6A CN109117474B (zh) | 2018-06-25 | 2018-06-25 | 语句相似度的计算方法、装置及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109117474A CN109117474A (zh) | 2019-01-01 |
CN109117474B true CN109117474B (zh) | 2022-05-03 |
Family
ID=64821963
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810659225.6A Active CN109117474B (zh) | 2018-06-25 | 2018-06-25 | 语句相似度的计算方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109117474B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110176315B (zh) * | 2019-06-05 | 2022-06-28 | 京东方科技集团股份有限公司 | 医疗问答方法及系统、电子设备、计算机可读介质 |
CN110489740B (zh) * | 2019-07-12 | 2023-10-24 | 深圳追一科技有限公司 | 语义解析方法及相关产品 |
CN111198939B (zh) * | 2019-12-27 | 2021-11-23 | 北京健康之家科技有限公司 | 语句相似度的分析方法、装置及计算机设备 |
CN111581347B (zh) * | 2020-04-28 | 2023-07-21 | 中国工商银行股份有限公司 | 语句相似度匹配方法及装置 |
CN112183111B (zh) * | 2020-09-28 | 2024-08-23 | 亚信科技(中国)有限公司 | 长文本语义相似度匹配方法、装置、电子设备及存储介质 |
CN112966521B (zh) * | 2021-03-01 | 2024-03-12 | 北京新方通信技术有限公司 | 一种短句相似度的计算方法及系统 |
CN114708117B (zh) * | 2022-03-21 | 2024-08-06 | 广东电网有限责任公司 | 融合先验知识的用电安全检查评级方法、装置及设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017177901A1 (zh) * | 2016-04-12 | 2017-10-19 | 芋头科技(杭州)有限公司 | 一种语义匹配方法及智能设备 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002304418A (ja) * | 2001-04-06 | 2002-10-18 | Fujitsu Ltd | 検索装置、検索方法および検索プログラム |
CN104657346A (zh) * | 2015-01-15 | 2015-05-27 | 深圳市前海安测信息技术有限公司 | 智能交互系统中的问题匹配方法和系统 |
CN105183714A (zh) * | 2015-08-27 | 2015-12-23 | 北京时代焦点国际教育咨询有限责任公司 | 句子相似度计算方法及装置 |
CN106021223B (zh) * | 2016-05-09 | 2020-06-23 | Tcl科技集团股份有限公司 | 一种句子相似度的计算方法及系统 |
CN106095737A (zh) * | 2016-06-07 | 2016-11-09 | 杭州凡闻科技有限公司 | 文档相似度计算方法及相似文档全网检索跟踪方法 |
CN107562714B (zh) * | 2016-06-30 | 2021-02-09 | 北京儒博科技有限公司 | 一种语句相似度计算方法及装置 |
CN107562712A (zh) * | 2016-07-01 | 2018-01-09 | 北京智能管家科技有限公司 | 一种语句相似度计算方法及装置 |
-
2018
- 2018-06-25 CN CN201810659225.6A patent/CN109117474B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017177901A1 (zh) * | 2016-04-12 | 2017-10-19 | 芋头科技(杭州)有限公司 | 一种语义匹配方法及智能设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109117474A (zh) | 2019-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109117474B (zh) | 语句相似度的计算方法、装置及存储介质 | |
US11004448B2 (en) | Method and device for recognizing text segmentation position | |
US11544474B2 (en) | Generation of text from structured data | |
CN108345580B (zh) | 一种词向量处理方法及装置 | |
US10394956B2 (en) | Methods, devices, and systems for constructing intelligent knowledge base | |
CN109299280B (zh) | 短文本聚类分析方法、装置和终端设备 | |
US20200364299A1 (en) | Systems and methods for unsupervised autoregressive text compression | |
US11010554B2 (en) | Method and device for identifying specific text information | |
CN109472022B (zh) | 基于机器学习的新词识别方法及终端设备 | |
CN109492217B (zh) | 一种基于机器学习的分词方法及终端设备 | |
CN108874765B (zh) | 词向量处理方法及装置 | |
CN111291177A (zh) | 一种信息处理方法、装置和计算机存储介质 | |
JP5809381B1 (ja) | 自然言語処理システム、自然言語処理方法、および自然言語処理プログラム | |
CN111368037A (zh) | 基于Bert模型的文本相似度计算方法和装置 | |
US11256754B2 (en) | Systems and methods for generating natural language processing training samples with inflectional perturbations | |
CN114861635B (zh) | 一种中文拼写纠错方法、装置、设备及存储介质 | |
CN110046344B (zh) | 添加分隔符的方法及终端设备 | |
CN114580444A (zh) | 文本翻译模型的训练方法、设备及存储介质 | |
CN110019670A (zh) | 一种文本检索方法及装置 | |
Lyu et al. | Deep learning for textual entailment recognition | |
CN109344397B (zh) | 文本特征词语的提取方法及装置、存储介质及程序产品 | |
CN116484829A (zh) | 用于信息处理的方法和设备 | |
CN115292492A (zh) | 意图分类模型的训练方法、装置、设备及存储介质 | |
JP2018010481A (ja) | 深層格解析装置、深層格学習装置、深層格推定装置、方法、及びプログラム | |
CN110688472A (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 |