CN111597313B - 问答方法、装置、计算机设备和存储介质 - Google Patents

问答方法、装置、计算机设备和存储介质 Download PDF

Info

Publication number
CN111597313B
CN111597313B CN202010268582.7A CN202010268582A CN111597313B CN 111597313 B CN111597313 B CN 111597313B CN 202010268582 A CN202010268582 A CN 202010268582A CN 111597313 B CN111597313 B CN 111597313B
Authority
CN
China
Prior art keywords
knowledge point
question
user
knowledge
candidate
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
CN202010268582.7A
Other languages
English (en)
Other versions
CN111597313A (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.)
Shenzhen Zhuiyi Technology Co Ltd
Original Assignee
Shenzhen Zhuiyi 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 Shenzhen Zhuiyi Technology Co Ltd filed Critical Shenzhen Zhuiyi Technology Co Ltd
Priority to CN202010268582.7A priority Critical patent/CN111597313B/zh
Publication of CN111597313A publication Critical patent/CN111597313A/zh
Application granted granted Critical
Publication of CN111597313B publication Critical patent/CN111597313B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/332Query formulation
    • G06F16/3329Natural language query formulation or dialogue systems
    • 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/338Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/751Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Evolutionary Computation (AREA)
  • Computational Linguistics (AREA)
  • Computing Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Biology (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Manipulator (AREA)

Abstract

本申请涉及一种问答方法、装置、计算机设备和存储介质。所述方法包括:接收输入的用户问句;调用多个场景机器人分别根据所述用户问句进行知识点查找,得到各所述场景机器人查找到的候选知识点;其中,各所述候选知识点存储在各所述场景机器人对应的预设知识点数据库中,各所述候选知识点包括标准问句和答案;对查找到的多个所述候选知识点进行排序,并根据排序结果确定目标知识点;输出所述目标知识点对应的答案。采用本方法能够提高答案的准确率,提升用户使用体验。

Description

问答方法、装置、计算机设备和存储介质
技术领域
本申请涉及人工智能技术领域,特别是涉及一种问答方法、装置、计算机设备和存储介质。
背景技术
随着科技的发展,智能机器人应用于人们工作和生活的各个领域。通常情况下,要求智能机器人同时支持多种业务场景,例如,支持普通问答场景、闲聊场景、资料问答场景、任务办理场景等等。
相关技术中,智能机器人在接收到用户问句后,先通过深度学习模型判断用户问句对应的业务场景,然后调用业务场景对应的场景机器人,由调用的场景机器人查询用户问句对应的答案。
但是,如果深度学习模型对业务场景判断错误,就会出现查询到的答案与用户问句不对应的情况,进而导致用户体验较差。
发明内容
基于此,有必要针对上述技术问题,提供一种能够避免因为业务场景判断错误而得到错误答案的问答方法、装置、计算机设备和存储介质。
一种问答方法,该方法包括:
接收输入的用户问句;
调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
输出目标知识点对应的答案。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点正向模板;上述调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点,包括:
针对各场景机器人,将用户问句与各知识点正向模板进行匹配;
若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点。
在其中一个实施例中,预先设置各知识点正向模板的优先级;在上述将用户问句与各知识点正向模板进行匹配之后,还包括:
若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板;还包括:
针对各场景机器人,将用户问句与各知识点负向模板进行匹配;
若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
在其中一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;还包括:
若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
在其中一个实施例中,预先设置多个拒识正向模板;还包括:
若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;
若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度;
根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点;
若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
在其中一个实施例中,在上述将用户问句与各拒识正向模板进行匹配之后,还包括:
若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
在其中一个实施例中,预先设置多个拒识负向模板;在上述得到第一相似度最高的知识点之后,还包括:
若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;
若用户问句与至少一个拒识负向模板匹配,则将第一相似度最高的知识点确定为候选知识点;
若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
在其中一个实施例中,上述对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点,包括:
计算用户问句与各候选知识点的标准问句之间的第二相似度;
按照第二相似度从高到低对多个候选知识点进行排序;
根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果;
将排序结果中位于第一位的候选知识点确定为目标知识点。
在其中一个实施例中,预先设置各知识点正向模板的优先级;上述根据各候选知识点的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,包括:
若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
在其中一个实施例中,预先设置各场景机器人的优先级,还包括:
若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
在其中一个实施例中,还包括:
预先挂载多个场景机器人;场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
一种问答装置,该装置包括:
用户问句接收模块,用于接收输入的用户问句;
候选知识点查找模块,用于调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
目标知识点确定模块,用于对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
答案输出模块,用于输出目标知识点对应的答案。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点正向模板;
上述候选知识点查找模块,具体用于针对各场景机器人,将用户问句与各知识点正向模板进行匹配;若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点。
在其中一个实施例中,预先设置各知识点正向模板的优先级;
上述候选知识点查找模块,还用于若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板;该装置还包括:
非候选知识点查找模块,用于针对各场景机器人,将用户问句与各知识点负向模板进行匹配;若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
在其中一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;
上述候选知识点查找模块,还用于若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
在其中一个实施例中,预先设置多个拒识正向模板;
上述候选知识点查找模块,还用于若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度;根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点;若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
在其中一个实施例中,上述候选知识点查找模块,还用于若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
在其中一个实施例中,预先设置多个拒识负向模板;
上述候选知识点查找模块,还用于若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;若用户问句与至少一个拒识负向模板匹配,则将第一相似度最高的知识点确定为候选知识点;若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
在其中一个实施例中,上述目标知识点确定模块,具体用于计算用户问句与各候选知识点的标准问句之间的第二相似度;按照第二相似度从高到低对多个候选知识点进行排序;根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果;将排序结果中位于第一位的候选知识点确定为目标知识点。
在其中一个实施例中,预先设置各知识点正向模板的优先级;
上述目标知识点确定模块,还用于若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
在其中一个实施例中,预先设置各场景机器人的优先级;
上述目标知识点确定模块,还用于若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
在其中一个实施例中,该装置还包括:
机器人挂载模块,用于预先挂载多个场景机器人;场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
接收输入的用户问句;
调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
输出目标知识点对应的答案。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
接收输入的用户问句;
调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
输出目标知识点对应的答案。
上述问答方法、装置、计算机设备和存储介质,接收输入的用户问句;调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;输出目标知识点对应的答案。通过本申请实施例,并行调用多个场景机器人,与现有技术中只选取一个场景机器人相比,不仅可以提高答复准确率,提升用户体验;还可以融合多类场景的知识点数据库,使得智能机器人可以根据用户问句自由切换场景,进而提高场景扩展性。
附图说明
图1为一个实施例中问答方法的应用环境图;
图2为一个实施例中问答方法的流程示意图;
图3为一个实施例中查找候选知识点步骤的流程示意图;
图4为一个实施例中确定目标知识点步骤的流程示意图;
图5为另一个实施例中问答方法的流程示意图;
图6为一个实施例中问答装置的结构框图;
图7为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
问答是以一问一答形式,由用户提出问题,由智能机器人为用户解决问题。例如,在普通问答场景下,智能机器人可以根据用户问句查找出相应的答案;在闲聊场景下,智能机器人可以与用户闲聊;在资料问答场景下,智能机器人可以根据用户问句查找出相应的资料;在任务办理场景下,智能机器人可以为用户办理设定任务,比如订餐、订票等。
现有技术中,智能机器人通常会根据用户问句先判断业务场景,再调用业务场景对应的场景机器人为用户解决问题。但是,如果业务场景判断错误,则场景机器人所查找到的答案可能与用户问句不对应,进而导致用户体验差。
本申请实施例中,智能机器人接收输入的用户问句;调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;输出目标知识点对应的答案。通过本申请实施例,并行调用多个场景机器人,不仅可以提高答复准确率,提升用户体验;还可以融合多类场景的知识点数据库,使得智能机器人可以根据用户问句自由切换场景,进而提高场景扩展性。
其中,本申请实施例中的智能机器人,不仅可以作为智能客服,还可以应用到智能音箱、教学辅助、百科问答、行政服务、车用导航问答等场景下。本申请实施例对问答场景不作详细限定,可以根据实际情况进行设置。
本申请提供的问答方法,可以应用于如图1所示的应用环境中。该应用环境中包括终端102和服务器104,采用终端102与用户进行交互,采用服务器104根据用户问句查找答案。其中,终端102与服务器104通过网络进行通信。终端102可以但不限于是各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备,服务器104可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种问答方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
步骤201,接收输入的用户问句。
本申请实施例中,可以先由终端接收用户问句,再由服务器接收终端发送的用户问句。其中,终端接收到的用户问句,可以是语音,也可以是文本。本申请实施例对此不作详细限定,可以根据实际情况进行设置。
步骤202,调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案。
本申请实施例中,预先针对各场景机器人设置知识点数据库,在接收到用户问句后,同时调用多个场景机器人进行知识点查找。具体地,每个场景机器人根据用户问句在各自的预设知识点数据库中进行查找,并查找到多个知识点;然后,对查找到的知识点进行排序,并将位于第一位的知识点作为该场景机器人查找到的候选知识点。各候选知识点可以包括一个标准问句和一个答案,还可以包括多个与标准问句相似的相似问句。本申请实施例对此不作详细限定,可以根据实际情况进行设置。
其中,知识点的查找方式可以包括检索召回方式、业务召回方式中的至少一种。检索召回方式是根据语义相似度进行检索并召回语义相近的知识点,业务召回方式是根据用户问句中的实体召回具有相同实体的知识点。本申请实施例对知识点的查找方式不作详细限定,可以根据实际情况进行设置。
其中,对查找到的知识点进行排序,可以根据知识点的查找方式进行排序。具体地,采用检索召回方式,则按照语义相似度对各知识点进行排序;采用业务召回方式,则按照实体相似度对各知识点进行排序。
并且,排序可以采取两次排序的方式。具体地,先根据相似度进行排序,筛选出相似度较高的一部分知识点;再采用预先训练的排序模型进行对筛选出的知识点进行第二次排序。其中,排序模型可以采用RankNet等深度学习模型,本申请实施例对此不作详细限定,可以根据实际情况进行设置。
步骤203,对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点。
本申请实施例中,在多个场景机器人各自查找得到多个候选知识点之后,对多个候选知识点进行排序。具体地,各候选知识点包括标准问句,计算用户问句和标准问句之间的相似度,按照相似度从高到低的顺序对各候选知识点进行排序。最后,将排在第一位的候选知识点作为目标知识点。还可以采用其他排序方式,本申请实施例对此不作详细限定,可以根据实际情况进行设置。
步骤204,输出目标知识点对应的答案。
本申请实施例中,在确定目标知识点后,服务器向终端输出目标知识点对应的答案。终端在接收到答案后,可以显示答案的文本,也可以播放答案的语音;还可以同时显示答案的文本并播放答案的语音。本申请实施例对此不作详细限定,可以根据实际情况进行设置。
上述问答方法中,接收输入的用户问句;调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;输出目标知识点对应的答案。通过本申请实施例,并行调用多个场景机器人,与现有技术中只选取一个场景机器人相比,不仅可以提高答复准确率,提升用户体验;还可以融合多类场景的知识点数据库,使得智能机器人可以根据用户问句自由切换场景,进而提高场景扩展性。
在一个实施例中,如图3所示,涉及调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点的过程。在上述实施例的基础上,步骤202具体可以包括:
步骤301,针对各场景机器人,将用户问句与各知识点正向模板进行匹配。
本申请实施例中,预先针对预设知识点数据库中的知识点设置知识点正向模板,其中,知识点正向模板用于指示反馈该知识点。对于预设知识点数据库,每个知识点可以设置0-N个知识点正向模板,N为自然数。将用户问句与各知识点正向模板进行匹配,可以采用正则表达式等同方式,也可以采用其他方式,本申请实施例对此不作详细限定,可以根据实际情况进行设置。
步骤302,若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点。
本申请实施例中,如果一个知识点对应的一个知识点正向模板与用户问句匹配,则将该知识点为候选知识点;如果一个知识点对应的多个知识点正向模板均与用户问句匹配,则将该知识点作为候选知识点。
例如,知识点1对应3个知识点正向模板,如果其中1个知识点正向模板与用户问句匹配,则将知识点1作为候选知识点。如果其中2个或3个知识点负向模板均与用户问句匹配,则将知识点1作为候选知识点。
步骤303,若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
本申请实施例中,预先设置各知识点正向模板的优先级。上述步骤302为仅有一个知识点的知识点正向模板与用户问句匹配的情况,如果有多个知识点对应的知识点正向目标均与用户问句匹配,则根据各知识点正向模板的优先级确定优先级最高的知识点正向模板,然后将优先级最高的知识点正向模板对应的知识点作为候选知识点。
例如,预先设置知识点正向模板1、2、3的优先级为高级,知识点正向模板4的优先级为中级;在将用户问句与各知识点正向模板进行匹配后,知识点1对应的知识点正向模板1与用户问句匹配,知识点2对应的知识点正向模板4也与用户问句匹配,则根据预先设置的优先级,可以确定知识点正向模板1的优先级更高,则将知识点正向模板1对应的知识点1作为候选知识点。
在其中一个实施例中,上述步骤202还可以包括:
步骤304,针对各场景机器人,将用户问句与各知识点负向模板进行匹配。
本申请实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板,其中,知识点负向模板用于指示知识点不是候选知识点。对于预设知识点数据库,每个知识点可以设置0-N个知识点负向模板,N为自然数。将用户问句与各知识点负向模板进行匹配,也可以采用正则表达式等同的方式,本申请实施例对此不作详细限定,可以根据实际情况进行设置。
步骤305,若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
本申请实施例中,如果一个知识点对应的一个知识点负向模板与用户问句匹配,则该知识点一定不是候选知识点,即将该知识点作为非候选知识点。如果一个知识点对应的多个知识点负向模板均与用户问句匹配,则该知识点一定不是候选知识点,即将该知识点作为非候选知识点。
例如,知识点10对应3个知识点负向模板,如果其中1个知识点负向模板与用户问句匹配,则将知识点10作为非候选知识点;如果其中2个或3个知识点负向模板均与用户问句匹配,则将知识点10作为非候选知识点。
在其中一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
具体地,在一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配的情况下,如果知识点正向模板的优先级高于知识点负向模板的优先级,则将该知识点确定为候选知识点;如果知识点负向模板的优先级高于知识点正向模板的优先级,则将该知识点确定为非候选知识点。
例如,知识点2对应一个知识点正向模板4和一个知识点负向模板1,用户问句与知识点正向模板4和知识点负向模板1均匹配,当知识点正向模板4的优先级高于知识点负向模板1的优先级时,知识点2为候选知识点;当知识点负向模板1的优先级高于知识点正向模板4的优先级时,知识点2为非候选知识点。
可以理解地,在确定候选知识点时,如果存在多个知识点之间的冲突或者多个模板之间的冲突,根据模板的优先级确定知识点是否为候选知识点。
在其中一个实施例中,上述步骤202还可以包括:
步骤306,若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配。
本申请实施例中,预先设置多个拒识正向模板。其中,拒识正向模板用于指示反馈拒识话术。具体地,当用户问句与各知识点正向模板均不匹配,即根据知识点正向模板无法确定哪一个知识点为候选知识点时,将用户问句与各拒识正向模板匹配,匹配可以采用正则表达式等同的方式。本申请实施例对此不作详细限定,可以根据实际情况进行设置。
步骤307,若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度。
本申请实施例中,如果用户问句与各拒识正向模板均不匹配,表明不对该用户问句做出拒识处理。此时,计算用户问句与各知识点的标准问句之间的第一相似度。具体地,分别确定用户问句和标准问句的文本向量,然后计算两个文本向量之间的距离,比如余弦距离,将计算得到的距离作为用户问句和标准问句之间的第一相似度。本申请实施例对相似度计算方式不作详细限定,可以根据实际情况进行设置。
在其中一个实施例中,若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
具体地,如果用户问句与其中一个拒识正向模板匹配,表明无法识别用户问句,需要对用户问句做出拒识处理。此时,不再计算第一相似度,而是直接反馈拒识话术。本申请实施例对拒识话术不作详细限定,可以根据实际情况进行设置。
可以理解地,在多个场景机器人中,如果一个场景机器人未查找到候选知识点,而其他场景机器人均查找到候选知识点,则不考虑该场景机器人的反馈,而是计算查找到的候选知识点的第一相似度。
步骤308,根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点。
本申请实施例中,在得到用户问句与各标准问句之间的第一相似度之后,按照第一相似度从高到低的顺序对各知识点进行排序,得到第一相似度最高的知识点。
步骤309,若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
本申请实施例中,如果最高的第一相似度大于预设阈值,则表明用户问句与标准问句之间的相似度较高,将该标准问句对应的知识点作为候选知识点。本申请实施例对预设阈值不作详细限定,可以根据实际情况进行设置。
在其中一个实施例中,预先设置多个拒识负向模板;若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;若用户问句与至少一个拒识负向模板匹配,则将第一相似度最高的知识点确定为候选知识点;若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
具体地,如果最高的第一相似度小于或者等于预设阈值,表明用户问句与标准问句之间的相似度不高。在这种情况下,将用户问句与各拒识负向模板匹配,其中,拒识负向模板用于指示不反馈拒识话术。即当用户问句与至少一个拒识负向模板匹配时,表明不能反馈拒识话术,此时即使用户问句与标准问句之间的相似度不高,也将标准问句对应的知识点作为候选知识点。而当用户问句与各拒识负向模板均不匹配时,表明可以反馈拒识话术,此时用户问句与标准问句之间的相似度不高,反馈拒识话术。
在确定候选知识点的过程中,不限于本申请实施例所述的模板,还可以设置匹配实体的词槽模板、用户情绪识别模板、用户满意度检查模板等。
上述调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点的过程中,针对各场景机器人,将用户问句与各知识点正向模板和各知识点负向模板进行匹配,根据与用户问句匹配的知识点正向模板确定候选知识点,根据与用户问句匹配的知识点负向模板确定非候选知识点。如果用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;如果与拒识正向模板匹配,则反馈拒识话术,如果与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度;根据第一相似度确定候选知识点。通过本申请实施例,通过模板和相似度匹配的有机结合,可以快速识别出用户问句的意图识别,使智能机器人具备较强的语义泛化能力。并且,用户问句的文本较短时,使用判断业务场景的深度学习模型效果并不好,而使用模板则可以避免该问题。
在一个实施例中,如图4所示,涉及对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点的过程。在上述实施例的基础上,步骤203具体可以包括:
步骤401,计算用户问句与各候选知识点的标准问句之间的第二相似度。
本申请实施例中,多个场景机器人各自进行知识点查找,得到多个候选知识点。之后,计算用户问句与各候选知识点的标准问句之间的第二相似度。
例如,候选知识点1、2、3、4,计算用户问句与候选知识点1、2、3、4的标准问句之间的第二相似度分别为0.88、0.89、0.83、0.9。本申请实施例对相似度计算方式不作详细限定,可以根据实际情况进行设置。
步骤402,按照第二相似度从高到低对多个候选知识点进行排序。
例如,按照第二相似度对候选知识点进行排序,从高到低依次是候选知识点4、候选知识点2、候选知识点1、候选知识点3。
步骤403,根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果。
本申请实施例中,在根据第二相似度进行第一次排序之后,如果在多个候选知识点中,有一个候选知识点不仅具有对应的知识点正向模板,并且该知识点正向模板与用户问句匹配,则将该候选知识点的位置调高。例如,候选知识点2有对应的知识点正向模板,且知识点正向模板与用户问句匹配,则将候选知识点2的位置调高,得到的排序从高到低依次是候选知识点2、候选知识点4、候选知识点1、候选知识点3。
在其中一个实施例中,预先设置各知识点正向模板的优先级;若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
具体地,在多个候选知识点中,如果不只一个候选知识点有对应的知识点正向模板,并且各知识点正向模板均与用户问句匹配,则根据知识点正向模板的优先级调整排序。
例如,按照第二相似度进行排序,从高到低的顺序依次为候选知识点4、候选知识点2、候选知识点1、候选知识点3。其中,候选知识点1、2和4均有对应的知识点正向模板,并且知识点正向模板均与用户问句匹配,其中,候选知识点2的知识点正向模板优先级最高,候选知识点1和4的知识点正向模板优先级相同,则将候选知识点2的位置调高,则从高到低的顺序变为候选知识点2、候选知识点4、候选知识点1、候选知识点3。
可以理解地,预先设置各知识点正向模板的优先级,可以解决多个候选知识点之间的排序冲突。
在其中一个实施例中,预先设置各场景机器人的优先级,若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
具体地,如果存在多个优先级最高的知识点正向模板,并且这些知识点正向模板对应不同的场景机器人,则根据场景机器人的优先级调整排序。
例如,按照第二相似度进行排序,从高到低依次为候选知识点4、候选知识点2、候选知识点1、候选知识点3。其中,候选知识点1、2和4均有对应的知识点正向模板,并且知识点正向模板均与用户问句匹配,候选知识点2和4的知识点正向模板的优先级最高,并且候选知识点2对应的场景机器人的优先级高于候选知识点4对应的场景机器人的优先级,则将候选知识点2的位置调高,排序从高到低依次为候选知识点2、候选知识点4、候选知识点1、候选知识点3。
可以理解地,预先设置各场景机器人的优先级,可以解决多个候选知识点之间的排序冲突。
步骤404,将排序结果中位于第一位的候选知识点确定为目标知识点。
本申请实施例中,在排序后,将位于第一位的候选知识点确定为目标知识点。例如,最后的排序中,候选知识点2位于第一位,则将候选知识点2确定为目标知识点。
上述对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点的过程中,计算用户问句与各候选知识点的标准问句之间的第二相似度;按照第二相似度从高到低对多个候选知识点进行排序;根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果;将排序结果中位于第一位的候选知识点确定为目标知识点。通过本申请实施例,结合模板和相似度对查找到的候选知识点进行排序,使智能机器人具备较强的语义泛化能力和解释性,从而提高答案的正确率,提升用户使用体验。
在一个实施例中,如图5所示,涉及问答方法的一种可选过程。在上述实施例的基础上,具体可以包括:
步骤501,预先挂载多个场景机器人;场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
本申请实施例中,根据各场景机器人的接口规范,以及服务器可提供的预设知识点数据库,预先挂载多个场景机器人。例如,服务器可提供普通问答场景的预设知识点数据库,并且提供的接口符合普通问答场景机器人的接口规范,则可以挂载普通问答场景机器人。服务器可提供闲聊场景的预设知识点数据库,并且提供的接口符合闲聊场景机器人的接口规范,则可以挂载闲聊场景机器人。本申请实施例对挂载的场景机器人不作详细限定,可以根据实际情况进行设置。
步骤502,接收输入的用户问句。
步骤503,调用多个场景机器人分别根据用户问句进行知识点查找,针对各场景机器人,将用户问句与各知识点正向模板进行匹配;若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点;若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板,针对各场景机器人,将用户问句与各知识点负向模板进行匹配;若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
在其中一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
步骤504,预先设置多个拒识正向模板;若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度。
在其中一个实施例中,若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
步骤505,根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点;若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
在其中一个实施例中,预先设置多个拒识负向模板;若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;若用户问句与至少一个拒识负向模板匹配,则将第一相似度最大的知识点确定为候选知识点;若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
步骤506,计算用户问句与各候选知识点的标准问句之间的第二相似度;按照第二相似度从高到低对多个候选知识点进行排序;根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果。
在其中一个实施例中,预先设置各知识点正向模板的优先级;若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
在其中一个实施例中,预先设置各场景机器人的优先级,若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
其中,场景机器人的优先级可以从高到低依次为:任务办理场景机器人、普通问答场景机器人、资料问答场景机器人、其他场景机器人、闲聊场景机器人。
步骤507,将排序结果中位于第一位的候选知识点确定为目标知识点。
步骤508,输出目标知识点对应的答案。
在其中一个实施例中,各场景机器人均未查找到候选知识点,则反馈拒识话术。服务器还可以根据其他回复强规则直接输入答案。回复强规则包括:多场景切换规则、多轮会话轮次等待规则、超轮次话术回复规则、跨场景的信息继承规则、直答推荐规则等,本申请实施例对此不作详细限定,可以根据实际情况进行设置。
本申请实施例中,接收输入的用户问句;调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;输出目标知识点对应的答案。通过本申请实施例,并行调用多个场景机器人,不仅可以提高答复准确率,提升用户体验;还可以融合多类场景的知识点数据库,使得智能机器人可以根据用户问句自由切换场景,进而提高场景扩展性。进一步地,在各场景机器人查找候选知识点时,和在对候选知识点进行排序时,均采用模板和相似度结合的方式,不仅可以快速识别出用户问句的意图识别,还使智能机器人具备较强的语义泛化能力。
应该理解的是,虽然图2-图5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图6所示,提供了一种问答装置,包括:
用户问句接收模块601,用于接收输入的用户问句;
候选知识点查找模块602,用于调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
目标知识点确定模块603,用于对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
答案输出模块604,用于输出目标知识点对应的答案。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点正向模板;
上述候选知识点查找模块602,具体用于针对各场景机器人,将用户问句与各知识点正向模板进行匹配;若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点。
在其中一个实施例中,预先设置各知识点正向模板的优先级;
上述候选知识点查找模块602,还用于若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
在其中一个实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板;该装置还包括:
非候选知识点查找模块,用于针对各场景机器人,将用户问句与各知识点负向模板进行匹配;若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
在其中一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;
上述候选知识点查找模块602,还用于若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
在其中一个实施例中,预先设置多个拒识正向模板;
上述候选知识点查找模块602,还用于若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度;根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点;若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
在其中一个实施例中,上述候选知识点查找模块602,还用于若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
在其中一个实施例中,预先设置多个拒识负向模板;
上述候选知识点查找模块602,还用于若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;若用户问句与至少一个拒识负向模板匹配,则将第一相似度最高的知识点确定为候选知识点;若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
在其中一个实施例中,上述目标知识点确定模块603,具体用于计算用户问句与各候选知识点的标准问句之间的第二相似度;按照第二相似度从高到低对多个候选知识点进行排序;根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果;将排序结果中位于第一位的候选知识点确定为目标知识点。
在其中一个实施例中,预先设置各知识点正向模板的优先级;
上述目标知识点确定模块603,还用于若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
在其中一个实施例中,预先设置各场景机器人的优先级;
上述目标知识点确定模块603,还用于若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
在其中一个实施例中,该装置还包括:
机器人挂载模块,用于预先挂载多个场景机器人;场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
关于问答装置的具体限定可以参见上文中对于问答方法的限定,在此不再赘述。上述问答装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图7所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储问答数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种问答方法。
本领域技术人员可以理解,图7中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
接收输入的用户问句;
调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
输出目标知识点对应的答案。
在一个实施例中,预先针对预设知识点数据库中的知识点设置知识点正向模板;处理器执行计算机程序时还实现以下步骤:
针对各场景机器人,将用户问句与各知识点正向模板进行匹配;
若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点。
在一个实施例中,预先设置各知识点正向模板的优先级;处理器执行计算机程序时还实现以下步骤:
若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
在一个实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板;处理器执行计算机程序时还实现以下步骤:
针对各场景机器人,将用户问句与各知识点负向模板进行匹配;
若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
在一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;处理器执行计算机程序时还实现以下步骤:
若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
在一个实施例中,预先设置多个拒识正向模板;处理器执行计算机程序时还实现以下步骤:
若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;
若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度;
根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点;
若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
在一个实施例中,预先设置多个拒识负向模板;处理器执行计算机程序时还实现以下步骤:
若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;
若用户问句与至少一个拒识负向模板匹配,则将第一相似度最高的知识点确定为候选知识点;
若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
计算用户问句与各候选知识点的标准问句之间的第二相似度;
按照第二相似度从高到低对多个候选知识点进行排序;
根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果;
将排序结果中位于第一位的候选知识点确定为目标知识点。
在一个实施例中,预先设置各知识点正向模板的优先级;处理器执行计算机程序时还实现以下步骤:
若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
在一个实施例中,预先设置各场景机器人的优先级,处理器执行计算机程序时还实现以下步骤:
若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
在一个实施例中,处理器执行计算机程序时还实现以下步骤:
预先挂载多个场景机器人;场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
接收输入的用户问句;
调用多个场景机器人分别根据用户问句进行知识点查找,得到各场景机器人查找到的候选知识点;其中,各候选知识点存储在各场景机器人对应的预设知识点数据库中,各候选知识点包括标准问句和答案;
对查找到的多个候选知识点进行排序,并根据排序结果确定目标知识点;
输出目标知识点对应的答案。
在一个实施例中,预先针对预设知识点数据库中的知识点设置知识点正向模板;计算机程序被处理器执行时还实现以下步骤:
针对各场景机器人,将用户问句与各知识点正向模板进行匹配;
若一个知识点对应的知识点正向模板与用户问句匹配,则将匹配到的知识点作为候选知识点。
在一个实施例中,预先设置各知识点正向模板的优先级;计算机程序被处理器执行时还实现以下步骤:
若多个知识点对应的知识点正向模板均与用户问句匹配,则按照各知识点正向模板的优先级从多个匹配到的知识点中选取出候选知识点。
在一个实施例中,预先针对预设知识点数据库中的知识点设置知识点负向模板;计算机程序被处理器执行时还实现以下步骤:
针对各场景机器人,将用户问句与各知识点负向模板进行匹配;
若一个知识点对应的知识点负向模板与用户问句匹配,则将匹配到的知识点确定为非候选知识点。
在一个实施例中,预先设置各知识点正向模板和各知识点负向模板的优先级;计算机程序被处理器执行时还实现以下步骤:
若一个知识点对应的知识点正向模板和知识点负向模板均与用户问句匹配,则根据知识点正向模板的优先级和知识点负向模板的优先级,确定匹配到的知识点是否为候选知识点。
在一个实施例中,预先设置多个拒识正向模板;计算机程序被处理器执行时还实现以下步骤:
若用户问句与各知识点正向模板均不匹配,则将用户问句与各拒识正向模板进行匹配;
若用户问句与各拒识正向模板均不匹配,则计算用户问句与预设知识点数据库中各知识点的标准问句之间的第一相似度;
根据第一相似度对预设知识点数据库中的各知识点进行排序,得到第一相似度最高的知识点;
若最高的第一相似度大于预设阈值,则将第一相似度最高的知识点确定为候选知识点。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
若用户问句与至少一个拒识正向模板匹配,则反馈拒识话术。
在一个实施例中,预先设置多个拒识负向模板;计算机程序被处理器执行时还实现以下步骤:
若最高的第一相似度小于或等于预设阈值,则将用户问句与各拒识负向模板进行匹配;
若用户问句与至少一个拒识负向模板匹配,则将第一相似度最高的知识点确定为候选知识点;
若用户问句与各拒识负向模板均不匹配,则反馈拒识话术。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
计算用户问句与各候选知识点的标准问句之间的第二相似度;
按照第二相似度从高到低对多个候选知识点进行排序;
根据各候选知识点对应的知识点正向模板是否与用户问句匹配,调整多个候选知识点的排序,得到排序结果;
将排序结果中位于第一位的候选知识点确定为目标知识点。
在一个实施例中,预先设置各知识点正向模板的优先级;计算机程序被处理器执行时还实现以下步骤:
若多个候选知识点对应的知识点正向模板均与用户问句匹配,则根据各知识点正向模板的优先级调整多个候选知识点的排序。
在一个实施例中,预先设置各场景机器人的优先级,计算机程序被处理器执行时还实现以下步骤:
若与用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各场景机器人的优先级调整多个候选知识点的排序。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
预先挂载多个场景机器人;场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-Only Memory,ROM)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic Random Access Memory,DRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (14)

1.一种问答方法,其特征在于,所述方法包括:
接收输入的用户问句;
调用多个场景机器人分别根据所述用户问句进行知识点查找,得到各所述场景机器人查找到的候选知识点;其中,各所述候选知识点存储在各所述场景机器人对应的预设知识点数据库中,各所述候选知识点包括标准问句和答案;
对查找到的多个所述候选知识点进行排序,并根据排序结果确定目标知识点;
输出所述目标知识点对应的答案;
其中,预先针对所述预设知识点数据库中的知识点设置多个知识点正向模板、多个拒识正向模板和多个拒识负向模板;所述调用多个场景机器人分别根据所述用户问句进行知识点查找,得到各所述场景机器人查找到的候选知识点,包括:
针对各所述场景机器人,将所述用户问句与各所述知识点正向模板进行匹配;
若所述用户问句与各所述知识点正向模板均不匹配,则将所述用户问句与各所述拒识正向模板进行匹配;
若所述用户问句与各所述拒识正向模板均不匹配,则计算所述用户问句与所述预设知识点数据库中各知识点的标准问句之间的第一相似度;
根据所述第一相似度对所述预设知识点数据库中的各知识点进行排序,得到所述第一相似度最高的知识点;
若最高的第一相似度小于或等于预设阈值,则将所述用户问句与各所述拒识负向模板进行匹配;
若所述用户问句与至少一个所述拒识负向模板匹配,则将所述第一相似度最高的知识点确定为所述候选知识点。
2.根据权利要求1所述的方法,其特征在于,在所述针对各所述场景机器人,将所述用户问句与各所述知识点正向模板进行匹配之后,还包括:
若一个知识点对应的知识点正向模板与所述用户问句匹配,则将匹配到的知识点作为所述候选知识点。
3.根据权利要求2所述的方法,其特征在于,预先设置各所述知识点正向模板的优先级;在所述将所述用户问句与各所述知识点正向模板进行匹配之后,还包括:
若多个知识点对应的知识点正向模板均与所述用户问句匹配,则按照各所述知识点正向模板的优先级从多个匹配到的知识点中选取出所述候选知识点。
4.根据权利要求2所述的方法,其特征在于,预先针对所述预设知识点数据库中的知识点设置知识点负向模板;还包括:
针对各所述场景机器人,将所述用户问句与各所述知识点负向模板进行匹配;
若一个知识点对应的知识点负向模板与所述用户问句匹配,则将匹配到的知识点确定为非候选知识点。
5.根据权利要求4所述的方法,其特征在于,预先设置各所述知识点正向模板和各所述知识点负向模板的优先级;还包括:
若一个知识点对应的知识点正向模板和知识点负向模板均与所述用户问句匹配,则根据所述知识点正向模板的优先级和所述知识点负向模板的优先级,确定匹配到的知识点是否为所述候选知识点。
6.根据权利要求1所述的方法,其特征在于,在所述根据所述第一相似度对所述预设知识点数据库中的各知识点进行排序,得到所述第一相似度最高的知识点之后,还包括:
若所述最高的第一相似度大于所述预设阈值,则将所述第一相似度最高的知识点确定为所述候选知识点。
7.根据权利要求1所述的方法,其特征在于,在所述将所述用户问句与各所述拒识正向模板进行匹配之后,还包括:
若所述用户问句与至少一个所述拒识正向模板匹配,则反馈拒识话术。
8.根据权利要求1所述的方法,其特征在于,所述对查找到的多个所述候选知识点进行排序,并根据排序结果确定目标知识点,包括:
计算所述用户问句与各所述候选知识点的标准问句之间的第二相似度;
按照所述第二相似度从高到低对多个所述候选知识点进行排序;
根据各所述候选知识点对应的知识点正向模板是否与所述用户问句匹配,调整多个所述候选知识点的排序,得到所述排序结果;
将所述排序结果中位于第一位的候选知识点确定为所述目标知识点。
9.根据权利要求8所述的方法,其特征在于,预先设置各所述知识点正向模板的优先级;所述根据各所述候选知识点的知识点正向模板是否与所述用户问句匹配,调整多个所述候选知识点的排序,包括:
若多个所述候选知识点对应的知识点正向模板均与所述用户问句匹配,则根据各所述知识点正向模板的优先级调整多个所述候选知识点的排序。
10.根据权利要求9所述的方法,其特征在于,预先设置各所述场景机器人的优先级,还包括:
若与所述用户问句匹配的知识点正向模板中,多个优先级最高的知识点正向模板对应不同的场景机器人,则根据各所述场景机器人的优先级调整多个所述候选知识点的排序。
11.根据权利要求1所述的方法,其特征在于,还包括:
预先挂载多个所述场景机器人;所述场景机器人包括普通问答场景机器人、闲聊场景机器人、资料问答场景机器人、任务办理场景机器人中的至少一种。
12.一种问答装置,其特征在于,所述装置包括:
用户问句接收模块,用于接收输入的用户问句;
候选知识点查找模块,用于调用多个场景机器人分别根据所述用户问句进行知识点查找,得到各所述场景机器人查找到的候选知识点;其中,各所述候选知识点存储在各所述场景机器人对应的预设知识点数据库中,各所述候选知识点包括标准问句和答案;
目标知识点确定模块,用于对查找到的多个所述候选知识点进行排序,并根据排序结果确定目标知识点;
答案输出模块,用于输出所述目标知识点对应的答案;
其中,预先针对所述预设知识点数据库中的知识点设置多个知识点正向模板、多个拒识正向模板和多个拒识负向模板;所述候选知识点查找模块,还用于针对各所述场景机器人,将所述用户问句与各所述知识点正向模板进行匹配;若所述用户问句与各所述知识点正向模板均不匹配,则将所述用户问句与各所述拒识正向模板进行匹配;若所述用户问句与各所述拒识正向模板均不匹配,则计算所述用户问句与所述预设知识点数据库中各知识点的标准问句之间的第一相似度;根据所述第一相似度对所述预设知识点数据库中的各知识点进行排序,得到所述第一相似度最高的知识点;若所述最高的第一相似度小于或等于预设阈值,则将所述用户问句与各所述拒识负向模板进行匹配;若所述用户问句与至少一个所述拒识负向模板匹配,则将所述第一相似度最高的知识点确定为所述候选知识点。
13.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至11中任一项所述方法的步骤。
14.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至11中任一项所述的方法的步骤。
CN202010268582.7A 2020-04-07 2020-04-07 问答方法、装置、计算机设备和存储介质 Active CN111597313B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010268582.7A CN111597313B (zh) 2020-04-07 2020-04-07 问答方法、装置、计算机设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010268582.7A CN111597313B (zh) 2020-04-07 2020-04-07 问答方法、装置、计算机设备和存储介质

Publications (2)

Publication Number Publication Date
CN111597313A CN111597313A (zh) 2020-08-28
CN111597313B true CN111597313B (zh) 2021-03-16

Family

ID=72187415

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010268582.7A Active CN111597313B (zh) 2020-04-07 2020-04-07 问答方法、装置、计算机设备和存储介质

Country Status (1)

Country Link
CN (1) CN111597313B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112507097B (zh) * 2020-12-17 2022-11-18 神思电子技术股份有限公司 一种提高问答系统泛化能力的方法
CN113127621A (zh) * 2021-04-28 2021-07-16 平安国际智慧城市科技股份有限公司 对话模块的推送方法、装置、设备及存储介质
CN113515605B (zh) * 2021-05-20 2023-12-19 中晨田润实业有限公司 基于人工智能的智能机器人问答方法和智能机器人
CN113836287A (zh) * 2021-10-11 2021-12-24 深圳追一科技有限公司 问答结果的确定方法、装置、计算机设备及存储介质
CN116089589B (zh) * 2023-02-10 2023-08-29 阿里巴巴达摩院(杭州)科技有限公司 问句生成方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729424A (zh) * 2013-12-20 2014-04-16 百度在线网络技术(北京)有限公司 问答社区内回答评价方法和系统
CN107688608A (zh) * 2017-07-28 2018-02-13 合肥美的智能科技有限公司 智能语音问答方法、装置、计算机设备和可读存储介质
CN110309286A (zh) * 2019-07-04 2019-10-08 深圳市和合信诺大数据科技有限公司 提高双向注意力机器学习模型应答能力的方法及装置

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7822732B2 (en) * 2007-08-13 2010-10-26 Chandra Bodapati Method and system to enable domain specific search
CN104216913B (zh) * 2013-06-04 2019-01-04 Sap欧洲公司 问题回答方法、系统和计算机可读介质
KR102402511B1 (ko) * 2015-02-03 2022-05-27 삼성전자주식회사 영상 검색 방법 및 이를 위한 장치
US9946785B2 (en) * 2015-03-23 2018-04-17 International Business Machines Corporation Searching code based on learned programming construct patterns and NLP similarity
CN108109616A (zh) * 2016-11-25 2018-06-01 松下知识产权经营株式会社 信息处理方法、信息处理装置以及程序
CN107797984B (zh) * 2017-09-11 2021-05-14 远光软件股份有限公司 智能交互方法、设备及存储介质
CN109582798A (zh) * 2017-09-29 2019-04-05 阿里巴巴集团控股有限公司 自动问答方法、系统及设备
CN110019727A (zh) * 2017-12-25 2019-07-16 上海智臻智能网络科技股份有限公司 智能交互方法、装置、终端设备以及存储介质
CN110019729B (zh) * 2017-12-25 2024-03-15 上海智臻智能网络科技股份有限公司 智能问答方法及存储介质、终端
CN110209793A (zh) * 2019-06-18 2019-09-06 佰聆数据股份有限公司 一种用于智能识别文本语义的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103729424A (zh) * 2013-12-20 2014-04-16 百度在线网络技术(北京)有限公司 问答社区内回答评价方法和系统
CN107688608A (zh) * 2017-07-28 2018-02-13 合肥美的智能科技有限公司 智能语音问答方法、装置、计算机设备和可读存储介质
CN110309286A (zh) * 2019-07-04 2019-10-08 深圳市和合信诺大数据科技有限公司 提高双向注意力机器学习模型应答能力的方法及装置

Also Published As

Publication number Publication date
CN111597313A (zh) 2020-08-28

Similar Documents

Publication Publication Date Title
CN111597313B (zh) 问答方法、装置、计算机设备和存储介质
CN108153876B (zh) 智能问答方法及系统
WO2020177282A1 (zh) 一种机器对话方法、装置、计算机设备及存储介质
CN110444199B (zh) 一种语音关键词识别方法、装置、终端及服务器
US20200312324A1 (en) Hybrid arbitration System
KR102133825B1 (ko) 단어자질을 강화한 음성 대화 방법 및 시스템
CN110909145B (zh) 针对多任务模型的训练方法及装置
US11113335B2 (en) Dialogue system and computer program therefor
US20210234814A1 (en) Human-machine interaction
WO2020155619A1 (zh) 带情感的机器聊天方法、装置、计算机设备及存储介质
CN111199149B (zh) 一种对话系统的语句智能澄清方法及系统
CN112463949B (zh) 数据召回方法与系统、交互方法及交互系统
CN111460120A (zh) 一种对话管理方法、装置、设备及存储介质
CN112101042A (zh) 文本情绪识别方法、装置、终端设备和存储介质
CN113064980A (zh) 一种智能问答方法、装置、计算机设备及存储介质
KR20190075277A (ko) 콘텐트 검색을 위한 방법 및 그 전자 장치
CN112528004A (zh) 语音交互方法、装置、电子设备、介质和计算机程序产品
CN112380421A (zh) 简历的搜索方法、装置、电子设备及计算机存储介质
CN112163074A (zh) 用户意图识别方法、装置、可读存储介质及电子设备
CN117122927A (zh) Npc交互方法、装置及存储介质
CN112597292B (zh) 问题回复推荐方法、装置、计算机设备和存储介质
CN113643046B (zh) 适用于虚拟现实的共情策略推荐方法、装置、设备及介质
CN110517672B (zh) 用户意图识别方法、用户指令执行方法、系统及设备
CN110674276A (zh) 机器人自学习方法、机器人终端、装置及可读存储介质
CN117708309A (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