CN109033075B - 意图匹配的方法、装置、存储介质和终端设备 - Google Patents

意图匹配的方法、装置、存储介质和终端设备 Download PDF

Info

Publication number
CN109033075B
CN109033075B CN201810712529.4A CN201810712529A CN109033075B CN 109033075 B CN109033075 B CN 109033075B CN 201810712529 A CN201810712529 A CN 201810712529A CN 109033075 B CN109033075 B CN 109033075B
Authority
CN
China
Prior art keywords
query
sentence
statement
rule
participles
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
Application number
CN201810712529.4A
Other languages
English (en)
Other versions
CN109033075A (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 Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201810712529.4A priority Critical patent/CN109033075B/zh
Publication of CN109033075A publication Critical patent/CN109033075A/zh
Application granted granted Critical
Publication of CN109033075B publication Critical patent/CN109033075B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/20Natural language analysis
    • G06F40/279Recognition of textual entities
    • G06F40/289Phrasal analysis, e.g. finite state techniques or chunking

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)
  • Stored Programmes (AREA)

Abstract

本发明提出一种意图匹配的方法、装置、存储介质和终端设备,其中,所述方法包括:获取待匹配的查询语句;对所述查询语句进行切词,得到各分词;根据所述查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句;其中,所述树是预先根据规则语句构建的;以及根据匹配获得的规则语句和所述查询语句,确定返回的查询意图。采用本发明,能降低意图匹配的时间复杂度。

Description

意图匹配的方法、装置、存储介质和终端设备
技术领域
本发明涉及计算机技术领域,尤其涉及一种意图匹配的方法、装置、存储介质和终端设备。
背景技术
随着检索技术的发展,人们可以在搜索引擎中搜索出其所需要的信息,或者在数据库中检索出相关的信息。其中,检索方法包括基于用户输入的关键字的检索、基于查询语句的检索以及基于语义的检索等。对于查询语句的检索,查询系统需要匹配识别出该查询语句的查询意图。例如,以查询语句为“我想办理流量包”或“流量包给我办理一个”为例,其对应的查询意图是“办理流量包”。一般地,查询意图的识别方法可以如下:
1、通过传统的检索方式检索出与输入的查询语句相似的查询语句,以该相似的查询语句的查询意图作为本查询语句的查询意图。
2、通过正则匹配的方法,匹配查询语句的查询意图。
但是,上述方案均有其不足之处:
1、传统的检索方式的实现过程过于复杂,工程量大。
2、采用正则匹配的方式,需要遍历词典中的查询语句,匹配的时间与词典中的查询语句的数量成正比。如果词表的量级是百万条查询语句,则匹配的时间复杂度对于查询者来说是难以接受的。
发明内容
本发明实施例提供一种意图匹配的方法、装置、存储介质和终端设备,以解决或缓解现有技术中的以上一个或多个技术问题。
第一方面,本发明实施例提供了一种意图匹配的方法,包括:
获取待查询的查询语句;
对所述查询语句进行切词,获得各分词;
根据所述查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句;其中,所述树是预先根据规则语句构建的;以及
根据匹配获得的规则语句和所述查询语句,确定返回的查询意图。
结合第一方面,在第一方面的第一种实施方式中,所述根据匹配获得的规则语句和所述查询语句,确定返回的查询意图,包括:
计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度;
判断所述覆盖度是否满足覆盖度阈值,以及判断所述间隔度是否满足间隔度阈值;以及
当所述覆盖度满足所述覆盖度阈值,以及所述间隔度满足所述间隔度阈值时,返回所述查询语句的查询意图。
结合第一方面的第一种实施方式,在第一方面的第二种实施方式中,所述计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度,包括:
根据所述规则语句已覆盖所述查询语句的分词的数量与所述查询语句的分词的数量之间的比值,确定所述覆盖度;
根据所述查询语句中未被所述规则语句覆盖的词的长度,确定所述间隔度。
结合第一方面的第一种实施方式,在第一方面的第三种实施方式中,所述方法还包括:
根据所述查询语句的分词数量,确定所述覆盖度阈值。
结合第一方面,在第一方面的第四种实施方式中,所述方法还包括:
当返回的查询意图包括多个时,从所述多个的查询意图中选择分词数量最多的规则语句所对应的查询意图,作为返回的查询意图。
结合第一方面及其任一种实施方式,在第一方面的第五种实施方式中,所述方法还包括:
获取用于生成所述查询意图的规则语句的语句段;
对各语句段按照词义分别进行分词;
将同一词义或相近词义的分词,归入同一分词集;
分别从各分词集中选择一个分词,组合成规则语句;以及
将组合得到规则语句与所述查询意图关联。
结合第一方面的第五种实施方式,在第一方面的第六种实施方式中,所述规则语句包括分割符,所述分割符用于间隔并连接所述规则语句中的分词;以及所述方法还包括:
从组合得到的规则语句中,选取首个分词相同的规则语句;
以所述首个分词作为选取的规则语句的树的根节点;以及
根据选择的规则语句的分词和分词的排列顺序,构建所述树的子节点。
第二方面,本发明实施例还提供一种意图匹配的装置,包括:
查询语句接收模块,用于获取待查询的查询语句;
语句预处理模块,用于对所述查询语句进行切词,获得各分词;
规则语句获取模块,用于根据所述查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句;其中,所述树是预先根据规则语句构建的;以及
查询意图返回模块,用于根据匹配获得的规则语句和所述查询语句,确定返回的查询意图。
结合第二方面,在第二方面的第一种实施方式中,所述查询意图返回模块包括:
覆盖与间隔计算单元,用于计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度;
阈值判断单元,用于判断所述覆盖度是否满足覆盖度阈值,以及判断所述间隔度是否满足间隔度阈值;以及
意图返回单元,用于当所述覆盖度满足所述覆盖度阈值,以及所述间隔度满足所述间隔度阈值时,返回所述查询语句的查询意图。
所述装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。所述硬件或软件包括一个或多个与上述功能相对应的模块。
在一个可能的设计中,意图匹配的结构中包括处理器和存储器,所述存储器用于意图匹配的装置执行上述第一方面中意图匹配的程序,所述处理器被配置为用于执行所述存储器中存储的程序。所述意图匹配的装置还可以包括通信接口,用于意图匹配的装置与其他设备或通信网络通信。
第三方面,本发明实施例还提供一种计算机可读存储介质,用于意图匹配的装置所用的计算机软件指令,其中包括用于执行上述第一方面的意图匹配的方法所涉及的程序。
上述技术方案中的任意一个技术方案具有如下优点或有益效果:
本发明实施例可以在获取到查询语句之后,对查询语句进行切词。然后,根据查询语句的分词和各分词的排列顺序,对预先构建的树进行搜索,得到相应的规则语句。其中,预先构建成的树是根据规则语句构建成的。如此,匹配的过程中时间复杂度是由树的深度来决定,并非由规则语句的数量来决定,大大降低了检索的时间复杂度。以及,后续还可以根据搜索获得的规则语句与查询语句之间的匹配程度,来确定返回的查询意图,可以控制匹配的返回过程。
上述概述仅仅是为了说明书的目的,并不意图以任何方式进行限制。除上述描述的示意性的方面、实施方式和特征之外,通过参考附图和以下的详细描述,本发明进一步的方面、实施方式和特征将会是容易明白的。
附图说明
在附图中,除非另外规定,否则贯穿多个附图相同的附图标记表示相同或相似的部件或元素。这些附图不一定是按照比例绘制的。应该理解,这些附图仅描绘了根据本发明公开的一些实施方式,而不应将其视为是对本发明范围的限制。
图1是本发明提供的意图匹配的方法的一个实施例的流程示意图;
图2是本发明提供的树搜索的一个实施例的示意图;
图3是本发明提供的意图选择的方法的一个实施例的流程示意图;
图4是本发明提供的规则语句添加的过程的一个实施例的流程示意图;
图5是本发明提供的语句段的书写的一个实施例的表格示意图;
图6是本发明提供的查询意图与生成的规则语句的一个实施例的表格示意图;
图7是本发明提供的建立规则语句的树的建立过程的一个实施例的流程示意图;
图8是本发明提供的基于规则语句建立的树的一个实施例的示意图;
图9是本发明提供的意图匹配的方法的一个应用示例的流程示意图;
图10是本发明提供的意图匹配的装置的一个实施例的结构示意图;
图11是本发明提供的终端设备的一个实施例的结构示意图。
具体实施方式
在下文中,仅简单地描述了某些示例性实施例。正如本领域技术人员可认识到的那样,在不脱离本发明的精神或范围的情况下,可通过各种不同方式修改所描述的实施例。因此,附图和描述被认为本质上是示例性的而非限制性的。
请参阅图1,本发明实施例提供了一种意图匹配的方法,可以应用于终端设备。终端设备可以包括智能手机、平板、计算机等。本实施例包括步骤S100至步骤S400,具体如下:
S100,获取待查询的查询语句。
在本实施例中,用户可以通过一个终端设备的查询页面输入查询语句,终端响应接收到的查询语句,进行后续的查询。输入的方式可以包括语音或文本输入等。查询语句可以包括表示用户具体需求的一段语句,例如“我想办理流量包”、“我的积分可以兑换多少话费”等。
S200,对查询语句进行切词,获得各分词。
在本发明实施例中,可以根据常用的词典,对查询语句进行切词。例如,假设查询语句是“我的积分能兑换什么呢”,按分词的顺序排列,切词之后的分词可以示意为:“我/的/积分/能/兑换/什么/呢”。切词的过程中,可以滤除噪声词、无法识别的乱码、重复含义的词、歧义词等。例如,同时出现“的的”,出现了两个连续的“的”,可以将其中一个“的”去除。
S300,根据查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句。其中,树是预先根据规则语句构建的。
在本实施例中,每一个查询意图包括多个规则语句,多个规则语句可以预先构建相应的树。可以按照各规则语句的分词以及各分词在相应的规则语句中的排列顺序,确定树的根节点和分支节点。如图2所示,图2的左侧为根据规则语句构成的树,包括“修改宽带密码”和“服务务密码”两个规则语句。图2的右侧,当查询语句为“重置宽度密码”,通过步骤S200的切词得到各分词,各分词依据从左到右的排序可以示意为“重置/宽度/密码”。然后通过左侧的树搜索,获知查询语句对应的规则语句为“修改宽带密码”。
S400,根据匹配获得的规则语句和查询语句,确定返回的查询意图。
在本实施例中,匹配到的规则语句可以包括一个或多个。在步骤S400中可以根据匹配获得的规则语句和查询语句之间的匹配程度,选择相应的规则语句对应的查询意图。在获知用户的查询意图之后,终端设备的系统可以执行相应的查询或操作。例如,确定查询意图为“修改密码”,系统执行修改密码的操作。再如,确定查询意图为“积分兑换”,系统可以在积分兑换的系统中进行相应的积分兑换查询。
本发明实施例可以在获取到查询语句之后,对查询语句进行切词。然后,根据查询语句的分词和各分词的排列顺序,对预先构建的树进行搜索,得到相应的规则语句。其中,可以根据规则语句构建该树。匹配的过程中时间复杂度可以由树的深度来决定,而并非由规则语句的数量来决定,大大降低了检索的时间复杂度。以及,后续还可以根据搜索获得的规则语句与查询语句之间的匹配程度,来确定返回的查询意图,可以控制匹配的返回过程。
在一种可能的实现方式中,可以采用规则语句覆盖查询语句的程度以及查询语句中未被规则语句覆盖的词的间隔程度,来评估匹配到的各规则语句与查询语句之间的匹配程度,可以控制规则语句的召回量。基于此,如图3所示,上述步骤S400可以包括步骤S410至步骤S430,如下:
S410,计算规则语句中的分词在查询语句中的覆盖度,以及未覆盖查询语句的分词在查询语句中的间隔度。
在本实施例中,根据规则语句已覆盖查询语句的分词的数量与查询语句的分词的数量之间的比值,可以确定覆盖度。例如,以查询语句M“我的积分能兑换什么呢”为例,切词之后为“我/的/积分/能/兑换/什么/呢”。通过步骤S200的树搜索过程,假设可以匹配到的规则语句Q为“我@的@积分@兑换@什么”。对比两者可知,规则语句Q已覆盖查询语句的分词的数量为5个,查询语句Q的分词的数量为7个,可以计算得到规则语句Q在查询语句M中的覆盖度D为
Figure BDA0001716911740000071
其中,本实施例中可以以“@”、“/”等分割符表示分词之间的分隔与连接。
在本实施例中,根据查询语句中未被规则语句覆盖的词的长度,可以确定间隔度。接上例,对比规则语句Q与查询语句M中的各分词,可知查询语句M中未被规则语句Q覆盖的分词包括:“能”和“呢”。其中,分词“能”是间隔在已被覆词的两个分词之间,分词“能”的长度可以以分词中单词的数量来衡量,例如,分词“能”的长度为1,规则语句Q在查询语句M中的间隔度I为1。
S420,判断覆盖度是否满足覆盖度阈值,以及判断间隔度是否满足间隔度阈值。
在本实施例中,可以根据控制召回查询意图的需要,设置覆盖度阈值的高低,或者设置间隔度阈值。例如,覆盖度阈值可以设为60%、70%、80%等;间隔度阈值可以设为1、2、3等。
在一种可能的实现方式中,可以根据查询语句的分词数量,实时在调整覆盖度阈值或间隔度阈值。若查询语句的分词数量较多,则覆盖度阈值可以调高点,间隔度阈值也可以随之调低点。若查询语句的分词数量较少,则覆盖度阈值可以调低点,间隔度阈值也可以调高点。例如,当查询语句的分词数量大于6个词语时,覆盖度阈值可以调整为80%,则当规则语句在查询语句中的覆盖度大于或等于80%时,判定满足覆盖度要求。再如,当查询语句的分词数量小于或等于6个词语,覆盖度阈值可以调整为50%,则当规则语句在查询语句中的覆盖度大于或等于80%时,判定满足覆盖度阈值。再如,间隔度阈值可以设置为1,当规则语句在查询语句中的间隔度小于或等于1时,判定间隔度阈值。
S430,当覆盖度满足覆盖度阈值,以及间隔度满足间隔度阈值时,返回查询语句的查询意图。
示例性,例如,覆盖度阈值可以设置为70%,间隔度阈值可以设置为1。此时,接上例的规则语句Q和查询语句M,规则语句Q在查询语句M中的覆盖度D为
Figure BDA0001716911740000081
规则语句Q在查询语句M中的间隔度I为1。覆盖度D的数值大于70%,间隔度I的数值等于1,可以判定返回规则语句Q的查询意图。
在一种可能的实现方式中,如果上述步骤匹配得到的规则语句包括多个,那么返回的查询意图也可能包括多个。基于此,本实施例的意图匹配的方法可以包括:当返回的查询意图包括多个时,从多个的查询意图中选择分词数量最多的规则语句所对应的查询意图,作为返回的查询意图。
在一种可能的实现方式中,为了丰富查询系统内的查询意图以及查询意图对应的规则语句,可以提供一个页面,方便维护人员从该页面输入一些语句段以生成规则语句,并将规则语句与查询意图关联。具体地,如图4所示,规则语句添加的过程可以包括步骤S510至步骤S550,如下:
S510,获取用于生成查询意图的规则语句的语句段。
S520,对各语句段按照词义分别进行分词。
S530,将同一词义或相近词义的分词,归入同一分词集。
在本实施例中,系统可以设定语句段的输入规则,维护人员可以基于语句段的输入规则输入一些语句段。维护人员也可以直接输入语句段,然后基于步骤S410至步骤S430形成一个类似于图5的规则语句段文档。规则语句段文档以表格的形式表示。例如,第一列对应查询意图,例如“积分兑换”。如果第一列的意询意图以标示符“#”开头,则该行对应的语句段可以不生效,即不用于生成规则语句。第二列为对应查询意图而获取的语句段。以图5为例,第二列包括两个语句段。语句段内包括多个分词集。分词集内包括同一词义或相近词的分词。每一个分词集可以用括号“()”进行包围。分词集内的分词可以采用分隔符进行分隔,例如“|”标识符。为了满足一些可选分词的需求,采用”##”对分词集进行包围。语句段之间可以用分隔符隔开,例如“;”分号符。
S540,分别从各分词集中选择一个分词,组合成规则语句。
接上例,本实施例可以根据图5的表格的第二列的两个语句段分别来执行步骤S440,生成相应的规则语句,可以如图6所示。例如,对于第一个语句段“#(查询)#(我的积分)(兑换|对换)(多少话费|什么)”,可以分别从“(我的积分)(兑换|对换)(多少话费|什么)”中选择一个分词,以及可以选择性地从“#(查询)#”分词集中选择分词,组合成规则语句。规则语句可以包括分隔符,用于分隔分词,从分词集中选取的分词还可以继续分词,并用分隔符分开。为了区别其他分隔符,规则语句的分隔符可以采用“@”。对应第一个语句段,生成的规则语句可以包括图6的表格中的第二列的第一行至第八行的内容。对应第二个语句段,生成的规则语句可以包括6表格中的第二列的第九行至第十二行内容。
S550,将组合得到规则语句与查询意图关联。
接上例,本实施例可以在图6的表格的第一列中包含与第二列的规则语句对应的查询意图的名称。
在一种可能的实施方式中,基于上述提出的实施方式,规则语句可以包括分割符,例如“@”标示符,此分割符可以用于间隔并连接规则语句中的分词。那么本实施例可以基于规则语句的构成方式,建立规则语句的树。其中,如图7所示,建立规则语句的树的过程可以包括步骤S610至步骤S630,如下:
S610,从组合得到的规则语句中,选取首个分词相同的规则语句。
示例性,如图6所示,在第二列的规则语句中,前四行的首个分词相同,第五行至第八行的首个分词相同,第九行和第十行的首个分词相同,第十一行和第十二行的首个分词相同。如此可以基于图6的规则语句选择四组规则语句。
S620,以首个分词作为选取的规则语句的树的根节点。
接上例,基于前述确定的四组规则语句,可以确定四个树的根节点,包括“查询”、“我”、“积分”和“当前”。
S630,根据选择的规则语句的分词和分词的排列顺序,构建树的子节点。
接上例,以根节点为“查询”的树为例,基于步骤S530构成的树可以如图8所示。树的子节点的排列顺序与分词的排列顺序是相呼应。树的根节点对应规则语句的第一个分词,树的第n个子节点对应规则语句的第n+1个分词。以图6所示的前四行构成的一组规则语句为例,组内在第5个分词出现了分歧,此时树从第四个子节点开始进行二分叉表示两个分词“兑换”和“对换”。
如图9所示,其是本发明实施例提供的意图匹配的方法的应用示例的流程示意图。以下将结合图2、图5、图6和图8,描述本应用示例的实现过程,具体如下:
1、定义语法规则
如图5所示,规则语句段文档包含两列,第一列是查询意图的名称,第二列是用于生成规则语句的语句段。
第一列的查询意图的名称,需严格对照前述意图识别的方法中的意图名称来设置。如果第一列的名称以#号开头,则该行语句段都不会生效。如果名称后接”_short”的标识符,则表明该语句段是用于生成短查询语句,例如小于或等于6个词语的查询语句。
第二列包含了同一行查询意图对应的所有语句段。语句段与语句段之间可以英文“;”分号符进行分隔。语句段内由多分词集组成。每个分词集可以用“()”括号符进行包围。以及,为了满足一些可选分词的需求,采用“##”的标识符包围一个分词集,来表明这分词集的分词是可以被选择或不被选择来生成规则语句的。分词集内不同的分词之间可以“|”的分隔符来分隔。
2、书写语句段
在本实施例中,可以人工基于上述语法规则来书写,也可以基于用户输入的一个语句或语句段生成符合上述语法规则的语句段。如图5所示,表格中的第二列包括两个语句段,语句段之间用“;”分号符分开。其中,第一个语句段的”##”包围的分词集,代表在组合成规则语句时,该分词集内的分词可有可无。利用上述实施例提供的规则语句的生成程序,可以根据表格中的语句段,在程序中展开,得到图6所示的规则语句。
3、生成规则语句
在规则语句展开的过程时,会自动将分词集中提取的分词再次进行分词。如图6所示,每一条展开的规则语句都由若干个词语组成,由分割符@连接,以供后续建树的过程中自动导入规则语句。
4、建树
首先,从组合得到的规则语句中,选取首个分词相同的规则语句。然后,以首个分词作为选取的规则语句的树的根节点。最后,根据选择的规则语句的分词和分词的排列顺序,构建树的子节点。
示例性,如图6所示,在第二列的规则语句中,前四行的首个分词相同,第五行至第八行的首个分词相同,第九行和第十行的首个分词相同,第十一行和第十二行的首个分词相同。如此可以基于图6的规则语句可以确定四组规则语句。以及,可以确定四个树的根节点,包括“查询”、“我”、“积分”和“当前”。基于图6提供的前四行的规则语句,可以生成图8所示的树。树的子节点的排列顺序与分词的排列顺序是相呼应。树的根节点对应规则语句的第一个分词,树的第n个子节点对应规则语句的第n+1个分词。以图6所示的前四行构成的一组规则语句为例,组内在第5个分词出现了分歧,此时树的第四个子节点需要进行二分叉表示两个分词“兑换”和“对换”。
5、意图匹配的过程
如图9所示,以查询语句:Query=我的积分能兑换什么呢,进行举例:
Step1、树导入。导入图6的表格和基于图6表格建好的树进入内存。
Step2、查询语句分词。对查询语句Query进行分词,得到分词后的查询语句“Query’=我/的/积分/能/兑换/什么/呢”。
Step3、树搜索。将分词后的查询语句与基于图6表格建好的树进行匹配,匹配获得规则语句“我@的@积分@兑换@什么”。
Step4、覆盖度计算。覆盖度
Figure BDA0001716911740000111
Figure BDA0001716911740000112
Step5、间隔度计算。计算查询语句中未被规则语句覆盖的词的长度I=1。其中,分词“能”未被覆盖,分词“能”间隔在已覆盖的分词“积分”和“兑换”之间,分词“能”的单词数量为1,则间隔度I=1。
Step6、意图匹配。如果覆盖度D≥70%并且间隔度I≤1,则返回匹配到规则语句对应的查询意图。
Step7、意图选取。如果匹配到了多条规则语句且满足Step6中的条件,则选取词语数量最多的规则语句,从中得到查询意图。
需要说明的是,对于短查询语句来说,例如小于或等于6个词语的查询语句,如果匹配至的规则语句的覆盖度D≥50%并且间隔度I≤1,则返回该规则语句对应的查询意图。
本实施例具有以下优点:
1、规则语句的可维护性好,不懂技术的人也可以维护。
2、意图匹配的时长与树的深度相关,时间复杂度低。
3、可以书写语句段生成规则语句,并迭代到具体的线上应用程序的产品中,可以快速地对线上进行干预。
如图10所示,本发明实施例还提供一种意图匹配的装置,包括:
查询语句接收模块100,用于获取待查询的查询语句;
语句预处理模块200,用于对所述查询语句进行切词,获得各分词;
规则语句获取模块300,用于根据所述查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句;其中,所述树是预先根据规则语句构建的;以及
查询意图返回模块400,用于根据匹配获得的规则语句和所述查询语句,确定返回的查询意图。
结合第二方面,在第二方面的第一种实施方式中,所述查询意图返回模块包括:
覆盖与间隔计算单元,用于计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度;
阈值判断单元,用于判断所述覆盖度是否满足覆盖度阈值,以及判断所述间隔度是否满足间隔度阈值;以及
意图返回单元,用于当所述覆盖度满足所述覆盖度阈值,以及所述间隔度满足所述间隔度阈值时,返回所述查询语句的查询意图。
本发明实施例还提供一种终端设备,如图11所示,该设备包括:存储器21和处理器22,存储器21内存储有可在处理器22上的计算机程序。处理器22执行计算机程序时实现上述实施例中的意图匹配的方法。存储器21和处理器22的数量可以为一个或多个。
该设备还包括:
通信接口23,用于处理器22与外部设备之间的通信。
存储器21可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器。
如果存储器21、处理器22和通信接口23独立实现,则存储器21、处理器22和通信接口23可以通过总线相互连接并完成相互间的通信。总线可以是工业标准体系结构(ISA,Industry Standard Architecture)总线、外部设备互连(PCI,Peripheral Component)总线或扩展工业标准体系结构(EISA,Extended Industry Standard Component)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图11中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
可选的,在具体实现上,如果存储器21、处理器22及通信接口23集成在一块芯片上,则存储器21、处理器22及通信接口23可以通过内部接口完成相互间的通信。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,“计算机可读介质”可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。
本发明实施例的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质的更具体的示例至少(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式只读存储器(CDROM)。另外,计算机可读存储介质甚至可以是可在其上打印程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得程序,然后将其存储在计算机存储器中。
在本发明实施例中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于指令执行系统、输入法或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、射频(Radio Frequency,RF)等等,或者上述的任意合适的组合。
应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读存储介质中。存储介质可以是只读存储器,磁盘或光盘等。
以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (9)

1.一种意图匹配的方法,其特征在于,包括:
获取待匹配的查询语句;
对所述查询语句进行切词,得到各分词;
根据所述查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句;其中,所述树是预先根据规则语句构建的;
计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度;
判断所述覆盖度是否满足覆盖度阈值,以及判断所述间隔度是否满足间隔度阈值;以及
当所述覆盖度满足所述覆盖度阈值,以及所述间隔度满足所述间隔度阈值时,返回所述查询语句的查询意图。
2.如权利要求1所述的意图匹配的方法,其特征在于,所述计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度,包括:
根据所述规则语句已覆盖所述查询语句的分词的数量与所述查询语句的分词的数量之间的比值,确定所述覆盖度;
根据所述查询语句中未被所述规则语句覆盖的词的长度,确定所述间隔度。
3.如权利要求1所述的意图匹配的方法,其特征在于,所述方法还包括:
根据所述查询语句的分词数量,确定所述覆盖度阈值。
4.如权利要求1所述的意图匹配的方法,其特征在于,所述方法还包括:
当返回的查询意图包括多个时,从所述多个的查询意图中选择分词数量最多的规则语句所对应的查询意图,作为返回的查询意图。
5.如权利要求1至4任一项所述的意图匹配的方法,其特征在于,所述方法还包括:
获取用于生成所述查询意图的规则语句的语句段;
对各语句段按照词义分别进行分词;
将同一词义或相近词义的分词,归入同一分词集;
分别从各分词集中选择一个分词,组合成规则语句;以及
将组合得到规则语句与所述查询意图关联。
6.如权利要求5所述的意图匹配的方法,其特征在于,所述规则语句包括分割符,所述分割符用于间隔并连接所述规则语句中的分词,所述方法还包括:
从组合得到的规则语句中,选取首个分词相同的规则语句;
以所述首个分词作为选取的规则语句的树的根节点;以及
根据选择的规则语句的分词和分词的排列顺序,构建所述树的子节点。
7.一种意图匹配的装置,其特征在于,包括:
查询语句获取模块,用于获取待查询的查询语句;
语句预处理模块,用于对所述查询语句进行切词,得到各分词;
规则语句获取模块,用于根据所述查询语句的分词和各分词在查询语句中的排列顺序,进行树的节点匹配,获得规则语句;其中,所述树是预先根据规则语句构建的;以及
查询意图返回模块,包括:
覆盖与间隔计算单元,用于计算所述规则语句中的分词在所述查询语句中的覆盖度,以及未覆盖所述查询语句的分词在所述查询语句中的间隔度;
阈值判断单元,用于判断所述覆盖度是否满足覆盖度阈值,以及判断所述间隔度是否满足间隔度阈值;以及
意图返回单元,用于当所述覆盖度满足所述覆盖度阈值,以及所述间隔度满足所述间隔度阈值时,返回所述查询语句的查询意图。
8.一种实现意图匹配的终端设备,其特征在于,所述终端设备包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如权利要求1-6中任一所述的意图匹配的方法。
9.一种计算机可读存储介质,其存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6中任一所述的意图匹配的方法。
CN201810712529.4A 2018-06-29 2018-06-29 意图匹配的方法、装置、存储介质和终端设备 Active CN109033075B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810712529.4A CN109033075B (zh) 2018-06-29 2018-06-29 意图匹配的方法、装置、存储介质和终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810712529.4A CN109033075B (zh) 2018-06-29 2018-06-29 意图匹配的方法、装置、存储介质和终端设备

Publications (2)

Publication Number Publication Date
CN109033075A CN109033075A (zh) 2018-12-18
CN109033075B true CN109033075B (zh) 2022-04-15

Family

ID=65522307

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810712529.4A Active CN109033075B (zh) 2018-06-29 2018-06-29 意图匹配的方法、装置、存储介质和终端设备

Country Status (1)

Country Link
CN (1) CN109033075B (zh)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109815314B (zh) * 2019-01-04 2023-08-08 平安科技(深圳)有限公司 一种意图识别方法、识别设备及计算机可读存储介质
CN109918676B (zh) * 2019-03-18 2023-06-27 广东小天才科技有限公司 一种检测意图正则表达式的方法及装置、终端设备
CN110245349B (zh) * 2019-05-21 2023-02-07 武汉数博科技有限责任公司 一种句法依存分析方法、装置及一种电子设备
CN110569342B (zh) * 2019-08-15 2023-04-07 创新先进技术有限公司 问题匹配方法、装置、设备及计算机可读存储介质
CN110737687A (zh) * 2019-09-06 2020-01-31 平安普惠企业管理有限公司 数据查询方法、装置、设备及存储介质
CN113887224B (zh) * 2021-10-19 2024-10-18 京东科技信息技术有限公司 语句意图识别方法、语句应答方法、装置和电子设备
CN116340365B (zh) * 2023-05-17 2023-09-08 北京创新乐知网络技术有限公司 一种缓存数据的匹配方法、匹配装置及终端设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389307A (zh) * 2015-12-02 2016-03-09 上海智臻智能网络科技股份有限公司 语句意图类别识别方法及装置
CN107977415A (zh) * 2017-11-22 2018-05-01 北京寻领科技有限公司 自动问答方法及装置
CN108170859A (zh) * 2018-01-22 2018-06-15 北京百度网讯科技有限公司 语音查询的方法、装置、存储介质及终端设备

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1220155C (zh) * 2000-07-10 2005-09-21 国际商业机器公司 基于对话的信息搜索方法和对话机
US8515966B2 (en) * 2009-01-09 2013-08-20 Ebay Inc. Analyzing queries to generate product intention rules
CN104598445B (zh) * 2013-11-01 2019-05-10 腾讯科技(深圳)有限公司 自动问答系统和方法
GB2529860A (en) * 2014-09-04 2016-03-09 Ibm Method and device for guided keyword-based exploration of data
CN104657439B (zh) * 2015-01-30 2019-12-13 欧阳江 用于自然语言精准检索的结构化查询语句生成系统及方法
CN106528531B (zh) * 2016-10-31 2019-09-03 北京百度网讯科技有限公司 基于人工智能的意图分析方法及装置
CN107679039B (zh) * 2017-10-17 2020-12-29 北京百度网讯科技有限公司 用于确定语句意图的方法和装置
CN108052659B (zh) * 2017-12-28 2022-03-11 北京百度网讯科技有限公司 基于人工智能的搜索方法、装置和电子设备

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105389307A (zh) * 2015-12-02 2016-03-09 上海智臻智能网络科技股份有限公司 语句意图类别识别方法及装置
CN107977415A (zh) * 2017-11-22 2018-05-01 北京寻领科技有限公司 自动问答方法及装置
CN108170859A (zh) * 2018-01-22 2018-06-15 北京百度网讯科技有限公司 语音查询的方法、装置、存储介质及终端设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
一种基于汉语隐喻依存句法树的嵌入式树匹配算法;李剑锋等;《厦门大学学报(自然科学版)》;20080715(第04期);全文 *
基于带约束语义文法的领域相关自然语言理解方法;王东升等;《中文信息学报》;20180215(第02期);全文 *
用户查询意图切分的研究;江雪等;《计算机学报》;20130315(第03期);全文 *

Also Published As

Publication number Publication date
CN109033075A (zh) 2018-12-18

Similar Documents

Publication Publication Date Title
CN109033075B (zh) 意图匹配的方法、装置、存储介质和终端设备
CN109189991B (zh) 重复视频识别方法、装置、终端及计算机可读存储介质
CN108363790B (zh) 用于对评论进行评估的方法、装置、设备和存储介质
JP7150770B2 (ja) 対話方法、装置、コンピュータ可読記憶媒体、及びプログラム
CN108804641B (zh) 一种文本相似度的计算方法、装置、设备和存储介质
CN108829893B (zh) 确定视频标签的方法、装置、存储介质和终端设备
CN106649818B (zh) 应用搜索意图的识别方法、装置、应用搜索方法和服务器
CN111444330A (zh) 提取短文本关键词的方法、装置、设备及存储介质
CN108256044B (zh) 直播间推荐方法、装置及电子设备
CN108846138B (zh) 一种融合答案信息的问题分类模型构建方法、装置和介质
KR20200007969A (ko) 정보 처리 방법, 단말기, 및 컴퓨터 저장 매체
CN109726274A (zh) 问题生成方法、装置及存储介质
CN102081602B (zh) 确定未登录词的类别的方法和设备
CN108681541B (zh) 图片搜索方法、装置及计算机设备
CN109299245B (zh) 知识点召回的方法和装置
CN112256845B (zh) 意图识别方法、装置、电子设备和计算机可读存储介质
CN106446018B (zh) 基于人工智能的查询信息处理方法和装置
CN107943792B (zh) 一种语句分析方法、装置及终端设备、存储介质
CN105069103A (zh) App搜索引擎利用用户评论的方法及系统
CN111967264B (zh) 一种命名实体识别方法
CN109657116A (zh) 一种舆情搜索方法、搜索装置、存储介质和终端设备
CN112199602B (zh) 岗位推荐方法、推荐平台及服务器
CN112926308B (zh) 匹配正文的方法、装置、设备、存储介质以及程序产品
CN112287656B (zh) 文本比对方法、装置、设备和存储介质
CN107862004A (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