CN111444329B - 智能对话方法、装置和电子设备 - Google Patents
智能对话方法、装置和电子设备 Download PDFInfo
- Publication number
- CN111444329B CN111444329B CN202010533383.4A CN202010533383A CN111444329B CN 111444329 B CN111444329 B CN 111444329B CN 202010533383 A CN202010533383 A CN 202010533383A CN 111444329 B CN111444329 B CN 111444329B
- Authority
- CN
- China
- Prior art keywords
- sentence
- answer
- question
- vector
- dialogue
- 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
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/33—Querying
- G06F16/332—Query formulation
- G06F16/3329—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Life Sciences & Earth Sciences (AREA)
- Computational Linguistics (AREA)
- Evolutionary Computation (AREA)
- Computing Systems (AREA)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Human Computer Interaction (AREA)
- Databases & Information Systems (AREA)
- Machine Translation (AREA)
Abstract
本说明书提出了一种智能对话方法、装置和电子设备,其中,上述方法包括:获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句;分别将每条所述回答语句和与所述当前用户对应的历史对话语句进行组合,得到对应的多个对话语句序列;将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列对应的置信度,根据所述置信度获得最终的回答语句。通过上述方法可以实现智能的对话,由此可以减少对人工标注数据的依赖,提高对话的效率,提升用户体验。
Description
技术领域
本说明书涉及人工智能技术领域,尤其涉及一种智能对话方法、装置和电子设备。
背景技术
人工智能(Artificial Intelligence;以下简称:AI),是目前研究和开发用于模拟、延伸以及扩展人类智能的一门新兴科学技术。其中,AI的主要研究目标是使机器能够胜任一些通常需要人类智能才能完成的复杂工作,比如时下出现的智能对话系统便是AI技术的一个实际应用。
发明内容
本说明书实施例提供了一种智能对话方法、装置和电子设备,以实现云客服场景下的智能对话,由此可以提高对用户问题的识别,从而提高对用户问题回答的准确度,提升用户体验。
第一方面,本说明书实施例提供一种智能对话方法,包括:
获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句;
分别将每条所述回答语句和与所述当前用户对应的历史对话语句进行组合,得到对应的多个对话语句序列;
将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列对应的置信度,根据所述置信度获得最终的回答语句。
其中一种可能的实现方式中,所述将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列对应的置信度包括:
将所述对话语句序列输入至预置输出模型进行向量转换,得到每个所述对话语句序列的向量;
将每个所述对话语句序列的向量进行归一化计算,得到每个所述向量对应的置信度。
其中一种可能的实现方式中,所述分别将每条所述回答语句和与所述当前用户对应的历史对话语句进行组合,得到对应的多个对话语句序列包括:
分别将每条所述回答语句与所述提问语句进行组合,得到对应的多个对话语句组;
分别将每个所述对话语句组与第一目标对话语句序列进行组合,得到对应的多个对话语句序列,其中,所述第一目标对话语句序列包括至少一个与所述当前用户对应的历史对话语句组。
其中一种可能的实现方式中,所述根据所述置信度获得最终的回答语句之后,还包括:
根据所述最终的回答语句在所述对话语句序列中进行查询,以得到第二目标对话语句序列。
其中一种可能的实现方式中,所述将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句包括:
将所述提问语句在任一所述预置问答模型中进行向量转换,得到所述提问语句的向量;
根据所述提问语句的向量在目标向量索引中进行查询,得到对应的目标向量簇;
根据所述目标向量簇进行计算,得到与所述预置问答模型对应的回答语句。
其中一种可能的实现方式中,所述根据所述置信度获得最终的回答语句之后,还包括:
获取监督数据,其中,所述监督数据与所述最终回答语句对应;
根据所述监督数据与所述最终回答语句对所述预置输出模型进行训练。
上述智能对话方法中,将用户的提问语句输入多个问答模型,获得对应的多个回答语句,将上述多个回答语句分别与历史对话语句进行组合,获得多个对话语句序列,根据该对话语句序列计算各序列对应的概率值,由此获得最终的回答语句,可以实现实现云客服场景下的智能对话,由此可以提高对用户问题的识别,从而提高对用户问题回答的准确度,提升用户体验。
第二方面,本说明书实施例提供一种智能对话装置,包括:
获取模块,用于获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句;
组合模块,用于分别将每条所述回答语句和与所述当前用户对应的历史对话语句进行组合,得到对应的多个对话语句序列;
输出模块,用于将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列对应的置信度,根据所述置信度获得最终的回答语句。
其中一种可能的实现方式中,所述输出模块包括:
转换单元,用于将所述对话语句序列输入至预置输出模型进行向量转换,得到每个所述对话语句序列的向量;
计算单元,用于将每个所述对话语句序列的向量进行归一化计算,得到每个所述向量对应的置信度。
其中一种可能的实现方式中,所述组合模块包括:
第一组合单元,用于分别将每条所述回答语句与所述提问语句进行组合,得到对应的多个对话语句组;
第二组合单元,用于分别将每个所述对话语句组与第一目标对话语句序列进行组合,得到对应的多个对话语句序列,其中,所述第一目标对话语句序列包括至少一个与所述当前用户对应的历史对话语句组。
其中一种可能的实现方式中,所述装置还包括:
查询模块,用于根据所述最终的回答语句在所述对话语句序列中进行查询,得到第二目标对话语句序列。
其中一种可能的实现方式中,所述获取模块包括:
转换单元,用于将所述提问语句在任一所述预置问答模型中进行向量转换,得到所述提问语句的向量;
查询单元,用于根据所述提问语句的向量在目标向量索引中进行查询,得到对应的目标向量簇;
计算单元,用于根据所述目标向量簇进行计算,得到与所述预置问答模型对应的回答语句。
其中一种可能的实现方式中,所述装置还包括:
训练模块,用于获取监督数据,其中,所述监督数据与所述最终回答语句对应;根据所述监督数据与所述最终回答语句对所述预置输出模型进行训练。
第三方面,本说明书实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行第一方面提供的方法。
第四方面,本说明书实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,当所述计算机指令在计算机上运行时,所述计算机指令使所述计算机执行第一方面提供的方法。
应当理解的是,本说明书的第二~第四方面与本说明书的第一方面的技术方案一致,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
为了更清楚地说明本说明书实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本说明书智能对话方法一个实施例的流程图;
图2为本说明书对话语句序列向量计算一个实施例的示意图;
图3为本说明书智能对话装置一个实施例的结构示意图;
图4为本说明书智能对话装置另一个实施例的结构示意图;
图5为本说明书智能对话装置再一个实施例的结构示意图;
图6为本说明书电子设备一个实施例的结构示意图。
具体实施方式
为了更好的理解本说明书的技术方案,下面结合附图对本说明书实施例进行详细描述。
应当明确,所描述的实施例仅仅是本说明书一部分实施例,而不是全部的实施例。基于本说明书中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本说明书保护的范围。
在本说明书实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。
目前,智能对话系统在接收到用户发起的问话后,可以自动对该问话进行回答,在这一来一往的发起对话与回复对话的交互过程中,便形成了人与机器之间的对话式交互。然而,目前的智能对话系统在进行智能回答前需要人工标注与对话相关的数据;此外,该系统在自动生成相应的对话时,只考虑了用户当前的问题,没有根据上下文语义环境,由此导致在多轮对话中对用户问题的识别准确度会大幅下降
其中,在人与机器的对话式交互中,机器需要识别出用户的问题,然后根据该问题选取最相关的回答,从而达到相互沟通的效果,现有相关技术中,机器会通过多个问答模型获取多个相关的回答,然后在这多个回答中选取一个最接近的回答,然而,在选取过程中,由于每个问答模型都只针对用户当前的提问生成相应的回答,没有考虑用户的上下文,因此选取的结果并不一定是最优的。
在本说明书实施例中,机器可以为能够与用户进行智能对话的设备,例如:云服务器,本说明书实施例对上述机器的具体形式不作限定。
图1为本说明书智能对话方法一个实施例的流程图,如图1所示,上述智能对话方法可以包括:
步骤101,获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句。
具体地,该提问语句可以是当前用户输入的问题,该问题可以是几个词组或短语,也可以是一句话;在检测到用户输入问题之后,可将该问题输入至多个预置的问答模型,由此可以得到对应的多条回答语句。
其中,一个问答模型对本次用户的问题可以生成一条回答语句,因此多个问答模型可以生成多条回答语句。
可选地,该预置问答模型可以基于分层可导航小世界图(Hierarchcal NavigableSmall World,HNSW)向量索引,也可以基于字词的索引;其中,HNSW可以首先将历史对话集合进行存储;该历史对话集合可以从该用户和客服的对话历史中获取,该历史对话集合可以包括多条历史对话,每一条历史对话包括一条提问语句与一条回答语句,例如,该历史对话可以通过以下形式标识:
<Q1,A1>,<Q2,A2>,<Q3,A3>,...
其中,Q用于标识用户的提问语句,A用于标识回答语句;然后对所有的提问语句Q进行HNSW向量索引的建立,用以后续的搜索召回,即当输入任一问题Q’时,将该Q’进行向量转换,以得到Q’向量,接着根据该Q’向量在历史问题Q的HNSW向量进行查询,以得到与当前问题Q’最相似的问题Q’’,最后根据该最相似问题Q’’对应的回答语句获得当前问题Q’的最终回答语句。通过HNSW向量索引,可以不依赖于词权重及同义词等数据,有利于通过监督数据进行训练优化,由此使得获得的回答语句更精准。
进一步地,在对提问语句Q进行HNSW向量索引的建立时,可以通过基于变换的双向编码器表征(Bidirectional Encoder Representations from Transformers,BERT)模型进行向量的计算,以得到每个提问语句的向量;然后可以对该向量进行聚类,以得到该向量的类簇,其中,聚类方式可以采用具有噪声的基于密度的聚类方法(Density-BasedSpatial Clustering of Applications with Noise,DBSCAN),在具体实现时,可以将多个提问语句的向量均值作为类簇中心,并将该类簇中心加入HNSW索引中;这样,在对任一问题Q’的向量进行索引查询时,可以在HNSW索引中查询获得类簇中心,然后根据该类簇中心获得与该类簇中心相关的所有向量,并进行进一步计算,以得到最相似的问题Q’’,并由此得到当前问题Q’的最终回答。
可选地,该预置问答模型还可以是基于深度学习的问答模型,例如,循环神经网络(Recurrent Neural Network, RNN)模型;通过将用户与客服的历史对话数据作为训练数据,对该问答模型进行监督训练,由此获得最终的问答模型,该问答模型可以将用户输入的提问语句进行编码后计算,以获得对应的向量,并将该向量输入至解码器中进行计算,以获得最终的回答语句。
应理解,该多个问答模型中,可以包括基于向量索引的问答模型,可以包括基于深度学习的问答模型,也可以包括其它类型的问答模型,也可以包括任意模型的组合,本说明书实施例对此不作限定。
步骤102,分别将每条所述回答语句和与所述当前用户对应的历史对话语句进行组合,得到对应的多个对话语句序列。
具体地,该历史对话语句可以包括历史生成的该用户的提问语句与最终输出的回答语句,其中,任一句用户的历史提问语句与对应的最终回答语句可以是一组历史对话,该历史对话语句可以包括至少一组对话。
在具体实现时,根据用户当前的提问语句获得最终输出的回答语句后,可以将当前得到的最终回答语句和该用户的提问语句进行组合,以得到一次历史对话,并将该次历史对话进行存储;然而由于该用户可能在一轮对话中会触发多次对话,即用户可能有多个问题想问,因此在用户完成多次对话后,会生成多个对话,因此对话语句集合S可以通过以下形式进行标识:
S={<Q1,A1><Q2,A2><Q3,A3>...};
其中,Q为用户提问语句,A为最终的回答语句。
应理解,对话语句集合S可以是多组对话的集合;在实际应用中,可以将该用户的所有对话进行存储,即不限于一轮对话,例如,可以是几轮对话的集合,其中,一轮对话可以包括连续的多次对话;由于多轮对话之间可能有时间间隔,例如,当天可能发生多轮对话,也有可能几天发生多轮对话;因此,也可以设定时间间隔,即可以存储预设时间间隔内的对话,例如,可以存储一天内的所有对话;也可以存储一定长度的对话,例如,可以存储N组对话,当达到N组对话后,可将最新的一组对话覆盖最先存储的一组对话,本实施例对此不作限定。
进一步地,在生成对话语句集合S的过程中,可以将每一组对话语句按时间顺序进行排列并进行存储,由此得到有序的对话语句序列,即第一目标对话语句序列。以m次对话为例,假设用户进行了m-1次对话,获得了m-1组对话语句,即m-1条提问语句,分别为Q1、Q2、Q3、...、Qm-1,及m-1条回答语句,分别为A1、A2、A3、...、Am-1;则可以依次将该m-1组对话语句按照时间顺序进行排序,以组成有序对话语句序列Sm-1(第一目标对话语句序列);
Sm-1={<Q1,A1><Q2,A2><Q3,A3>...<Qm-1,Am-1>};
当进行到第m次对话时,根据当前的问题Qm可获得对应的回答Am;这时可以将该Qm和Am组成新的对话语句组,并与原来的对话语句序列Sm-1组成新的对话语句序列Sm,即第二目标对话语句序列;
Sm={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am>}。
进一步地,由于在任一次对话中存在多个问答模型,可以根据用户的提问语句生成多个回答语句,因此,最终生成的对话语句序列与问答模型的数量对应,即与回答语句的数量对应;以三个问答模型为例,分别根据用户的提问语句Qm,可以得到对应的回答语句Am 1、Am 2、Am 2,则可以根据上述提问语句及回答语句分别组成对应的对话对话语句组<Qm,Am 1><Qm,Am 2><Qm,Am 3>;并分别和原对话语句序列进行组合后,可以分别获得Sm 1,Sm 2,Sm 3;
Sm 1={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am 1>};
Sm 2={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am 2>};
Sm 3={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am 3>}。
步骤103,将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列对应的置信度,根据所述置信度获得最终的回答语句。
具体地,在获取到多个对话语句序列后,可以将该多个对话语句序列输入至预置输出模型进行计算,其中,该输出模型可以是BERT模型,也可以是卷积神经网络(Convolutional Neural Networks ,CNN)模型或RNN模型;通过该BERT模型的计算,可以获得每个对话语句序列的向量,然后可以将该向量输入至BERT模型的softmax层进行计算,得到每个向量对应的概率值,如图2所示。
可选地,在获取到每个向量对应的概率值后,可以对该概率值进行排序,并选取最高的概率值对应的对话语句序列,并在该对应对话语句序列中获得最终的回答语句。
进一步地,当确定最终的回答语句之后,还可以将该最终的回答语句与第一目标对话语句进行组合,以得到第二目标对话语句序列,以三个问答模型为例,假设第一目标对话语句序列是Sm-1={<Q1,A1><Q2,A2><Q3,A3>...<Qm-1,Am-1>},通过问答模型后获得三个对话语句序列,分别是:
Sm 1={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am 1>};
Sm 2={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am 2>};
Sm 3={<Q1,A1><Q2,A2><Q3,A3>...<Qm,Am 3>};
并最终选取Am 3为最终的回答语句,这样Sm 3则为第二目标对话语句序列,该第二目标对话语句序列可以作为下次对话中的原始目标对话序列,并可以和下一个最终的回答语句进行组合,以组成下一个目标对话语句序列。
进一步地,在获得最终的回答语句之后,还可以获取监督数据;其中,该监督数据可以是用户的评价数据;在具体实现中,用户可以对本次提问获得的回答进行评价,例如,好评或差评,系统可以针对用户做出的评价进行收集整理,并将给评价数据作为监督数据;其中,好评对应的对话语句可以作为正样本,差评对应的对话语句可以作为负样本。这样,通过对正样本和负样本的采集,并将该正负样本输入目标输出模型进行监督训练,由此可以提高回答的准确性。
上述智能对话方法中,将用户的提问语句输入多个问答模型,获得对应的多个回答语句,将上述多个回答语句分别与历史对话语句进行组合,获得多个对话语句序列,根据该对话语句序列计算各序列对应的概率值,由此获得最终的回答语句,可以实现实现云客服场景下的智能对话,由此可以提高对用户问题的识别,从而提高对用户问题回答的准确度,提升用户体验。
图3为本说明书智能对话装置30一个实施例的结构示意图,如图3所示,上述智能对话装置30可以包括:获取模块31、组合模块32和输出模块33;
获取模块31,用于获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句;
组合模块32,用于分别将每条所述回答语句和与所述当前用户对应的历史对话语句进行组合,得到对应的多个对话语句序列;
输出模块33,用于将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列对应的置信度,根据所述置信度获得最终的回答语句。
其中一种可能的实现方式中,上述输出模块33可以包括:转换单元331及计算单元332;
转换单元331,用于将所述对话语句序列输入至预置输出模型进行向量转换,得到每个所述对话语句序列的向量;
计算单元332,用于将每个所述对话语句序列的向量进行归一化计算,得到每个所述向量对应的置信度。
其中一种可能的实现方式中,上述组合模块32可以包括:第一组合单元321及第二组合单元322;
第一组合单元321,用于分别将每条所述回答语句与所述提问语句进行组合,得到对应的多个对话语句组;
第二组合单元322,用于分别将每个所述对话语句组与第一目标对话语句序列进行组合,得到对应的多个对话语句序列,其中,所述第一目标对话语句序列包括至少一个与所述当前用户对应的历史对话语句组。
其中一种可能的实现方式中,上述装置30还可以包括:查询模块34;
查询模块34,用于根据所述最终的回答语句在所述对话语句序列中进行查询,得到第二目标对话语句序列。
图3所示实施例提供的智能对话装置可用于执行本说明书图1和图2所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
图4为本说明书智能对话装置40另一个实施例的结构示意图,与图3所示的智能对话装置30相比,图4所示的智能对话装置40中,上述获取模块31可以包括:转换单元311、查询单元312及计算单元313;
转换单元311,用于将所述提问语句在任一所述预置问答模型中进行向量转换,得到所述提问语句的向量;
查询单元312,用于根据所述提问语句的向量在目标向量索引中进行查询,得到对应的目标向量簇;
计算单元313,用于根据所述目标向量簇进行计算,得到与所述预置问答模型对应的回答语句。
图4所示实施例提供的智能对话装置可用于执行本申请图1和图2所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
图5为本说明书智能对话装置50再一个实施例的结构示意图,与图3所示的智能对话装置30相比,图5所示的智能对话装置50中,还可以包括:训练模块51;
训练模块51,用于获取监督数据,其中,所述监督数据与所述最终回答语句对应;根据所述监督数据与所述最终回答语句对所述预置输出模型进行训练。
图5所示实施例提供的智能对话装置可用于执行本申请图1和图2所示方法实施例的技术方案,其实现原理和技术效果可以进一步参考方法实施例中的相关描述。
图6为本说明书电子设备600一个实施例的结构示意图,如图6所示,上述电子设备可以包括至少一个处理器;以及与上述处理器通信连接的至少一个存储器,其中:存储器存储有可被处理器执行的程序指令,上述处理器调用上述程序指令能够执行本说明书图1和图2所示实施例提供的智能对话方法。
其中,上述电子设备可以为能够与用户进行智能对话的设备,例如:云服务器,本说明书实施例对上述电子设备的具体形式不作限定。可以理解的是,这里的电子设备即为方法实施例中提到的机器。
图6示出了适于用来实现本说明书实施方式的示例性电子设备的框图。图6显示的电子设备600仅仅是一个示例,不应对本说明书实施例的功能和使用范围带来任何限制。
如图6所示,电子设备600以通用计算设备的形式表现。电子设备600的组件可以包括但不限于:一个或者多个处理器610,存储器630,连接不同系统组件(包括存储器630和处理器610)的通信总线640。
通信总线640表示几类总线结构中的一种或多种,包括存储器总线或者存储器控制器,外围总线,图形加速端口,处理器或者使用多种总线结构中的任意总线结构的局域总线。举例来说,这些体系结构包括但不限于工业标准体系结构(Industry StandardArchitecture;以下简称:ISA)总线,微通道体系结构(Micro Channel Architecture;以下简称:MAC)总线,增强型ISA总线、视频电子标准协会(Video Electronics StandardsAssociation;以下简称:VESA)局域总线以及外围组件互连(Peripheral ComponentInterconnection;以下简称:PCI)总线。
电子设备典型地包括多种计算机系统可读介质。这些介质可以是任何能够被电子设备访问的可用介质,包括易失性和非易失性介质,可移动的和不可移动的介质。
存储器630可以包括易失性存储器形式的计算机系统可读介质,例如随机存取存储器(Random Access Memory;以下简称:RAM)和/或高速缓存存储器。电子设备可以进一步包括其它可移动/不可移动的、易失性/非易失性计算机系统存储介质。存储器630可以包括至少一个程序产品,该程序产品具有一组(例如至少一个)程序模块,这些程序模块被配置以执行本说明书各实施例的功能。
具有一组(至少一个)程序模块的程序/实用工具,可以存储在存储器630中,这样的程序模块包括——但不限于——操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。程序模块通常执行本说明书所描述的实施例中的功能和/或方法。
电子设备也可以与一个或多个外部设备(例如键盘、指向设备、显示器等)通信,还可与一个或者多个使得用户能与该电子设备交互的设备通信,和/或与使得该电子设备能与一个或多个其它计算设备进行通信的任何设备(例如网卡,调制解调器等等)通信。这种通信可以通过通信接口620进行。并且,电子设备还可以通过网络适配器(图6中未示出)与一个或者多个网络(例如局域网(Local Area Network;以下简称:LAN),广域网(Wide AreaNetwork;以下简称:WAN)和/或公共网络,例如因特网)通信,上述网络适配器可以通过通信总线640与电子设备的其它模块通信。应当明白,尽管图6中未示出,可以结合电子设备使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、磁盘阵列(Redundant Arrays of Independent Drives;以下简称:RAID)系统、磁带驱动器以及数据备份存储系统等。
处理器610通过运行存储在存储器630中的程序,从而执行各种功能应用以及数据处理,例如实现本说明书图1和图2所示实施例提供的智能对话方法。
以上各实施例中,涉及的处理器可以例如包括CPU、DSP、微控制器或数字信号处理器,还可包括GPU、嵌入式神经网络处理器(Neural-network Process Units;以下简称:NPU)和图像信号处理器(Image Signal Processing;以下简称:ISP),该处理器还可包括必要的硬件加速器或逻辑处理硬件电路,如ASIC,或一个或多个用于控制本申请技术方案程序执行的集成电路等。此外,处理器可以具有操作一个或多个软件程序的功能,软件程序可以存储在存储介质中。
本说明书实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,当所述计算机指令在计算机上运行时,所述计算机指令使所述计算机执行本说明书图1和图2所示实施例提供的智能对话方法。
上述非暂态计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(RAM)、只读存储器(Read Only Memory;以下简称:ROM)、可擦式可编程只读存储器(Erasable ProgrammableRead Only Memory;以下简称:EPROM)或闪存、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本文件中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括——但不限于——无线、电线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本说明书操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LocalArea Network;以下简称:LAN)或广域网(Wide Area Network;以下简称:WAN)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本说明书的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本说明书的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本说明书的实施例所属技术领域的技术人员所理解。
取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
需要说明的是,本说明书实施例中所涉及的终端可以包括但不限于个人计算机(Personal Computer;以下简称:PC)、个人数字助理(Personal Digital Assistant;以下简称:PDA)、无线手持设备、平板电脑(Tablet Computer)、手机、MP3播放器、MP4播放器等。
在本说明书所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,在本说明书各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本说明书各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory;以下简称:ROM)、随机存取存储器(Random Access Memory;以下简称:RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本说明书的较佳实施例而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本说明书保护的范围之内。
Claims (12)
1.一种智能对话方法,包括:
获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句;
分别将每条所述回答语句与所述提问语句进行组合,得到对应的多个对话语句组;
分别将每个所述对话语句组与第一目标对话语句序列进行组合,得到对应的多个对话语句序列,其中,所述第一目标对话语句序列包括至少一个与所述当前用户对应的历史对话语句组;
将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列向量对应的概率值,根据与最高概率值对应的对话语句序列向量获得最终的回答语句。
2.根据权利要求1所述的方法,所述将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列向量对应的概率值包括:
将所述对话语句序列输入至预置输出模型进行向量转换,得到每个所述对话语句序列的向量;
将每个所述对话语句序列的向量进行归一化计算,得到每个所述向量对应的概率值。
3.根据权利要求1所述的方法,所述根据与最高概率值对应的对话语句序列向量获得最终的回答语句之后,还包括:
根据所述最终的回答语句在所述对话语句序列中进行查询,得到第二目标对话语句序列。
4.根据权利要求1所述的方法,所述将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句包括:
将所述提问语句在任一所述预置问答模型中进行向量转换,得到所述提问语句的向量;
根据所述提问语句的向量在目标向量索引中进行查询,得到对应的目标向量簇;
根据所述目标向量簇进行计算,得到与所述预置问答模型对应的回答语句。
5.根据权利要求1所述的方法,其特征在于,所述根据与最高概率值对应的对话语句序列向量获得最终的回答语句之后,还包括:
获取监督数据,其中,所述监督数据与所述最终的回答语句对应;
根据所述监督数据与所述最终的回答语句对所述预置输出模型进行训练。
6.一种智能对话装置,包括:
获取模块,用于获取当前用户的提问语句,将所述提问语句输入至多个预置问答模型,得到对应的多条回答语句,其中,所述预置问答模型用于根据所述提问语句生成对应的回答语句;
组合模块,用于分别将每条所述回答语句与所述提问语句进行组合,得到对应的多个对话语句组;分别将每个所述对话语句组与第一目标对话语句序列进行组合,得到对应的多个对话语句序列,其中,所述第一目标对话语句序列包括至少一个与所述当前用户对应的历史对话语句组;
输出模块,用于将所述对话语句序列输入至预置输出模型进行计算,得到每个所述对话语句序列向量对应的概率值,根据与最高概率值对应的对话语句序列向量获得最终的回答语句。
7.根据权利要求6所述的装置,其特征在于,所述输出模块包括:
转换单元,用于将所述对话语句序列输入至预置输出模型进行向量转换,得到每个所述对话语句序列的向量;
计算单元,用于将每个所述对话语句序列的向量进行归一化计算,得到每个所述向量对应的概率值。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
查询模块,用于根据所述最终的回答语句在所述对话语句序列中进行查询,得到第二目标对话语句序列。
9.根据权利要求6所述的装置,其特征在于,所述获取模块包括:
转换单元,用于将所述提问语句在任一所述预置问答模型中进行向量转换,得到所述提问语句的向量;
查询单元,用于根据所述提问语句的向量在目标向量索引中进行查询,得到对应的目标向量簇;
计算单元,用于根据所述目标向量簇进行计算,得到与所述预置问答模型对应的回答语句。
10.根据权利要求6所述的装置,其特征在于,所述装置还包括:
训练模块,用于获取监督数据,其中,所述监督数据与所述最终的回答语句对应;根据所述监督数据与所述最终的回答语句对所述预置输出模型进行训练。
11.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述处理器通信连接的至少一个存储器,其中:
所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行如权利要求1至5任一所述的方法。
12.一种非暂态计算机可读存储介质,其特征在于,所述非暂态计算机可读存储介质存储计算机指令,当所述计算机指令在计算机上运行时,所述计算机指令使所述计算机执行如权利要求1至5任一所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010533383.4A CN111444329B (zh) | 2020-06-12 | 2020-06-12 | 智能对话方法、装置和电子设备 |
PCT/CN2021/099615 WO2021249528A1 (zh) | 2020-06-12 | 2021-06-11 | 智能对话方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010533383.4A CN111444329B (zh) | 2020-06-12 | 2020-06-12 | 智能对话方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111444329A CN111444329A (zh) | 2020-07-24 |
CN111444329B true CN111444329B (zh) | 2020-10-09 |
Family
ID=71655408
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010533383.4A Active CN111444329B (zh) | 2020-06-12 | 2020-06-12 | 智能对话方法、装置和电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111444329B (zh) |
WO (1) | WO2021249528A1 (zh) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111444329B (zh) * | 2020-06-12 | 2020-10-09 | 支付宝(杭州)信息技术有限公司 | 智能对话方法、装置和电子设备 |
CN112115244B (zh) * | 2020-08-21 | 2024-05-03 | 深圳市欢太科技有限公司 | 对话交互方法、装置、存储介质及电子设备 |
CN112131362B (zh) * | 2020-09-22 | 2023-12-12 | 腾讯科技(深圳)有限公司 | 对话语句生成方法和装置、存储介质及电子设备 |
CN112182175A (zh) * | 2020-09-25 | 2021-01-05 | 北京字节跳动网络技术有限公司 | 智能问答方法、装置、设备及可读存储介质 |
CN112182178A (zh) * | 2020-09-25 | 2021-01-05 | 北京字节跳动网络技术有限公司 | 智能问答方法、装置、设备及可读存储介质 |
CN112905772B (zh) * | 2021-02-10 | 2022-04-19 | 网易有道信息技术(北京)有限公司 | 语义相关性分析方法、装置及相关产品 |
CN113449092A (zh) * | 2021-07-08 | 2021-09-28 | 京东科技控股股份有限公司 | 语料获取方法、装置、电子设备及存储介质 |
CN114860910A (zh) * | 2022-05-12 | 2022-08-05 | 阿里巴巴(中国)有限公司 | 智能对话方法及系统 |
CN115062129A (zh) * | 2022-06-27 | 2022-09-16 | 中国平安人寿保险股份有限公司 | 智能会话方法、系统、计算机设备及存储介质 |
CN115118689B (zh) * | 2022-06-30 | 2024-04-23 | 哈尔滨工业大学(威海) | 一种特定领域智能客服营销机器人的搭建方法 |
CN115129847B (zh) * | 2022-08-30 | 2023-01-06 | 北京云迹科技股份有限公司 | 智能回答方法及装置 |
CN116610790B (zh) * | 2023-07-18 | 2023-10-10 | 阿里健康科技(中国)有限公司 | 应答数据的获取方法、装置、设备和介质 |
CN116757254B (zh) * | 2023-08-16 | 2023-11-14 | 阿里巴巴(中国)有限公司 | 任务处理方法、电子设备及存储介质 |
CN117275480A (zh) * | 2023-09-20 | 2023-12-22 | 镁佳(北京)科技有限公司 | 一种全双工智能语音对话的方法及装置 |
CN117633165B (zh) * | 2023-10-20 | 2024-05-31 | 广州天晟网络信息有限公司 | 一种智能ai客服对话引导方法 |
CN117149982A (zh) * | 2023-10-27 | 2023-12-01 | 腾讯科技(深圳)有限公司 | 基于人工智能的问答处理方法、装置、设备及存储介质 |
CN117633174B (zh) * | 2023-11-22 | 2024-06-25 | 北京万物可知技术有限公司 | 一种基于多个大模型对话的表决共识系统 |
CN117725186B (zh) * | 2024-02-08 | 2024-08-09 | 北京健康有益科技有限公司 | 一种特定疾病饮食方案对话样本的生成方法及装置 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108399169A (zh) * | 2017-02-06 | 2018-08-14 | 阿里巴巴集团控股有限公司 | 基于问答系统的对话处理方法、装置和系统及移动设备 |
CN108733703A (zh) * | 2017-04-20 | 2018-11-02 | 北京京东尚科信息技术有限公司 | 问答系统的答案预测方法及装置、电子设备、存储介质 |
CN109271505B (zh) * | 2018-11-12 | 2021-04-30 | 深圳智能思创科技有限公司 | 一种基于问题答案对的问答系统实现方法 |
CN110909165B (zh) * | 2019-11-25 | 2022-09-13 | 杭州网易再顾科技有限公司 | 数据处理方法、装置、介质及电子设备 |
CN111444329B (zh) * | 2020-06-12 | 2020-10-09 | 支付宝(杭州)信息技术有限公司 | 智能对话方法、装置和电子设备 |
-
2020
- 2020-06-12 CN CN202010533383.4A patent/CN111444329B/zh active Active
-
2021
- 2021-06-11 WO PCT/CN2021/099615 patent/WO2021249528A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2021249528A1 (zh) | 2021-12-16 |
CN111444329A (zh) | 2020-07-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444329B (zh) | 智能对话方法、装置和电子设备 | |
CN108334487B (zh) | 缺失语意信息补全方法、装置、计算机设备和存储介质 | |
CN108170749B (zh) | 基于人工智能的对话方法、装置及计算机可读介质 | |
CN110427625B (zh) | 语句补全方法、装置、介质及对话处理系统 | |
CN112100354B (zh) | 人机对话方法、装置、设备及存储介质 | |
US11769018B2 (en) | System and method for temporal attention behavioral analysis of multi-modal conversations in a question and answer system | |
JP2021067939A (ja) | 音声インタラクション制御のための方法、装置、機器及び媒体 | |
CN111428010B (zh) | 人机智能问答的方法和装置 | |
CN111858859A (zh) | 自动问答处理方法、装置、计算机设备及存储介质 | |
CN115309877B (zh) | 对话生成方法、对话模型训练方法及装置 | |
CN111563158B (zh) | 文本排序方法、排序装置、服务器和计算机可读存储介质 | |
CN113553412B (zh) | 问答处理方法、装置、电子设备和存储介质 | |
WO2020155619A1 (zh) | 带情感的机器聊天方法、装置、计算机设备及存储介质 | |
WO2020151690A1 (zh) | 语句生成方法、装置、设备及存储介质 | |
CN110263218B (zh) | 视频描述文本生成方法、装置、设备和介质 | |
JP2022502758A (ja) | 符号化方法、装置、機器およびプログラム | |
CN113450771B (zh) | 唤醒方法、模型训练方法和装置 | |
CN111339308B (zh) | 基础分类模型的训练方法、装置和电子设备 | |
EP3602417A1 (en) | Selecting answer spans from electronic documents using machine learning | |
CN109961041A (zh) | 一种视频识别方法、装置及存储介质 | |
KR20210088463A (ko) | 다중 라운드 대화 검색 방법, 장치, 저장매체 및 전자기기 | |
CN111460117B (zh) | 对话机器人意图语料生成方法、装置、介质及电子设备 | |
KR20210104909A (ko) | 쿼리 재기입 방법, 장치, 설비 및 저장매체 | |
CN116401522A (zh) | 一种金融服务动态化推荐方法和装置 | |
CN116541536A (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 |