CN104123389B - 语句匹配方法和装置 - Google Patents

语句匹配方法和装置 Download PDF

Info

Publication number
CN104123389B
CN104123389B CN201410386820.9A CN201410386820A CN104123389B CN 104123389 B CN104123389 B CN 104123389B CN 201410386820 A CN201410386820 A CN 201410386820A CN 104123389 B CN104123389 B CN 104123389B
Authority
CN
China
Prior art keywords
vocabulary
sentence
matched
benchmark
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.)
Expired - Fee Related
Application number
CN201410386820.9A
Other languages
English (en)
Other versions
CN104123389A (zh
Inventor
焦扬
高立琦
陈儒
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
BEIJING WEIZOOM CULTURAL MEDIA Co Ltd
Original Assignee
BEIJING WEIZOOM CULTURAL MEDIA Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by BEIJING WEIZOOM CULTURAL MEDIA Co Ltd filed Critical BEIJING WEIZOOM CULTURAL MEDIA Co Ltd
Priority to CN201410386820.9A priority Critical patent/CN104123389B/zh
Publication of CN104123389A publication Critical patent/CN104123389A/zh
Application granted granted Critical
Publication of CN104123389B publication Critical patent/CN104123389B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/3331Query processing
    • G06F16/334Query execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/33Querying
    • G06F16/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Artificial Intelligence (AREA)
  • Human Computer Interaction (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种语句匹配方法和装置。其中,该语句匹配方法包括:根据第一语句的基准词汇查找第二语句的对比词汇,其中,对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同;以对比词汇为中心在第二语句中划分待匹配词汇,其中,待匹配词汇为多个与基准词汇进行相似度的匹配的词汇;对基准词汇和待匹配词汇进行一一对比,得到基准词汇和待匹配词汇的相似度;以及将相似度最大的待匹配词汇作为与基准词汇匹配的词汇。通过本发明,解决了现有技术中语句匹配不准确的问题,进而达到了提高语句匹配的准确率的效果。

Description

语句匹配方法和装置
技术领域
本发明涉及通信领域,具体而言,涉及一种语句匹配方法和装置。
背景技术
通过社区或者语音平台进行自动问答时,由于用户经常咨询的问题具有明显的重复性,可能有80%的用户会询问20%常见的问题。通常这些问题由机器自动回答,当接收到用户的问题时,会在问答对知识库中查找与用户的问题最相似或者相同的问题,并找到针对该问题的答案提供给用户。
在问答对知识库中查找相似或相同问题时,即进行语句的匹配。现有技术进行语句匹配时,需要一个语句中的某个词汇与另外一个语句中的所有词汇进行逐个对比造成匹配效率较低。另外,当一个语句中的某个词汇与另外一个语句的某个词汇的相似度较高时,可能这两个相似度较高的词汇所表达的含义大相径庭,因此,导致两个语句的匹配结果不准确。
针对现有技术中语句匹配不准确的问题,目前尚未提出有效的解决方案。
发明内容
本发明的主要目的在于提供一种语句匹配方法和装置,以解决现有技术中语句匹配不准确的问题。
为了实现上述目的,根据本发明的一个方面,提供了一种语句匹配方法。根据本发明的语句匹配方法包括:根据第一语句的基准词汇查找第二语句的对比词汇,其中,所述对比词汇在所述第二语句中的位置与所述基准词汇在所述第一语句中的位置相同;以所述对比词汇为中心在所述第二语句中划分待匹配词汇,其中,所述待匹配词汇为多个与所述基准词汇进行相似度的匹配的词汇;对所述基准词汇和所述待匹配词汇进行一一对比,得到所述基准词汇和所述待匹配词汇的相似度;以及将所述相似度最大的所述待匹配词汇作为与所述基准词汇匹配的词汇。
进一步地,以所述对比词汇为中心在所述第二语句中划分待匹配词汇包括:按照预先设置的搜寻窗口的宽度在所述第二语句中搜索所述待匹配词汇,其中,所述搜寻窗口的宽度为预设词汇个数;以及将所述对比词汇两侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇。
进一步地,将所述对比词汇两侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇包括:当所述对比词汇是所述第二语句中的首个词汇或者是所述第二语句中的最后一个词汇时;取所述对比词汇一侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇,其中,当所述对比词汇是所述第二语句中的首个词汇时,取所述对比词汇句尾方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇,当所述对比词汇是所述第二语句中的最后一个词汇时,取所述对比词汇句首方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇。
进一步地,在将所述相似度最高的所述待匹配词汇作为所述基准词汇的匹配词汇之后,所述语句匹配方法还包括:依次获取所述第一语句中每个所述基准词汇与所述待匹配词汇的最大相似度;对所述第一语句中每个所述基准词汇的最大相似度求和,得到所述第一语句词汇相似度;依次获取所述第二语句中每个所述对比词汇与所述基准词汇的最大相似度;对所述第二语句中每个所述对比词汇的最大相似度求和,得到所述第二语句词汇相似度;以及将所述第一语句的词汇相似度的算术平均值和所述第二语句的词汇相似度的算术平均值的平均值作为所述第一语句和所述第二语句的相似度。
进一步地,根据第一语句的基准词汇查找第二语句的对比词汇包括:将所述第一语句和所述第二语句均分解为多个词汇元素;分别获取所述第一语句的词汇元素和所述第二语句的词汇元素的序号;以及在所述第二语句中查找与所述多个词汇元素中的基准词汇的序号相同的词汇作为所述对比词汇。
为了实现上述目的,根据本发明的另一方面,提供了一种语句匹配装置。根据本发明的语句匹配装置包括:查找单元,用于根据第一语句的基准词汇查找第二语句的对比词汇,其中,所述对比词汇在所述第二语句中的序号与所述基准词汇在所述第一语句中的序号相同;划分单元,用于以所述对比词汇为中心在所述第二语句中划分待匹配词汇,其中,所述待匹配词汇为多个与所述基准词汇进行匹配的词汇;对比单元,用于对所述基准词汇和所述待匹配词汇进行一一对比,得到所述基准词汇和所述待匹配词汇的相似度;以及确定单元,用于将所述相似度最大的所述待匹配词汇作为与所述基准词汇匹配的词汇。
进一步地,所述划分单元包括:搜索模块,用于按照预先设置的搜寻窗口的宽度在所述第二语句中搜索所述待匹配词汇,其中,所述搜寻窗口的宽度为预设词汇个数;以及第一确定模块,用于将所述对比词汇两侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇。
进一步地,所述确定模块包括:确定子模块,用于当所述对比词汇是所述第二语句中的首个词汇或者是所述第二语句中的最后一个词汇时,取所述对比词汇一侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇,其中,当所述对比词汇是所述第二语句中的首个词汇时,取所述对比词汇句尾方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇,当所述对比词汇是所述第二语句中的最后一个词汇时,取所述对比词汇句首方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇。
进一步地,所述语句匹配装置还包括:第一获取单元,用于在将所述相似度最高的所述待匹配词汇作为所述基准词汇的匹配词汇之后,依次获取所述第一语句中每个所述基准词汇与所述待匹配词汇的最大相似度;第一求和单元,用于对所述第一语句中每个所述基准词汇的最大相似度求和,得到所述第一语句词汇相似度;第二获取单元,用于依次获取所述第二语句中每个所述对比词汇与所述基准词汇的最大相似度;第二求和单元,用于对所述第二语句中每个所述对比词汇的最大相似度求和,得到所述第二语句词汇相似度;以及第三求和单元,用于将所述第一语句的词汇相似度的算术平均值和所述第二语句的词汇相似度的算术平均值的平均值作为所述第一语句和所述第二语句的相似度。
进一步地,所述查找单元包括:分解模块,用于将所述第一语句和所述第二语句均分解为多个词汇元素;序号模块,用于分别获取所述第一语句的词汇元素和所述第二语句的词汇元素的序号;以及第二确定模块,用于在所述第二语句中查找与所述多个词汇元素中的基准词汇的序号相同的词汇作为所述对比词汇。
通过本发明,采用根据第一语句的基准词汇查找第二语句的对比词汇,其中,对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同;以对比词汇为中心在第二语句中划分待匹配词汇,其中,待匹配词汇为多个与基准词汇进行相似度的匹配的词汇;对基准词汇和待匹配词汇进行一一对比,得到基准词汇和待匹配词汇的相似度;以及将相似度最大的待匹配词汇作为与基准词汇匹配的词汇的方法,解决了现有技术中语句匹配不准确的问题,进而达到了提高语句匹配的准确率的效果。
附图说明
构成本申请的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的语句匹配方法的流程图;
图2是根据本发明又一实施例的语句匹配方法的流程图;
图3是根据本发明实施例的语句匹配方法的示意图;以及
图4是根据本发明又一实施例的语句匹配方法的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本发明。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供了一种语句匹配方法。如背景技术所述,在继续自动问答时,需要对用户提出的问句和问答库中的问句对比,查找与用户提出的问题相同或者最相似的问题,并找到相应的答案返回给用户。当然,在检索或者搜索过程中也可以用到上述方法。在检索时需要在检索库中查找与用户输入的检索词汇或者语句相同或者最相似的内容,同样的道理,在搜索时也可以在搜索库中查找与用户输入的搜索词汇或语句相同或者最相似的内容以达到检索或者搜索的目的。
图1是根据本发明实施例的语句匹配方法的流程图。如图所示,该语句匹配方法包括如下步骤:
步骤S102,根据第一语句的基准词汇查找第二语句的对比词汇,其中,对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同。
在进行语句匹配时,通常是将语句分解为多个词汇,通过词汇的相似度的分析确定语句的相似度。例如查找与第一语句相同的语句,第二语句是与第一语句做对比的语句,以判断第二语句是否与第一语句相同。第一语句由多个词汇组成,每个词汇都可以作为一个基准词汇。第二语句也由多个词汇组成,第二语句中的对比词汇用于与第一语句中的基准词汇进行对比,从而确定基准词汇与对比词汇的相似度。
在选取对比词汇时,对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同,即考虑到语句结构。按照现有技术的方法,基准词汇与第二语句中的每个词汇进行相似度的对比,可能会出现第一语句的第一个词汇A1与第二语句的最后一个词汇Bm的相似度最大,那么,由于基准词汇在句子首部,最大相似度的对比词汇在句尾,虽然两个词汇的相似度最大,但是两个词汇在整个句子中表达的含义可能大相径庭,这样根据每个基准词汇的最大相似度确定第一语句和第二语句的相似度可能就不准确了。而本实施例中对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同,那么选取的对比词汇在第二语句结构中所起的作用与基准词汇在第一语句结构中所起的作用基本相同,在待匹配词汇中选择相似度最大的词汇则能够提高第一语句和第二语句的相似度的准确性。
步骤S104,以对比词汇为中心在第二语句中划分待匹配词汇,其中,待匹配词汇为多个与基准词汇进行相似度的匹配的词汇。
在确定对比词汇之后,以对比词汇为中心划分待匹配词汇。例如:
A1,A2,A3,A4,…,Ai-3,Ai-2,Ai-1Ai+1,Ai+2,Ai+3,…An
B1,B2,B3,B4,…,Bi-3Bi+3,…Bm
A1至An是第一语句,B1至Bm是第二语句,在第一语句中选择Ai为基准词汇,在第二语句中确定Bi是对比词汇,以对比词汇Bi为中心划分待匹配词汇,划分的待匹配词汇为Bi-2、Bi-1、Bi、Bi+1和Bi+2。划分得到的待匹配词汇为与基准词汇进行匹配的词汇。
步骤S106,对基准词汇和待匹配词汇进行一一对比,得到基准词汇和待匹配词汇的相似度。
在获取基准词汇和待匹配词汇之后,将基准词汇与待匹配词汇进行一一对比,如上例中,基准词汇Ai依次与待匹配词汇Bi-2、Bi-1、Bi、Bi+1和Bi+2进行相似度的匹配,也就是说基准词汇与每个待匹配词汇进行匹配,以得到基准词汇与任意一个待匹配词汇的相似度。
步骤S108,将相似度最大的待匹配词汇作为与基准词汇匹配的词汇。
在得到基准词汇与每个待匹配词汇的相似度之后,将最大相似度对应的对比词汇作为与该基准词汇匹配的词汇,同时,记录此时的最大相似度,如sim(Ai,Bi-1)。
通过上述实施例,在第一语句和第二语句的相似度的对比过程中,以对比词汇为中心划分与基准词汇进行相似度对比的待匹配词汇,即与基准词汇对比的待匹配词汇不是第二语句中的所有词汇,而是划定范围内的词汇,减少了进行对比的词汇数量,使得第一语句和第二语句的词汇对比速率提高。另外,由于选取的待匹配词汇与基准词汇在各自语句结构的位置大致相同,在确定基准词汇与最大相似度对应的待匹配词汇在各自语句中的含义大致相同,这样在根据词汇来对比第一语句和第二语句的相似度时会更加准确,从而解决了现有技术中语句匹配不准确的问题,进而达到了提高语句匹配的准确率的效果。
优选地,根据第一语句的基准词汇查找第二语句的对比词汇包括:将第一语句和第二语句均分解为多个词汇元素;分别获取第一语句的词汇元素和第二语句的词汇元素的序号;以及在第二语句中查找与多个词汇元素中的基准词汇的序号相同的词汇作为对比词汇。
将第一语句和第二语句分解为多个词汇元素,可以对这些分解得到的词汇元素进行编号,例如,从句首到句尾按顺序编号,那么,在第二语句中查找与第一语句中的基准词汇对应的对比词汇时,第二语句中与基准词汇的序号相同的词汇作为对比词汇,这样,对比词汇中最大相似度对应的词汇在第二语句中的结构与基准词汇在第一语句中的结构类似,当两个词汇的相似度较高时,两个词汇的语意相同的概率也比较大,判断两个词汇为相同词汇的准确率也越高,进而判断两个句子的准确率也越高。
可选地,以对比词汇为中心在第二语句中划分待匹配词汇包括:按照预先设置的搜寻窗口的宽度在第二语句中搜索待匹配词汇,其中,搜寻窗口的宽度为预设词汇个数;以及将对比词汇两侧的处于搜寻窗口内的第二语句中的词汇作为待匹配词汇。
搜寻窗口的宽度为预设词汇个数,例如,预设词汇个数为5个,则搜寻窗口的值为5,在确定搜寻窗口之后,在第二语句中,以对比词汇为中心划分处于搜寻窗口内的词汇作为待匹配词汇。例如,对比词汇为Bi,搜寻窗口的值为5,则在对比词汇的两侧各取两个词汇,分别为Bi-2、Bi-1和Bi+1、Bi+2,则处于搜索窗口内的词汇为Bi-2、Bi-1、Bi、Bi+1和Bi+2,共5个词汇。
通过搜寻窗口划分了待匹配词汇的范围,从而确定了待匹配词汇的个数,减少了与基准词汇对比相似度的词汇个数,从而减少了与基准词汇对比的次数,那么,对于两个句子的相似度的判断过程中,由于每个基准词汇的对比速率提高了,相应的整个句子的对比速率也提高了,从而加速了两个句子相似度的对比,进而提高了查找与第一语句相同的语句的效率。另外,由于待匹配词汇与基准词汇对应,也提高了对比两个词汇相似度的准确性。
可选地,将对比词汇两侧的处于搜寻窗口内的第二语句中的词汇作为待匹配词汇包括:当对比词汇是第二语句中的首个词汇或者是第二语句中的最后一个词汇时;取对比词汇一侧的处于搜寻窗口内的第二语句中的词汇作为待匹配词汇,其中,当对比词汇是第二语句中的首个词汇时,取对比词汇句尾方向的处于搜寻窗口内的词汇作为待匹配词汇,当对比词汇是第二语句中的最后一个词汇时,取对比词汇句首方向的处于搜寻窗口内的词汇作为待匹配词汇。
进行两个语句的匹配时,由于需要对第一语句的每个基准词汇进行相似度的对比,当对比的词汇为句首的词汇或者句尾的词汇时,由于仅在对比词汇的单侧具有待匹配词汇,则利用搜寻窗口查找待匹配词汇时,取搜寻窗口一侧的词汇作为待匹配词汇。
例如,
A1,A2,A3,A4,…,Ai-3,Ai-2,Ai-1,Ai,Ai+1,Ai+2,Ai+3,…
B1,B2,B3,B4,…,Bi-3,Bi-2,…,
A1至An是第一语句,B1至Bm是第二语句,An是基准词汇,位于第一语句的最后,Bm是对比词汇,位于第二语句的最后,搜寻窗口的值为5,将第二语句的句尾的5个词汇划分在搜寻窗口内作为待匹配词汇。
在将相似度最高的待匹配词汇作为基准词汇的匹配词汇之后,为了确定两个句子的相似度,语句匹配方法还包括如图2所示的如下步骤:
步骤S202,依次获取第一语句中每个基准词汇与待匹配词汇的最大相似度。
步骤S204,对第一语句中每个基准词汇的最大相似度求和,得到第一语句词汇相似度。
步骤S206,依次获取第二语句中每个对比词汇与基准词汇的最大相似度。
步骤S208,对第二语句中每个对比词汇的最大相似度求和,得到第二语句词汇相似度。
步骤S210,将第一语句的词汇相似度的算术平均值和第二语句的词汇相似度的算术平均值的平均值作为第一语句和第二语句的相似度。
句子由多个词汇构成,判断两个语句是否相同,要根据组成句子的词汇的相似来确定,当组成句子的词汇完全相同,或者语意近似相同时,可以认为这两个句子相同。
本实施例由所有基准词汇的相似度总和判定第一语句和第二语句的相似度。例如,第一语句和第二语句分别为x和y,2个句子分别由各自的词汇组成:
句子x的词汇表示为x=(A1,A2,…,Ai-w,…,Ai-2,Ai-1,Ai,Ai+1,Ai+2,…,Ai+w,…,An);
句子y的词汇表示为y=(B1,B2,…,Bi-w,…,Bi-2,Bi-1,Bi,Bi+1,Bi+2,…,Bi+w,…,Bm)。
假定基准词汇为Ai,比对词汇为Bi,以Bi为中心设定搜寻窗口中的词汇为(Bi-w,…,Bi-2,Bi-1,Bi,Bi+1,Bi+2,…,Bi+w),
第一语句词汇的相似度为即第一语句中所有基准词汇的最大相似度之和,其中ai为每个基准词汇的最大相似度:
ai=max(sim(Ai,Bi-w),...,sim(Ai,Bi-2),sim(Ai,Bi-1),sim(Ai,Bi),sim(Ai,Bi+1),sim(Ai,Bi+2),...,sim(Ai,Bi+w)),上式表示在基准词汇与待匹配词汇的相似度中取最大值;
第二语句词汇的相似度为即第二语句中所有基准词汇的最大相似度之和,其中bi为每个对比词汇的最大相似度:
bi=max(sim(Bi,Ai-w),...,sim(Bi,Ai-2),sim(Bi,Ai-1),sim(Bi,Ai),sim(Bi,Ai+1),sim(Bi,Ai+2),...sim(Bi,Ai+w)),上式表示在基准词汇与待匹配词汇的相似度中取最大值。
在获取第一语句的词汇相似度和第二语句的词汇相似度之后,取第一语句的词汇相似度的算术平均值和第二语句的词汇相似度的算术平均值的平均值作为第一语句和第二语句的相似度。即2个句子x和y之间的语义相似度sim(x,y)为:
当然,上述实施例还可以将两个语句的相似度的算术平均值之和作为第一语句和第二语句的相似度,可以根据相似度精度的要求确定。
通过上述实施例,将第一语句中每个基准词汇的最大相似度之和作为第一语句的相似度,将第二语句中每个对比词汇的最大相似度之和作为第二语句的相似度,并分别对第一语句的相似度和第二语句的相似度求算术平均值,并将两者算术平均值的平均值作为第一语句和第二语句的相似度。由于提高每个词汇的最大相似度的准确性,从而提高了整个句子的最大相似度的准确性。
本发明实施例的语句匹配方法可以通过本发明实施例所提供的语句匹配装置来执行,本发明实施例的语句匹配装置也可以用于执行本发明实施例所提供的语句匹配方法。
图3是根据本发明实施例的语句匹配装置的示意图。如图所示,该语句匹配装置包括:查找单元10、划分单元30、对比单元50和确定单元70。
查找单元10用于根据第一语句的基准词汇查找第二语句的对比词汇,其中,对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同;
在进行语句匹配时,通常是将语句分解为多个词汇,通过词汇的相似度的分析确定语句的相似度。例如查找与第一语句相同的语句,第二语句是与第一语句做对比的语句,以判断第二语句是否与第一语句相同。第一语句由多个词汇组成,每个词汇都可以作为一个基准词汇。第二语句也由多个词汇组成,第二语句中的对比词汇用于与第一语句中的基准词汇进行对比,从而确定基准词汇与对比词汇的相似度。
在选取对比词汇时,对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同,即考虑到语句结构。按照现有技术的方法,基准词汇与第二语句中的每个词汇进行相似度的对比,可能会出现第一语句的第一个词汇A1与第二语句的最后一个词汇Bm的相似度最大,那么,由于基准词汇在句子首部,最大相似度的对比词汇在句尾,虽然两个词汇的相似度最大,但是两个词汇在整个句子中表达的含义可能大相径庭,这样根据每个基准词汇的最大相似度确定第一语句和第二语句的相似度可能就不准确了。而本实施例中对比词汇在第二语句中的位置与基准词汇在第一语句中的位置相同,那么选取的对比词汇在第二语句结构中所起的作用与基准词汇在第一语句结构中所起的作用基本相同,在待匹配词汇中选择相似度最大的词汇则能够提高第一语句和第二语句的相似度的准确性。
划分单元30用于以对比词汇为中心在第二语句中划分待匹配词汇,其中,待匹配词汇为多个与基准词汇进行匹配的词汇。
在确定对比词汇之后,以对比词汇为中心划分待匹配词汇。例如:
A1,A2,A3,A4,…,Ai-3,Ai-2,Ai-1Ai+1,Ai+2,Ai+3,…An
B1,B2,B3,B4,…,Bi-3Bi+3,…Bm
A1至An是第一语句,B1至Bm是第二语句,在第一语句中选择Ai为基准词汇,在第二语句中确定Bi是对比词汇,以对比词汇Bi为中心划分待匹配词汇,划分的待匹配词汇为Bi-2、Bi-1、Bi、Bi+1和Bi+2。划分得到的待匹配词汇为与基准词汇进行匹配的词汇。
对比单元50用于对基准词汇和待匹配词汇进行一一对比,得到基准词汇和待匹配词汇的相似度。
在获取基准词汇和待匹配词汇之后,将基准词汇与待匹配词汇进行一一对比,如上例中,基准词汇Ai依次与待匹配词汇Bi-2、Bi-1、Bi、Bi+1和Bi+2进行相似度的匹配,也就是说基准词汇与每个待匹配词汇进行匹配,以得到基准词汇与任意一个待匹配词汇的相似度。
确定单元70用于将相似度最大的待匹配词汇作为与基准词汇匹配的词汇。
在得到基准词汇与每个待匹配词汇的相似度之后,将最大相似度对应的对比词汇作为与该基准词汇匹配的词汇,同时,记录此时的最大相似度,如sim(Ai,Bi-1)。
通过上述实施例,在第一语句和第二语句的相似度的对比过程中,以对比词汇为中心划分与基准词汇进行相似度对比的待匹配词汇,即与基准词汇对比的待匹配词汇不是第二语句中的所有词汇,而是划定范围内的词汇,减少了进行对比的词汇数量,使得第一语句和第二语句的词汇对比速率提高。另外,由于选取的待匹配词汇与基准词汇在各自语句结构的位置大致相同,在确定基准词汇与最大相似度对应的待匹配词汇在各自语句中的含义大致相同,这样在根据词汇来对比第一语句和第二语句的相似度时会更加准确,从而解决了现有技术中语句匹配不准确的问题,进而达到了提高语句匹配的准确率的效果。
优选地,查找单元包括:分解模块,用于将第一语句和第二语句均分解为多个词汇元素;序号模块,用于分别获取第一语句的词汇元素和第二语句的词汇元素的序号;以及第二确定模块,用于在第二语句中查找与多个词汇元素中的基准词汇的序号相同的词汇作为对比词汇。
将第一语句和第二语句分解为多个词汇元素,可以对这些分解得到的词汇元素进行编号,例如,从句首到句尾按顺序编号,那么,在第二语句中查找与第一语句中的基准词汇对应的对比词汇时,第二语句中与基准词汇的序号相同的词汇作为对比词汇,这样,对比词汇中最大相似度对应的词汇在第二语句中的结构与基准词汇在第一语句中的结构类似,当两个词汇的相似度较高时,两个词汇的语意相同的概率也比较大,判断两个词汇为相同词汇的准确率也越高,进而判断两个句子的准确率也越高。
可选地,划分单元包括:搜索模块,用于按照预先设置的搜寻窗口的宽度在第二语句中搜索待匹配词汇,其中,搜寻窗口的宽度为预设词汇个数;以及第一确定模块,用于将对比词汇两侧的处于搜寻窗口内的第二语句中的词汇作为待匹配词汇。
搜寻窗口的宽度为预设词汇个数,例如,预设词汇个数为5个,则搜寻窗口的值为5,在确定搜寻窗口之后,在第二语句中,以对比词汇为中心划分处于搜寻窗口内的词汇作为待匹配词汇。例如,对比词汇为Bi,搜寻窗口的值为5,则在对比词汇的两侧各取两个词汇,分别为Bi-2、Bi-1和Bi+1、Bi+2,则处于搜索窗口内的词汇为Bi-2、Bi-1、Bi、Bi+1和Bi+2,共5个词汇。
通过搜寻窗口划分了待匹配词汇的范围,从而确定了待匹配词汇的个数,减少了与基准词汇对比相似度的词汇个数,从而减少了与基准词汇对比的次数,那么,对于两个句子的相似度的判断过程中,由于每个基准词汇的对比速率提高了,相应的整个句子的比较速率也提高了,从而加速了两个句子相似度的对比,进而提高了查找与第一语句相同的语句的效率。
可选地,确定模块包括:确定子模块,用于当对比词汇是第二语句中的首个词汇或者是第二语句中的最后一个词汇时,取对比词汇一侧的处于搜寻窗口内的第二语句中的词汇作为待匹配词汇,其中,当对比词汇是第二语句中的首个词汇时,取对比词汇句尾方向的处于搜寻窗口内的词汇作为待匹配词汇,当对比词汇是第二语句中的最后一个词汇时,取对比词汇句首方向的处于搜寻窗口内的词汇作为待匹配词汇。
进行两个语句的匹配时,由于需要对第一语句的每个基准词汇进行相似度的对比,当对比的词汇为句首的词汇或者句尾的词汇时,由于仅在对比词汇的单侧具有待匹配词汇,则利用搜寻窗口查找待匹配词汇时,取搜寻窗口一侧的词汇作为待匹配词汇。
例如,
A1,A2,A3,A4,…,Ai-3,Ai-2,Ai-1,Ai,Ai+1,Ai+2,Ai+3,…
B1,B2,B3,B4,…,Bi-3,Bi-2,…,
A1至An是第一语句,B1至Bm是第二语句,An是基准词汇,位于第一语句的最后,Bm是对比词汇,位于第二语句的最后,搜寻窗口为5,将第二语句的句尾的5个词汇划分在搜寻窗口内作为待匹配词汇。
为了确定两个句子的相似度,语句匹配装置还包括如图4所示的如下单元:第一获取单元11、第一求和单元22、第二获取单元33、第二求和单元44和第三求和单元55。
第一获取单元11用于在将相似度最高的待匹配词汇作为基准词汇的匹配词汇之后,依次获取第一语句中每个基准词汇与待匹配词汇的最大相似度。
第一求和单元22用于对第一语句中每个基准词汇的最大相似度求和,得到第一语句词汇相似度。
第二获取单元33用于依次获取第二语句中每个对比词汇与基准词汇的最大相似度。
第二求和单元44用于对第二语句中每个对比词汇的最大相似度求和,得到第二语句词汇相似度。
第三求和单元55用于将第一语句的词汇相似度的算术平均值和第二语句的词汇相似度的算术平均值的平均值作为第一语句和第二语句的相似度。
句子由多个词汇构成,判断两个语句是否相同,要根据组成句子的词汇的相似来确定,当组成句子的词汇完全相同,或者语意近似相同时,可以认为这两个句子相同。
本实施例由所有基准词汇的相似度总和判定第一语句和第二语句的相似度。例如,第一语句和第二语句分别为x和y,2个句子分别由各自的词汇组成:
句子x的词汇表示为x=(A1,A2,…,Ai-w,…,Ai-2,Ai-1,Ai,Ai+1,Ai+2,…,Ai+w,…,An);
句子y的词汇表示为y=(B1,B2,…,Bi-w,…,Bi-2,Bi-1,Bi,Bi+1,Bi+2,…,Bi+w,…,Bm)。
假定基准词汇为Ai,比对词汇为Bi,以Bi为中心设定搜寻窗口中的词汇为(Bi-w,…,Bi-2,Bi-1,Bi,Bi+1,Bi+2,…,Bi+w),
第一语句词汇的相似度为即第一语句中所有基准词汇的最大相似度之和,其中ai为每个基准词汇的最大相似度:
ai=max(sim(Ai,Bi-w),...,sim(Ai,Bi-2),sim(Ai,Bi-1),sim(Ai,Bi),sim(Ai,Bi+1),sim(Ai,Bi+2),...,sim(Ai,Bi+w)),上式表示在基准词汇与待匹配词汇的相似度中取最大值;
第二语句词汇的相似度为即第二语句中所有基准词汇的最大相似度之和,其中bi为每个对比词汇的最大相似度:
bi=max(sim(Bi,Ai-w),...,sim(Bi,Ai-2),sim(Bi,Ai-1),sim(Bi,Ai),sim(Bi,Ai+1),sim(Bi,Ai+2),...sim(Bi,Ai+w)),上式表示在基准词汇与待匹配词汇的相似度中取最大值。
在获取第一语句的词汇相似度和第二语句的词汇相似度之后,取第一语句的词汇相似度的算术平均值和第二语句的词汇相似度的算术平均值的平均值作为第一语句和第二语句的相似度。即2个句子x和y之间的语义相似度sim(x,y)为:
当然,上述实施例还可以将两个语句的相似度的算术平均值之和作为第一语句和第二语句的相似度,可以根据相似度精度的要求确定。
通过上述实施例,将第一语句中每个基准词汇的最大相似度之和作为第一语句的相似度,将第二语句中每个对比词汇的最大相似度之和作为第二语句的相似度,并分别对第一语句的相似度和第二语句的相似度求算术平均值,并将两者算术平均值的平均值作为第一语句和第二语句的相似度。由于提高每个词汇的最大相似度的准确性,从而提高了整个句子的最大相似度的准确性。
上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种语句匹配方法,其特征在于,包括:
根据第一语句的基准词汇查找第二语句的对比词汇,其中,所述对比词汇在所述第二语句中的位置与所述基准词汇在所述第一语句中的位置相同;
以所述对比词汇为中心在所述第二语句中划分待匹配词汇,其中,所述待匹配词汇为多个与所述基准词汇进行相似度的匹配的词汇;
对所述基准词汇和所述待匹配词汇进行一一对比,得到所述基准词汇和所述待匹配词汇的相似度;以及
将所述相似度最大的所述待匹配词汇作为与所述基准词汇匹配的词汇。
2.根据权利要求1所述的语句匹配方法,其特征在于,以所述对比词汇为中心在所述第二语句中划分待匹配词汇包括:
按照预先设置的搜寻窗口的宽度在所述第二语句中搜索所述待匹配词汇,其中,所述搜寻窗口的宽度为预设词汇个数;以及
将所述对比词汇两侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇。
3.根据权利要求2所述的语句匹配方法,其特征在于,将所述对比词汇两侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇包括:
当所述对比词汇是所述第二语句中的首个词汇或者是所述第二语句中的最后一个词汇时;
取所述对比词汇一侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇,
其中,当所述对比词汇是所述第二语句中的首个词汇时,取所述对比词汇句尾方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇,当所述对比词汇是所述第二语句中的最后一个词汇时,取所述对比词汇句首方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇。
4.根据权利要求1所述的语句匹配方法,其特征在于,在将所述相似度最高的所述待匹配词汇作为所述基准词汇的匹配词汇之后,所述语句匹配方法还包括:
依次获取所述第一语句中每个所述基准词汇与所述待匹配词汇的最大相似度;
对所述第一语句中每个所述基准词汇的最大相似度求和,得到所述第一语句词汇相似度;
依次获取所述第二语句中每个所述对比词汇与所述基准词汇的最大相似度;
对所述第二语句中每个所述对比词汇的最大相似度求和,得到所述第二语句词汇相似度;以及
将所述第一语句的词汇相似度的算术平均值和所述第二语句的词汇相似度的算术平均值的平均值作为所述第一语句和所述第二语句的相似度。
5.根据权利要求1所述的语句匹配方法,其特征在于,根据第一语句的基准词汇查找第二语句的对比词汇包括:
将所述第一语句和所述第二语句均分解为多个词汇元素;
分别获取所述第一语句的词汇元素和所述第二语句的词汇元素的序号;以及
在所述第二语句中查找与所述多个词汇元素中的基准词汇的序号相同的词汇作为所述对比词汇。
6.一种语句匹配装置,其特征在于,包括:
查找单元,用于根据第一语句的基准词汇查找第二语句的对比词汇,其中,所述对比词汇在所述第二语句中的序号与所述基准词汇在所述第一语句中的序号相同;
划分单元,用于以所述对比词汇为中心在所述第二语句中划分待匹配词汇,其中,所述待匹配词汇为多个与所述基准词汇进行匹配的词汇;
对比单元,用于对所述基准词汇和所述待匹配词汇进行一一对比,得到所述基准词汇和所述待匹配词汇的相似度;以及
确定单元,用于将所述相似度最大的所述待匹配词汇作为与所述基准词汇匹配的词汇。
7.根据权利要求6所述的语句匹配装置,其特征在于,所述划分单元包括:
搜索模块,用于按照预先设置的搜寻窗口的宽度在所述第二语句中搜索所述待匹配词汇,其中,所述搜寻窗口的宽度为预设词汇个数;以及
第一确定模块,用于将所述对比词汇两侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇。
8.根据权利要求7所述的语句匹配装置,其特征在于,所述确定模块包括:
确定子模块,用于当所述对比词汇是所述第二语句中的首个词汇或者是所述第二语句中的最后一个词汇时,取所述对比词汇一侧的处于所述搜寻窗口内的所述第二语句中的词汇作为所述待匹配词汇,
其中,当所述对比词汇是所述第二语句中的首个词汇时,取所述对比词汇句尾方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇,当所述对比词汇是所述第二语句中的最后一个词汇时,取所述对比词汇句首方向的处于所述搜寻窗口内的词汇作为所述待匹配词汇。
9.根据权利要求6所述的语句匹配装置,其特征在于,所述语句匹配装置还包括:
第一获取单元,用于在将所述相似度最高的所述待匹配词汇作为所述基准词汇的匹配词汇之后,依次获取所述第一语句中每个所述基准词汇与所述待匹配词汇的最大相似度;
第一求和单元,用于对所述第一语句中每个所述基准词汇的最大相似度求和,得到所述第一语句词汇相似度;
第二获取单元,用于依次获取所述第二语句中每个所述对比词汇与所述基准词汇的最大相似度;
第二求和单元,用于对所述第二语句中每个所述对比词汇的最大相似度求和,得到所述第二语句词汇相似度;以及
第三求和单元,用于将所述第一语句的词汇相似度的算术平均值和所述第二语句的词汇相似度的算术平均值的平均值作为所述第一语句和所述第二语句的相似度。
10.根据权利要求6所述的语句匹配装置,其特征在于,所述查找单元包括:
分解模块,用于将所述第一语句和所述第二语句均分解为多个词汇元素;
序号模块,用于分别获取所述第一语句的词汇元素和所述第二语句的词汇元素的序号;以及
第二确定模块,用于在所述第二语句中查找与所述多个词汇元素中的基准词汇的序号相同的词汇作为所述对比词汇。
CN201410386820.9A 2014-08-07 2014-08-07 语句匹配方法和装置 Expired - Fee Related CN104123389B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410386820.9A CN104123389B (zh) 2014-08-07 2014-08-07 语句匹配方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410386820.9A CN104123389B (zh) 2014-08-07 2014-08-07 语句匹配方法和装置

Publications (2)

Publication Number Publication Date
CN104123389A CN104123389A (zh) 2014-10-29
CN104123389B true CN104123389B (zh) 2017-08-01

Family

ID=51768800

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410386820.9A Expired - Fee Related CN104123389B (zh) 2014-08-07 2014-08-07 语句匹配方法和装置

Country Status (1)

Country Link
CN (1) CN104123389B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105701120B (zh) 2014-11-28 2019-05-03 华为技术有限公司 确定语义匹配度的方法和装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000322449A (ja) * 1999-03-08 2000-11-24 A I Soft Inc 自然言語文関係判定装置、自然言語文検索装置、自然言語文生成装置およびこれらに用いる枠組み表現出力装置、ならびにそれらの方法および記録媒体
CN102955772A (zh) * 2011-08-17 2013-03-06 北京百度网讯科技有限公司 一种基于语义的相似度计算方法和装置
CN103838789A (zh) * 2012-11-27 2014-06-04 大连灵动科技发展有限公司 一种文本相似度计算方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000322449A (ja) * 1999-03-08 2000-11-24 A I Soft Inc 自然言語文関係判定装置、自然言語文検索装置、自然言語文生成装置およびこれらに用いる枠組み表現出力装置、ならびにそれらの方法および記録媒体
CN102955772A (zh) * 2011-08-17 2013-03-06 北京百度网讯科技有限公司 一种基于语义的相似度计算方法和装置
CN103838789A (zh) * 2012-11-27 2014-06-04 大连灵动科技发展有限公司 一种文本相似度计算方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
大规模句子相似度计算方法;黄河燕等;《中文信息学报》;20061231;47-52 *

Also Published As

Publication number Publication date
CN104123389A (zh) 2014-10-29

Similar Documents

Publication Publication Date Title
CN106815252B (zh) 一种搜索方法和设备
CN103425635B (zh) 一种答案推荐方法和装置
US9477747B2 (en) Method and apparatus for acquiring hot topics
CN105808590B (zh) 搜索引擎实现方法、搜索方法以及装置
CN105608218B (zh) 智能问答知识库的建立方法、建立装置及建立系统
CN107220386A (zh) 信息推送方法和装置
CN107609152A (zh) 用于扩展查询式的方法和装置
CN108287864A (zh) 一种兴趣群组划分方法、装置、介质及计算设备
CN108319627A (zh) 关键词提取方法以及关键词提取装置
CN105893478A (zh) 一种标签提取方法及设备
CN108121800A (zh) 基于人工智能的信息生成方法和装置
CN112633000B (zh) 一种文本中实体的关联方法、装置、电子设备及存储介质
CN109299245A (zh) 知识点召回的方法和装置
CN109241278B (zh) 科研知识管理方法及系统
CN106649849A (zh) 文本信息库建立方法和装置、以及搜索方法、装置和系统
CN106708940A (zh) 用于处理图片的方法和装置
CN109062914A (zh) 用户推荐方法和装置,存储介质和服务器
CN107391509A (zh) 标签推荐方法及装置
CN110222194A (zh) 基于自然语言处理的数据图表生成方法和相关装置
CN107977676A (zh) 文本相似度计算方法及装置
CN110209810A (zh) 相似文本识别方法以及装置
CN109325178A (zh) 用于处理信息的方法和装置
CN106356056B (zh) 语音识别方法和装置
CN106021532A (zh) 关键词的显示方法和装置
CN111666513A (zh) 页面处理方法、装置、电子设备及可读存储介质

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Sentence matching method and device

Effective date of registration: 20190129

Granted publication date: 20170801

Pledgee: Beijing technology intellectual property financing Company limited by guarantee

Pledgor: BEIJING WEIZOOM CULTURE MEDIA CO.,LTD.

Registration number: 2019990000085

PC01 Cancellation of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20200529

Granted publication date: 20170801

Pledgee: Beijing technology intellectual property financing Company limited by guarantee

Pledgor: BEIJING WEIZOOM CULTURE MEDIA Co.,Ltd.

Registration number: 2019990000085

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20170801