CN107885756A - 基于深度学习的对话方法、装置及设备 - Google Patents
基于深度学习的对话方法、装置及设备 Download PDFInfo
- Publication number
- CN107885756A CN107885756A CN201610876941.0A CN201610876941A CN107885756A CN 107885756 A CN107885756 A CN 107885756A CN 201610876941 A CN201610876941 A CN 201610876941A CN 107885756 A CN107885756 A CN 107885756A
- Authority
- CN
- China
- Prior art keywords
- vector
- conversation
- revert statement
- sentence
- decoded
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/9032—Query formulation
- G06F16/90332—Natural language query formulation or dialogue systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/20—Natural language analysis
- G06F40/205—Parsing
- G06F40/216—Parsing using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
- G06F40/35—Discourse or dialogue representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/55—Rule-based translation
- G06F40/56—Natural language generation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- 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/044—Recurrent networks, e.g. Hopfield 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/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
-
- 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
- G06N3/084—Backpropagation, e.g. using gradient descent
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N99/00—Subject matter not provided for in other groups of this subclass
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Evolutionary Computation (AREA)
- Databases & Information Systems (AREA)
- Molecular Biology (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Probability & Statistics with Applications (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Machine Translation (AREA)
Abstract
本发明公开了一种基于深度学习的对话方法、装置及设备,属于人工智能领域。所述方法包括:获取待回复语句;对待回复语句进行编码,得到第一向量,第一向量为待回复语句的表示;获取待回复语句对应的对话历史信息,对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;采用第一向量和解码状态向量合成注意向量,解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,注意向量用于表示搜索意图;将每个对话语句分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量;基于多个结果向量生成待解码向量;对待解码向量进行解码,得到回复语句中的下一个词,本发明回复语句参考了对话历史。
Description
技术领域
本发明涉及人工智能领域,特别涉及一种基于深度学习的对话方法、装置及设备。
背景技术
自然语言对话是人工智能最具挑战的问题之一,现在有许多实用的对话系统,如苹果Siri。这些对话系统能够与人做简单的对话,完成一些简单的任务,比如问天气、查股票。
基于深度学习的对话系统是当前对话系统发展的方向,在获取到用户输入的待回复语句后,其生成回复语句的方法包括:将待回复语句编码成向量;对向量进行解码得到回复语句。
这种对话系统在生成回复语句的过程中,还不能有效的处理和利用对话历史信息,造成对话系统输出的回复语句可能无法满足用户需求,对话质量不高。
发明内容
为了解决现有技术不能有效的处理和利用对话历史信息,造成对话系统输出的回复语句可能无法满足用户需求的问题,本发明实施例提供了一种基于深度学习的对话方法、装置及设备。所述技术方案如下:
第一方面,本发明实施例提供了一种基于深度学习的对话方法,所述方法包括:
获取待回复语句;
对所述待回复语句进行编码,得到第一向量,所述第一向量为所述待回复语句的表示;
获取所述待回复语句对应的对话历史信息,所述对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;
采用所述第一向量和解码状态向量合成注意向量,所述解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,所述注意向量用于表示搜索意图;
将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量;
基于所述多个结果向量生成待解码向量;
对所述待解码向量进行解码,得到所述回复语句中的下一个词。
本发明实施例,通过在将待回复语句编码为一个第一向量后,将第一向量与解码状态向量合成,得到具有搜索意图的注意向量,然后用注意向量提取对话历史信息中的信息,然后生成待解码向量,通过对待解码向量进行解码,生成回复语句中的词语,这种对话方式,使得产生的回复语句不仅仅是根据待回复语句生成的,而且参考了待回复语句对应的对话历史信息中的内容,能有效的处理和利用对话历史信息,使得输出的回复语句能够满足用户需求,提高了对话质量。
结合第一方面,在第一方面的第一实现方式中,所述采用所述第一向量和解码状态向量合成注意向量,包括:
将所述第一向量和解码状态向量的每个维度分别作为用于向量合成的神经网络的一个输入,使所述第一向量和解码状态向量相互作用,生成所述注意向量,所述第一向量和解码状态向量均包括多个维度。
由于回复语句是采用逐词生成的方式生成的,所以,在该实现方式中,将解码器的状态用一个向量表示,用这个向量和第一向量进行合成得到注意向量,使得注意向量可以提取对话历史信息中的与解码过程中关注的特征相关的信息,从而生成的词语的准确性。
结合第一方面,在第一方面的第二实现方式中,所述将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量,包括:
分别对所述对话历史信息中的每个对话语句进行编码,得到每个所述对话语句对应的第二向量,所述第二向量为对应的所述对话语句的表示;
将每个所述第二向量分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量。
在该实现方式中,将对话历史信息编码得到的第二向量和注意向量相互作用,以提取对话历史信息中与待回复语句相关的特征信息,得到结果向量,从而将对话历史信息中与待回复语句相关的特征信息提取出来,使得生成待回复语句的过程参考了对话历史信息的内容,以提高回复语句的准确度。
结合第一方面,在第一方面的第三实现方式中,所述将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量,包括:
分别对所述对话历史信息中的每个对话语句进行编码,并在编码过程中将所述注意向量与所述对话语句一同输入编码器,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量。
在该实现方式中,直接在编码对于语句时加入注意向量,由注意向量提取对话语句中的信息,从而将对话历史信息中与待回复语句相关的特征信息提取出来,使得生成待回复语句的过程参考了对话历史信息的内容,以提高回复语句的准确度。
结合第一方面,在第一方面的第四实现方式中,所述基于所述多个结果向量生成待解码向量,包括:
将所述多个结果向量分别作为用于特征提取的神经网络的一个输入,从而对所述多个结果向量的特征进行提取,生成所述待解码向量。
在该实现方式中,将从对话语句中的信息进一步进行压缩,以生成用于解码的待解码向量。
第二方面,提供了一种基于深度学习的对话装置,所述装置包括若干单元,比如第一获取单元、编码单元、第二获取单元、合成单元、提取单元、生成单元和解码单元,所述若干单元用于实现第一方面提供的方法。
第三方面,提供了一种基于深度学习的对话设备,所述对话设备包括处理器、存储器以及通信接口;所述存储器用于存储软件程序以及模块,所述处理器通过运行或执行存储在所述存储器内的软件程序和/或模块实现:
获取待回复语句;
对所述待回复语句进行编码,得到第一向量,所述第一向量为所述待回复语句的表示;
获取所述待回复语句对应的对话历史信息,所述对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;
采用所述第一向量和解码状态向量合成注意向量,所述解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,所述注意向量用于表示搜索意图;
将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量;
基于所述多个结果向量生成待解码向量;
对所述待解码向量进行解码,得到所述回复语句中的下一个词。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种应用场景图;
图2是本发明实施例提供的一种基于深度学习的对话设备的框图;
图3是本发明实施例提供的一种基于深度学习的对话方法的流程图;
图4是本发明实施例提供的另一种基于深度学习的对话方法的流程图;
图4A是本发明实施例提供的回复语句生成示意图;
图4B是本发明实施例提供的RNN的结构示意图;
图4C是本发明实施例提供的CNN的结构示意图;
图4D是本发明实施例提供的注意向量合成示意图;
图4E是本发明实施例提供的结果向量生成示意图;
图4F是本发明实施例提供的待解码向量生成示意图;
图4G是本发明实施例提供的人机对话的基本流程示意图;
图4H是本发明实施例提供的人机对话的基本流程示意图;
图5是本发明实施例提供的一种基于深度学习的对话装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
为便于对本发明实施例提供的技术方案的理解,首先结合图1介绍一下本发明的应用场景。
该场景包括用户100和基于深度学习的对话设备200(后文简称对话设备),其中对话设备200用于执行下述对话过程:获取用户100的待回复语句,然后对该待回复语句进行回复,生成回复语句,并将回复语句呈现给该用户100。
在一种实现方式中,用户100可以是人,对话设备200可以是手机、电脑等终端设备,人与终端设备之间实现上述对话过程。例如,手机作为对话设备,可以内置可以进行人机对话的软件,人通过文字或者语音输入向软件提问(待回复语句),软件根据人的问题生成答案(回复语句)并显示出来,软件可以具有问答、信息自动回复、机器翻译等功能的软件。
在另一种实现方式中,用户100可以是客户端,对话设备200是服务器,客户端和服务器之间实现上述对话过程。其中,客户端包括但不限于手机、电脑等,服务器可以是能够提供各种不同服务的服务器,服务包括但不限于天气查询、业务咨询、智能客服(用于机票服务或餐馆服务等)等。
图2为基于深度学习的对话设备的一种可能的硬件结构示意图。如图2所示,对话设备包括处理器10、存储器20以及通信接口30。本领域技术人员可以理解,图2中示出的结构并不构成对该对话设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
处理器10是对话设备的控制中心,利用各种接口和线路连接整个对话设备的各个部分,通过运行或执行存储在存储器20内的软件程序和/或模块,以及调用存储在存储器20内的数据,执行对话设备的各种功能和处理数据,从而对对话设备进行整体控制。处理器10可以由CPU实现,也可以由图形处理器(英文Graphics Processing Unit,简写GPU)实现。
存储器20可用于存储软件程序以及模块。处理器10通过运行存储在存储器20的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器20可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统21、第一获取模块22、编码模块23、第二获取模块24、合成模块25、提取模块26、生成模块27、解码模块28和至少一个功能所需的应用程序29(比如神经网络训练等)等;存储数据区可存储根据对话设备的使用所创建的数据(比如对话历史信息等)等。存储器20可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Read-Only Memory,简称PROM),只读存储器(Read Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。相应地,存储器20还可以包括存储器控制器,以提供处理器10对存储器20的访问。
其中,处理器20通过运行第一获取模块22执行以下功能:获取待回复语句;处理器20通过运行编码模块23执行以下功能:对待回复语句进行编码,得到第一向量,第一向量为待回复语句的表示;处理器20通过运行第二获取模块24执行以下功能:获取待回复语句对应的对话历史信息,对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;处理器20通过运行合成模块25执行以下功能:采用第一向量和解码状态向量合成注意向量,解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,注意向量用于表示搜索意图;处理器20通过运行提取模块26执行以下功能:将每个对话语句分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量;处理器20通过运行生成模块27执行以下功能:基于多个结果向量生成待解码向量;处理器20通过运行解码模块28执行以下功能:对待解码向量进行解码,得到回复语句中的下一个词。
图3是本发明实施例提供的一种基于深度学习的对话方法的流程图,该方法可以采用前述应用场景中的对话设备实现,参见图3,该方法包括:
步骤101:获取待回复语句。
其中,待回复语句由用户输入得到,用户输入包括但不限于文本、语音和图片等数据。
获取待回复语句可以包括:接收文本数据(字、词语或句子),并将文本数据作为待回复语句。接收语音数据,对语音数据进行语音识别得到经语音识别的文本数据,并将经语音识别的文本数据作为待回复语句。接收图片数据,对图片数据进行光学字符识别得到经识别的文本数据,并将经识别的文本数据作为待回复语句。
步骤102:对待回复语句进行编码,得到第一向量,第一向量为待回复语句的表示。
其中,第一向量优选为单个向量。
步骤102可以包括:将待回复语句编码成单个的向量。当然,本发明实施例中待回复语句编码后的表现形式并不限制如此,例如还可以是向量序列,具体可以,将待回复语句编码成向量序列,该向量序列包括至少一个向量。在编码成向量序列时,可以先对待回复语句进行分词处理,得到至少一个词;然后将分词处理得到的每个词分别编码为一个向量,组成向量序列。
在本实施例中,将待回复语句编码成单个的向量,在后续对待回复语句的处理即转化为对该向量的处理,相比于对一个向量序列进行处理而言,可以大大降低后续处理的复杂程度,同时采用一个向量来表示待回复语句能够提高语意的完整性。
在步骤102中,在采用向量表示待回复语句时,为了能够表达待回复语句的意思,需要使用一个维数较高的向量,例如5000维;而采用一个向量序列表示待回复语句时,向量序列中的每个向量只用表示一个词语,因此每个向量可以使用一个低维数的向量。
实现时,可以采用编码器将待回复语句编码成向量,编码器为能够最大复现的输入信号的神经网络,编码器编码得到的向量包含了待回复语句各个方面的信息,比如意图(是确认、询问等等)和具体的命名实体(如地点时间等等)。
步骤103:获取待回复语句对应的对话历史信息,对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句。
优选地,待回复语句对应的对话历史信息为设定时间内对话系统与产生待回复语句的对象之间产生的对话语句。本发明中的对话历史信息并不限制于此,对话历史信息也可以是设定条数的对话语句,或者是在用户与对话系统建立一次连接中产生的对话语句。
步骤104:采用第一向量和解码状态向量合成注意向量,解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,注意向量用于表示搜索意图。
例如,注意向量可以用于搜索对话历史信息中的时间、地点等信息。
步骤105:将每个对话语句分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量。
将注意向量和对话历史信息中的对话语句进行相互作用,可以采用人工神经网络实现,具体参见后文描述。
步骤106:基于多个结果向量生成待解码向量。
具体地,步骤106将多个向量的内容压缩成一个待解码向量。
步骤107:对待解码向量进行解码,得到回复语句中的下一个词。
在本发明中,回复语句是逐词生成的,这样可以提高回复语句的准确性。
本发明实施例,通过在将待回复语句编码为一个第一向量后,将第一向量与解码状态向量合成,得到具有搜索意图的注意向量,然后用注意向量提取对话历史信息中的信息,然后生成待解码向量,通过对待解码向量进行解码,生成回复语句中的词语,这种对话方式,使得产生的回复语句不仅仅是根据待回复语句生成的,而且参考了待回复语句对应的对话历史信息中的内容,能有效的处理和利用对话历史信息,使得输出的回复语句能够满足用户需求,提高了对话质量。
图4是本发明实施例提供的另一种基于深度学习的对话方法的流程图,该方法可以采用前述应用场景中的对话设备实现,该方法与图3提供的方法相比,对各个步骤的详细实现方式进行了说明,参见图4,方法包括:
步骤201:获取待回复语句。
其中,待回复语句由用户输入得到,用户输入包括但不限于文本、语音和图片等数据。
获取待回复语句可以包括:接收文本数据(字、词语或句子),并将文本数据作为待回复语句。接收语音数据,对语音数据进行语音识别得到经语音识别的文本数据,并将经语音识别的文本数据作为待回复语句。接收图片数据,对图片数据进行光学字符识别得到经识别的文本数据,并将经识别的文本数据作为待回复语句。
步骤202:对待回复语句进行编码,得到第一向量,第一向量为待回复语句的表示。
其中,第一向量优选为单个向量。
步骤202可以包括:将待回复语句编码成单个的向量。当然,本发明实施例中待回复语句编码后的表现形式并不限制如此,例如还可以是向量序列,具体可以,将待回复语句编码成向量序列,该向量序列包括至少一个向量。在编码成向量序列时,可以先对待回复语句进行分词处理,得到至少一个词;然后将分词处理得到的每个词分别编码为一个向量,组成向量序列。
在本实施例中,将待回复语句编码成单个的向量,在后续对待回复语句的处理即转化为对该向量的处理,相比于对一个向量序列进行处理而言,可以大大降低后续处理的复杂程度,同时采用一个向量来表示待回复语句能够提高语意的完整性。
在步骤202中,在采用向量表示待回复语句时,为了能够表达待回复语句的意思,需要使用一个维数较高的向量,例如5000维;而采用一个向量序列表示待回复语句时,向量序列中的每个向量只用表示一个词语,因此每个向量可以使用一个低维数的向量。
实现时,可以采用神经网络将待回复语句编码成向量,编码得到的向量包含了待回复语句各个方面的信息,比如意图(是确认、询问等等)和具体的命名实体(如地点时间等等)。
在编码待回复语句时,可以将待回复语句输入到预先训练好的递归神经网络(英文Recursive Neural Network,简称RNN)或卷积神经网络(英文Convolutional NeuralNetwork,简称CNN)中,得到第一向量。
具体地,采用RNN对待回复语句进行编码,可以包括:
根据待回复语句得到若干顺序排列的待编码词语;
获取每个待编码词语对应的特征向量;
采用如下方式编码得到第一向量:hi=f(h(i-1),wi),hi为第i个待编码词语对应的向量,h(i-1)为第i-1个待编码词语对应的向量,wi为第i个待编码词语对应的特征向量,第一向量为最后一个待编码词语对应的向量。
具体地,采用CNN对待回复语句进行编码,可以包括:
根据待回复语句得到若干顺序排列的待编码词语;
获取每个待编码词语对应的特征向量;
对若干待编码词语对应的特征向量进行池化卷积操作,以对若干待编码词语对应的特征向量进行特征提取,生成第一向量。
下面通过举例,对待回复语句的编码进行说明:
如图4A所示,将待回复语句“那上海呢?”输入到神经网络中以执行步骤202的句子编码。用于编码的神经网络可以是RNN,特别是包含选通(英文gating)机制的特殊类型的RNN,选通机制包括但不限于选通单元(英文Gated Units,简称GRU)和短时记忆(英文LongShort-term Memory,简称LSTM)。当然这里用于编码的神经网络也可以是别的神经网络,例如CNN。
如图4B所示是一个用于编码的RNN的示意图,RNN用于待回复语句的编码时没有输出层,只有输入和隐藏层。如图所示,用户的输入为“那上海呢?”(“那”“上海”“呢”“?”可以看作四个不同单词(即前述待编码词语)),RNN按照句子中单词出现的顺序进行编码,前一个词的隐藏层信息反馈给当前词的隐藏层。当遇到句子的结束符(英文Ending Of Sign,简称EOS)时,整个句子的编码就完成了,将RNN的隐藏层信息作为该句子的编码结果输出。
具体地,单词“那”的向量记作h1,然后RNN把h1与表示“上海”的向量结合,生成新的向量h2。然后向量h2继续与下一个单词“呢”的向量结合,生成新的向量h3,以此类推,直到向量h4。向量h4则表示了完整的句子“那上海呢”的信息。
这里的向量h(h1~h4)同时也表示了编码器的内部节点状态。
如图4C所示是一个用于编码的CNN的示意图。CNN是包括输入层、卷积层、池化层和输出层。输入层输入的待回复语句用单词(即前述待编码词语)的向量表达,如图所示的“那”“上海”“呢”“?”,这样本来一维的文本信息输入就转换成了二维的输入结构,例如图中包含4个单词,而每个单词的向量的长度为d,那么输入就是4*d的二维向量。卷积层本质上是个特征抽取层,可以设定参数来指定设立多少个特征抽取器(Filter),对于某个Filter来说,可以想象有一个k*d大小的移动窗口从输入层的第一个单词开始不断往后移动,其中k是Filter指定的窗口大小。对于某个时刻的窗口,通过神经网络的非线性变换,将这个窗口内的输入值转换为某个特征值,随着窗口不断往后移动,这个Filter对应的特征值不断产生,形成这个Filter的特征向量。这就是卷积层抽取特征的过程。如图所示,第一个Filter每次抽取三个单词,形成两次抽取,分别为“那上海呢”“上海呢?”,第二个Filter每次抽取两个单词,形成三次抽取,分别为“那上海”“上海呢”“呢?”。池化层则对Filter的特征向量进行降维操作,对特征进行选择,形成最终的特征。重复池化操作多次,得到多个向量表示,将这些向量连接起来得到待回复语句的语义表示,即输出层输出的向量。
步骤203:获取待回复语句对应的对话历史信息,对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句。
优选地,待回复语句对应的对话历史信息为设定时间内对话系统与产生待回复语句的对象之间产生的对话语句。本发明中的对话历史信息并不限制于此,对话历史信息也可以是设定条数的对话语句,或者是在用户与对话系统建立一次连接中产生的对话语句。
获取待回复语句对应的对话历史信息可以包括:从本地服务器或者网络服务器中获取设定时间内待回复语句对应的对话历史信息。
步骤204:将第一向量和解码状态向量的每个维度分别作为用于向量合成的神经网络的一个输入,使第一向量和解码状态向量相互作用,生成注意向量,第一向量和解码状态向量均包括多个维度。
在本发明实施例中,解码器可以采用人工神经网络实现,此时,解码状态向量为解码生成上一个词之后,用于解码的神经网络的状态,对于神经网络而言,状态是指在某一时刻神经网络的所有神经元的值,也即神经网络的节点状态。需要说明的是,由于在生成第一个词之前,解码器还未进行向量解码,因此此时解码器的状态为初始状态,其解码状态向量为初始值,例如一个全零的向量。
注意向量包括从待回复语句中提取到的用于生成回复语句的信息,该信息与生成下一个词相关。
其中,将第一向量和解码状态向量进行交互可以包括:
将第一向量和解码状态向量输入到预先训练好的深度神经网络(英文DeepNeural Network,简称DNN)中,得到注意向量。
具体地,将第一向量和解码状态向量输入到预先训练好的深度神经网络中,得到注意向量,包括:
将第一向量的每个维度和解码状态向量的每个维度分别作为深度神经网络的输入。
如图4A所示将待回复语句的向量表示和用于解码的神经网络的状态向量通过神经网络合成为一个注意向量,这个神经网络的实现可以用DNN实现,如图4D所示,图4D中神经网络的输入层的每个节点输入向量的一个维度,图4D中向量和解码状态向量的维度的数量只是作为举例,本发明实施例对此不做限制,输出的注意向量应该包含搜索的意图。如图4A中的例子,这个搜索的意图中可以包括弄清出“那上海呢?”背后的基本含义,如关于上海的哪方面信息等。
步骤205:将每个对话语句分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量。
如图4A所示通过注意向量在对话历史信息中进行检索。用于检索的神经网络的实现可以有多种,如CNN++。CNN++输出的待解码向量包含了生成下一个词所需要的信息,如在图4A中,CNN++在生成待解码向量的过程中了解到在对话历史信息中用户提到了天气的内容,并且在提到天气时又提到与天气关联的时间,如“今天”和“明天”,因此解码的神经网络在根据待解码向量生成回复时,可以反问用户想要了解的上海的天气的时间。
在本实施例的一种实现方式中,步骤205可以包括:
分别对对话历史信息中的每个对话语句进行编码,得到每个对话语句对应的第二向量,第二向量为对应的对话语句的表示;
将每个第二向量分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量。
其中,对话语句的编码方式可以与待回复语句的编码方式相同。将注意向量和第二向量一起作为输入输入到多个神经网络(RNN或CNN)中,生成多个结果向量。
在本实施例的另一种实现方式中,步骤205可以包括:
分别对对话历史信息中的每个对话语句进行编码,并在编码过程中将注意向量与对话语句一同输入编码器,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量。
具体地,如图4E所示,将对话语句进行编码的同时输入前述注意向量,从而产生结果向量,然后输入到CNN中。
步骤206:基于多个结果向量生成待解码向量。
上述步骤205和206的作用是,通过注意向量去检索对话历史信息中与待回复语句相关的特征信息。
如图4F所示,将注意向量和一个对话语句通过一个交互模块进行交互生成一个结果向量,这个结果向量中即包括了原来注意向量的信息,又包括了在对话历史信息中的句子的信息,然后利用CNN将多个交互模块输出的多个结果向量输出为一个待解码向量,从而对这多个结果向量的信息进行抽取,压缩成一个待解码向量。
步骤207:对待解码向量进行解码,得到回复语句中的下一个词。
其中,步骤207可以包括:对待解码向量进行解码得到回复语句中的一个词;将多次解码得到的词组成回复语句。
其中,对待解码向量进行解码生成词,包括:
将待解码向量输入到预先训练好的RNN或CNN(解码器)中,解码生成一个词。
采用神经网络对待解码向量进行解码生成词,该神经网络用于逐词地生成回复语句,通常用RNN(例如GRU和LSTM)来实现,或者基于其他神经网络的(如CNN)解码模型来实现。如图4A所示,在生成了“还是”这个词之后,用于解码的神经网络的状态向量会被合成为注意向量,注意向量被用于检索的神经网络调用去访问外置存储,输出的待解码向量将被用来生成下一个词“明天”。这样循环操作,直到生成EOS。
进一步地,该方法还可以包括:将回复语句存储到对话历史信息中。
在本发明实施例中,用户和对话系统(英文Dialog System,简称DS)进行人机对话的基本流程为:对用户的每一次发言(待回复语句),系统会结合之前的对话历史信息给出一个回复语句,系统产生回复的过程如前述步骤201-207,而后用户可能会给出进一步的发言。下面通过例子进行说明:
例一,如图4G所示:
用户:今天北京天气怎么样?
DS:晴转多云
用户:那明天呢?
DS:小雨
用户:那上海呢?
DS:今天还是明天?
在上述对话中,对话系统在生成回复“今天还是明天?”的过程中,假设系统刚刚依次生成了“今天”和“还是”两个词,在生成下面一个词的时候,对话系统中用于解码的神经网络的状态向量(在生成了“还是”这个词之后)和待回复语句(“那上海呢?”)在用于编码的神经网络中生成的向量一起输入用于注意向量合成的神经网络,产生的注意向量通过用于检索的神经网络(例如CNN++),生成能够表示用于解码的神经网络的状态向量、待回复语句的向量、及对话历史信息中句子的向量的信息的待解码向量,然后对待解码向量进行解码,生成回复语句。在上述过程中用于检索的神经网络合成的待解码向量实际包含如下含义:用户提到的“今天北京天气”、“明天”等信息,意味着用户所提问的“那上海呢?”应该与天气存在关联,将这二者的信息和注意向量一起进行进一步的综合后,进一步确认用户需要知道的上海天气是今天还是明天。
例二,如图4H所示:
用户:我的手机上不了网
DS:请问是wifi上不了网,还是数据计划?
用户:就是手机上不了家里的网
DS:我猜您说的是wifi。请问您的手机可以上别的地方的wifi吗?
用户:什么是wifi?
DS:就是您刚才说的那种家里的网
在上述对话中,对话系统在生成回复“就是您刚才说的那种家里的网?”的过程中,假设系统刚刚依次生成了如下六个词:“就是”、“您”、“刚才”、“说”、“的”、“那种”,在生成下面一个词的时候,对话系统中用于解码的神经网络的状态向量(在生成了“那种”这个词之后)和待回复语句(“什么是wifi?”)在用于编码的神经网络中生成的向量一起输入用于注意向量合成的神经网络,产生的注意向量通过用于检索的神经网络(例如CNN++),生成能够表示用于解码的神经网络的状态向量、待回复语句的向量、及对话历史信息中句子的向量的信息的待解码向量,然后对待解码向量进行解码,生成回复语句。在上述过程中用于检索的神经网络合成的待解码向量实际包含如下含义:用户提到的“手机上不了家里的网”的信息在系统的问题“请问是wifi上不了网,还是数据计划?”之后,意味着二者可能存在对应关系,将这二者的信息和注意向量一起进行进一步的综合后,提出了将“家里的网”这个短语作为对用户“什么是wifi?”这个问题的解释。
进一步地,本发明实施例所提供的方法还包括:训练对话系统的模型,该对话系统的模型包括用于编码(步骤202)、合成(步骤204)、提取(步骤205和206)和解码(步骤207)的多个神经网络。
在一种实现方式中,训练对话系统的模型,包括:
训练用于编码、注意向量合成、检索和解码的四个神经网络,在四个神经网络训练完成后,再将四个神经网络作为系统进行训练,从而提高模型的精度。
其中,每个神经网络可以采用端到端(英文end-to-end)的方式(如后向传播算法(英文Back-Propagation,简称BP))进行训练,也可以采用逐层训练的方式进行训练。
更具体地,采用end-to-end的方式训练神经网络包括:随机设定神经网络的初始值,将训练样本作为神经网络的输入,从第一层隐含层开始,到最后一层隐含层结束,逐层向后传播,得到神经网络输出值;计算输出值与标签的误差;然后采用BP算法从最后一层隐含层开始,到第一层隐含层结束,逐层地向前传播,调整每层隐含层的参数。
在另一种实现方式,还可以将四个神经网络作为系统直接采用联合训练方式进行训练,减少训练的时间花费,提高训练效率。
其中,训练样本可以从大量的用户对话数据中得到,例如微博对话,电商网站客服问答,论坛页面等。
本发明实施例,通过在将待回复语句编码为向量后,采用该向量和解码状态向量合成的注意向量在对话历史信息中进行检索,从而使输入解码的向量中包含了对话历史信息的内容,使得这种基于深度学习的对话系统能有效的处理和利用对话历史信息,使得输出的回复语句能够满足用户需求,提高了对话质量。另外,上述基于深度学习的对话方法完全是基于神经网络的生成模型,这区别于采用模板(规则)或者是基于检索的对话模型,这样的好处是生成的语言接近人的自然语言而同时又具有对话中需要的灵活性和上下文相关的性能。
另外,在检索对话历史信息的过程中,将对话历史信息中的每个句子编码为一个向量与待回复语句的向量进行交互,避免了将对话历史信息做过分压缩,造成对话历史信息中主要内容丢失的问题,能够保存对话历史信息中的信息,例如“北京”、“上海”这样的实体意义上的信息没有被压缩为同一个向量,造成词义丢失和走样,导致北京和上海难以区分这样的问题。
图5是本发明实施例提供的一种基于深度学习的对话装置的框图。该基于深度学习的对话装置用于实现图3或图4提供的基于深度学习的对话方法,该基于深度学习的对话装置可以通过软件、硬件或者两者的结合实现成为图2提供的对话设备的全部或者一部分。该基于深度学习的对话装置可以包括:第一获取单元601、编码单元602、第二获取单元603、合成单元604、提取单元605、生成单元606和解码单元607。
第一获取单元601,用于获取待回复语句;
编码单元602,用于对待回复语句进行编码,得到第一向量,第一向量为待回复语句的表示;
第二获取单元603,用于获取待回复语句对应的对话历史信息,对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;
合成单元604,用于采用第一向量和解码状态向量合成注意向量,解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,注意向量用于表示搜索意图;
提取单元605,用于将每个对话语句分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量;
生成单元606,用于基于多个结果向量生成待解码向量;
解码单元607,用于对待解码向量进行解码,得到回复语句中的下一个词。
本发明实施例,通过在将待回复语句编码为一个第一向量后,将第一向量与解码状态向量合成,得到具有搜索意图的注意向量,然后用注意向量提取对话历史信息中的信息,然后生成待解码向量,通过对待解码向量进行解码,生成回复语句中的词语,这种对话方式,使得产生的回复语句不仅仅是根据待回复语句生成的,而且参考了待回复语句对应的对话历史信息中的内容,能有效的处理和利用对话历史信息,使得输出的回复语句能够满足用户需求,提高了对话质量。
可选地,合成单元604,用于:
将第一向量和解码状态向量的每个维度分别作为用于向量合成的神经网络的一个输入,使第一向量和解码状态向量相互作用,生成注意向量,第一向量和解码状态向量均包括多个维度。
可选地,提取单元605,用于:
分别对对话历史信息中的每个对话语句进行编码,得到每个对话语句对应的第二向量,第二向量为对应的对话语句的表示;
将每个第二向量分别与注意向量相互作用,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量。
可选地,提取单元605,用于:
分别对对话历史信息中的每个对话语句进行编码,并在编码过程中将注意向量与对话语句一同输入编码器,以在每个对话语句中提取与搜索意图相关的信息,得到多个结果向量。
可选地,生成单元606,用于:
将多个结果向量分别作为用于特征提取的神经网络的一个输入,从而对多个结果向量的特征进行提取,生成待解码向量。
需要说明的是:上述实施例提供的基于深度学习的对话装置在人机对话时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将设备的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的基于深度学习的对话装置与基于深度学习的对话方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (11)
1.一种基于深度学习的对话方法,其特征在于,所述方法包括:
获取待回复语句;
对所述待回复语句进行编码,得到第一向量,所述第一向量为所述待回复语句的表示;
获取所述待回复语句对应的对话历史信息,所述对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;
采用所述第一向量和解码状态向量合成注意向量,所述解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,所述注意向量用于表示搜索意图;
将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量;
基于所述多个结果向量生成待解码向量;
对所述待解码向量进行解码,得到所述回复语句中的下一个词。
2.根据权利要求1所述的方法,其特征在于,所述采用所述第一向量和解码状态向量合成注意向量,包括:
将所述第一向量和解码状态向量的每个维度分别作为用于向量合成的神经网络的一个输入,使所述第一向量和解码状态向量相互作用,生成所述注意向量,所述第一向量和解码状态向量均包括多个维度。
3.根据权利要求1所述的方法,其特征在于,所述将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量,包括:
分别对所述对话历史信息中的每个对话语句进行编码,得到每个所述对话语句对应的第二向量,所述第二向量为对应的所述对话语句的表示;
将每个所述第二向量分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量。
4.根据权利要求1所述的方法,其特征在于,所述将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量,包括:
分别对所述对话历史信息中的每个对话语句进行编码,并在编码过程中将所述注意向量与所述对话语句一同输入编码器,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量。
5.根据权利要求1所述的方法,其特征在于,所述基于所述多个结果向量生成待解码向量,包括:
将所述多个结果向量分别作为用于特征提取的神经网络的一个输入,从而对所述多个结果向量的特征进行提取,生成所述待解码向量。
6.一种基于深度学习的对话装置,其特征在于,所述装置包括:
第一获取单元,用于获取待回复语句;
编码单元,用于对所述待回复语句进行编码,得到第一向量,所述第一向量为所述待回复语句的表示;
第二获取单元,用于获取所述待回复语句对应的对话历史信息,所述对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;
合成单元,用于采用所述第一向量和解码状态向量合成注意向量,所述解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,所述注意向量用于表示搜索意图;
提取单元,用于将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量;
生成单元,用于基于所述多个结果向量生成待解码向量;
解码单元,用于对所述待解码向量进行解码,得到所述回复语句中的下一个词。
7.根据权利要求6所述的装置,其特征在于,所述合成单元,用于:
将所述第一向量和解码状态向量的每个维度分别作为用于向量合成的神经网络的一个输入,使所述第一向量和解码状态向量相互作用,生成所述注意向量,所述第一向量和解码状态向量均包括多个维度。
8.根据权利要求6所述的装置,其特征在于,所述提取单元,用于:
分别对所述对话历史信息中的每个对话语句进行编码,得到每个所述对话语句对应的第二向量,所述第二向量为对应的所述对话语句的表示;
将每个所述第二向量分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量。
9.根据权利要求6所述的装置,其特征在于,所述提取单元,用于:
分别对所述对话历史信息中的每个对话语句进行编码,并在编码过程中将所述注意向量与所述对话语句一同输入编码器,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量。
10.根据权利要求6所述的装置,其特征在于,所述生成单元,用于:
将所述多个结果向量分别作为用于特征提取的神经网络的一个输入,从而对所述多个结果向量的特征进行提取,生成所述待解码向量。
11.一种基于深度学习的对话设备,其特征在于,所述对话设备包括处理器、存储器以及通信接口;所述存储器用于存储软件程序以及模块,所述处理器通过运行或执行存储在所述存储器内的软件程序和/或模块实现:
获取待回复语句;
对所述待回复语句进行编码,得到第一向量,所述第一向量为所述待回复语句的表示;
获取所述待回复语句对应的对话历史信息,所述对话历史信息包括至少一轮对话语句,每轮对话语句包括两个对话语句;
采用所述第一向量和解码状态向量合成注意向量,所述解码状态向量用于表示输出回复语句中最近一个词时解码器的状态,所述注意向量用于表示搜索意图;
将每个所述对话语句分别与所述注意向量相互作用,以在每个对话语句中提取与所述搜索意图相关的信息,得到多个结果向量;
基于所述多个结果向量生成待解码向量;
对所述待解码向量进行解码,得到所述回复语句中的下一个词。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610876941.0A CN107885756B (zh) | 2016-09-30 | 2016-09-30 | 基于深度学习的对话方法、装置及设备 |
PCT/CN2017/086609 WO2018058994A1 (zh) | 2016-09-30 | 2017-05-31 | 基于深度学习的对话方法、装置及设备 |
US16/369,579 US11449678B2 (en) | 2016-09-30 | 2019-03-29 | Deep learning based dialog method, apparatus, and device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610876941.0A CN107885756B (zh) | 2016-09-30 | 2016-09-30 | 基于深度学习的对话方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107885756A true CN107885756A (zh) | 2018-04-06 |
CN107885756B CN107885756B (zh) | 2020-05-08 |
Family
ID=61763147
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610876941.0A Active CN107885756B (zh) | 2016-09-30 | 2016-09-30 | 基于深度学习的对话方法、装置及设备 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11449678B2 (zh) |
CN (1) | CN107885756B (zh) |
WO (1) | WO2018058994A1 (zh) |
Cited By (28)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108829667A (zh) * | 2018-05-28 | 2018-11-16 | 南京柯基数据科技有限公司 | 一种基于记忆网络的多轮对话下的意图识别方法 |
CN109299237A (zh) * | 2018-09-26 | 2019-02-01 | 苏州大学 | 基于行动者评论家强化学习算法的循环网络人机对话方法 |
CN109543199A (zh) * | 2018-11-28 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 一种文本翻译的方法以及相关装置 |
CN109597881A (zh) * | 2018-12-17 | 2019-04-09 | 北京百度网讯科技有限公司 | 匹配度确定方法、装置、设备和介质 |
CN109918484A (zh) * | 2018-12-28 | 2019-06-21 | 中国人民大学 | 对话生成方法和装置 |
CN109977202A (zh) * | 2019-03-06 | 2019-07-05 | 北京西屋信维科技发展有限公司 | 一种智能客服系统及其控制方法 |
CN109977212A (zh) * | 2019-03-28 | 2019-07-05 | 清华大学深圳研究生院 | 对话机器人的回复内容生成方法和终端设备 |
CN110222155A (zh) * | 2019-06-13 | 2019-09-10 | 北京百度网讯科技有限公司 | 知识选择策略的对话生成方法、装置以及终端 |
CN110765338A (zh) * | 2018-07-26 | 2020-02-07 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
CN110851573A (zh) * | 2018-07-27 | 2020-02-28 | 北京京东尚科信息技术有限公司 | 语句处理方法、系统和电子设备 |
CN110851575A (zh) * | 2019-09-23 | 2020-02-28 | 上海深芯智能科技有限公司 | 一种对话生成系统及对话实现方法 |
CN110851574A (zh) * | 2018-07-27 | 2020-02-28 | 北京京东尚科信息技术有限公司 | 语句处理方法、装置和系统 |
CN110858226A (zh) * | 2018-08-07 | 2020-03-03 | 北京京东尚科信息技术有限公司 | 对话管理方法和装置 |
CN111160010A (zh) * | 2019-12-31 | 2020-05-15 | 苏州思必驰信息科技有限公司 | 缩略句理解模型的训练方法及系统 |
CN111353035A (zh) * | 2020-03-11 | 2020-06-30 | 镁佳(北京)科技有限公司 | 人机对话方法、装置、可读存储介质及电子设备 |
CN111400468A (zh) * | 2020-03-11 | 2020-07-10 | 苏州思必驰信息科技有限公司 | 对话状态跟踪系统及方法和人机对话装置及方法 |
CN111428015A (zh) * | 2020-03-20 | 2020-07-17 | 腾讯科技(深圳)有限公司 | 一种信息生成方法、装置、设备及存储介质 |
CN111428483A (zh) * | 2020-03-31 | 2020-07-17 | 华为技术有限公司 | 语音交互方法、装置和终端设备 |
CN111694934A (zh) * | 2020-04-24 | 2020-09-22 | 中国电力科学研究院有限公司 | 一种端到端的对话方法和系统 |
CN111694931A (zh) * | 2020-06-11 | 2020-09-22 | 北京百度网讯科技有限公司 | 要素获取方法及装置 |
CN111783429A (zh) * | 2020-07-31 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、电子设备以及存储介质 |
CN112100354A (zh) * | 2020-09-16 | 2020-12-18 | 北京奇艺世纪科技有限公司 | 人机对话方法、装置、设备及存储介质 |
CN112364665A (zh) * | 2020-10-11 | 2021-02-12 | 广州九四智能科技有限公司 | 一种语义提取方法、装置、计算机设备及存储介质 |
CN112667786A (zh) * | 2019-10-15 | 2021-04-16 | 财团法人资讯工业策进会 | 产生一对话状态追踪模型的装置及方法 |
CN112989013A (zh) * | 2021-04-30 | 2021-06-18 | 武汉龙津科技有限公司 | 一种对话处理方法、装置、电子设备及存储介质 |
CN113553860A (zh) * | 2021-06-10 | 2021-10-26 | 合肥工业大学 | 基于多任务学习的回复多样性多轮对话生成方法和系统 |
CN113836932A (zh) * | 2020-06-08 | 2021-12-24 | 阿里巴巴集团控股有限公司 | 交互方法、装置和系统,以及智能设备 |
CN112199481B (zh) * | 2020-09-30 | 2023-06-16 | 中国人民大学 | 一种采用pcc对话模型的单用户个性化对话方法和系统 |
Families Citing this family (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107632987B (zh) * | 2016-07-19 | 2018-12-07 | 腾讯科技(深圳)有限公司 | 一种对话生成方法及装置 |
KR20190019748A (ko) * | 2017-08-18 | 2019-02-27 | 삼성전자주식회사 | 자연어 생성 방법 및 장치 |
US10878808B1 (en) * | 2018-01-09 | 2020-12-29 | Amazon Technologies, Inc. | Speech processing dialog management |
CN108874972B (zh) * | 2018-06-08 | 2021-10-19 | 合肥工业大学 | 一种基于深度学习的多轮情感对话方法 |
KR102133825B1 (ko) * | 2018-06-22 | 2020-07-16 | 서강대학교 산학협력단 | 단어자질을 강화한 음성 대화 방법 및 시스템 |
CN109299229B (zh) * | 2018-11-30 | 2021-02-19 | 神思电子技术股份有限公司 | 一种自然语言对话系统意图深度学习方法 |
CN109740158B (zh) * | 2018-12-29 | 2023-04-07 | 安徽省泰岳祥升软件有限公司 | 一种文本语义解析方法及装置 |
CN110147533B (zh) * | 2019-01-24 | 2023-08-29 | 腾讯科技(深圳)有限公司 | 编码方法、装置、设备及存储介质 |
CN111625629B (zh) * | 2019-02-28 | 2023-08-25 | Tcl科技集团股份有限公司 | 任务型对话机器人应答方法、装置及机器人、存储介质 |
US10565317B1 (en) * | 2019-05-07 | 2020-02-18 | Moveworks, Inc. | Apparatus for improving responses of automated conversational agents via determination and updating of intent |
CN110413729B (zh) * | 2019-06-25 | 2023-04-07 | 江南大学 | 基于尾句-上下文双重注意力模型的多轮对话生成方法 |
CN110390107B (zh) * | 2019-07-26 | 2023-04-18 | 腾讯科技(深圳)有限公司 | 基于人工智能的下文关系检测方法、装置及计算机设备 |
CN111159378B (zh) * | 2019-12-30 | 2023-07-18 | 支付宝(杭州)信息技术有限公司 | 对问题描述信息进行分类的方法及装置 |
CN111522921B (zh) * | 2020-03-06 | 2023-06-02 | 国网浙江省电力有限公司营销服务中心 | 一种基于语句改写的面向端到端对话的数据增强方法 |
CN111522923B (zh) * | 2020-03-31 | 2023-04-28 | 华东师范大学 | 一种多轮任务式对话状态追踪方法 |
CN113495943B (zh) * | 2020-04-02 | 2023-07-14 | 山东大学 | 一种基于知识追踪与转移的人机对话方法 |
CN111753068B (zh) * | 2020-05-27 | 2024-03-26 | 江汉大学 | 一种开放域对话回复自动生成方法、系统及存储介质 |
CN113761136B (zh) * | 2020-06-02 | 2024-07-19 | 阿里巴巴集团控股有限公司 | 对话处理、信息处理、模型训练方法、设备及存储介质 |
CN111930910B (zh) * | 2020-08-12 | 2023-11-28 | 安徽淘云科技股份有限公司 | 标准回复确定方法、装置、设备及存储介质 |
CN112100349B (zh) * | 2020-09-03 | 2024-03-19 | 深圳数联天下智能科技有限公司 | 一种多轮对话方法、装置、电子设备及存储介质 |
CN112069300B (zh) * | 2020-09-04 | 2024-07-30 | 中国平安人寿保险股份有限公司 | 任务型对话的语义识别方法、装置、电子设备及存储介质 |
KR102654480B1 (ko) * | 2020-11-05 | 2024-04-04 | 한국전자통신연구원 | 언어학습을 위한 지식 기반 대화 시스템 및 방법 |
CN112307304B (zh) * | 2020-11-16 | 2024-04-12 | 深圳市欢太科技有限公司 | 热点搜索方法、装置、终端及存储介质 |
CN112364148B (zh) * | 2020-12-08 | 2022-05-24 | 吉林大学 | 一种基于深度学习方法的生成型聊天机器人 |
CN112783324B (zh) * | 2021-01-14 | 2023-12-01 | 科大讯飞股份有限公司 | 人机交互方法及设备、计算机存储介质 |
CN112988967A (zh) * | 2021-03-08 | 2021-06-18 | 华南理工大学 | 基于两阶段解码的对话生成方法及装置、介质和计算设备 |
CN113111241B (zh) * | 2021-04-08 | 2022-12-06 | 浙江大学 | 一种博弈对话中基于对话历史和强化学习的多轮对话方法 |
CN113158062A (zh) * | 2021-05-08 | 2021-07-23 | 清华大学深圳国际研究生院 | 一种基于异构图神经网络的用户意图识别方法及装置 |
CN113255372B (zh) * | 2021-05-17 | 2024-06-14 | 北京小米移动软件有限公司 | 信息生成方法及装置、电子设备及存储介质 |
CN113505198B (zh) * | 2021-07-09 | 2023-12-29 | 和美(深圳)信息技术股份有限公司 | 关键词驱动的生成式对话回复方法、装置及电子设备 |
CN113626560B (zh) * | 2021-08-03 | 2024-05-07 | 辽宁大学 | 一种基于强化学习的多样性对话数据增强方法 |
CN113609275B (zh) * | 2021-08-24 | 2024-03-26 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、设备及存储介质 |
CN115145980B (zh) * | 2022-07-13 | 2024-07-09 | 平安科技(深圳)有限公司 | 对话回复生成方法和装置、电子设备及存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050267753A1 (en) * | 2000-09-25 | 2005-12-01 | Yin-Pin Yang | Distributed speech recognition using dynamically determined feature vector codebook size |
CN101010934A (zh) * | 2004-09-10 | 2007-08-01 | 微软公司 | 机器学习 |
CN100371926C (zh) * | 2004-07-26 | 2008-02-27 | 索尼株式会社 | 通过响应输入语句而输出应答语句的交互对话装置和方法 |
CN105159996A (zh) * | 2015-09-07 | 2015-12-16 | 百度在线网络技术(北京)有限公司 | 基于人工智能的深度问答服务提供方法和装置 |
CN105511608A (zh) * | 2015-11-30 | 2016-04-20 | 北京光年无限科技有限公司 | 基于智能机器人的交互方法及装置、智能机器人 |
CN105787560A (zh) * | 2016-03-18 | 2016-07-20 | 北京光年无限科技有限公司 | 基于循环神经网络的对话数据交互处理方法及装置 |
Family Cites Families (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0543329B1 (en) | 1991-11-18 | 2002-02-06 | Kabushiki Kaisha Toshiba | Speech dialogue system for facilitating human-computer interaction |
US8086672B2 (en) * | 2000-06-17 | 2011-12-27 | Microsoft Corporation | When-free messaging |
AUPR579301A0 (en) | 2001-06-19 | 2001-07-12 | Syrinx Speech Systems Pty Limited | Neural network post-processor |
EP1493993A1 (en) | 2003-06-30 | 2005-01-05 | Harman Becker Automotive Systems GmbH | Method and device for controlling a speech dialog system |
US20080096533A1 (en) * | 2006-10-24 | 2008-04-24 | Kallideas Spa | Virtual Assistant With Real-Time Emotions |
US8812323B2 (en) | 2007-10-11 | 2014-08-19 | Agency For Science, Technology And Research | Dialogue system and a method for executing a fully mixed initiative dialogue (FMID) interaction between a human and a machine |
DE102007051015A1 (de) | 2007-10-25 | 2009-04-30 | Bayerische Motoren Werke Aktiengesellschaft | Dialogsystem für ein Kraftfahrzeug |
DE102007051014A1 (de) | 2007-10-25 | 2009-04-30 | Bayerische Motoren Werke Aktiengesellschaft | Dialogsystem |
US8156060B2 (en) * | 2008-02-27 | 2012-04-10 | Inteliwise Sp Z.O.O. | Systems and methods for generating and implementing an interactive man-machine web interface based on natural language processing and avatar virtual agent based character |
US20140279050A1 (en) | 2008-05-21 | 2014-09-18 | The Delfin Project, Inc. | Dynamic chatbot |
WO2011019444A1 (en) * | 2009-06-11 | 2011-02-17 | Chacha Search, Inc. | Method and system of providing a search tool |
US9495331B2 (en) * | 2011-09-19 | 2016-11-15 | Personetics Technologies Ltd. | Advanced system and method for automated-context-aware-dialog with human users |
WO2013155619A1 (en) * | 2012-04-20 | 2013-10-24 | Sam Pasupalak | Conversational agent |
US9396437B2 (en) * | 2013-11-11 | 2016-07-19 | Mera Software Services, Inc. | Interface apparatus and method for providing interaction of a user with network entities |
US9189742B2 (en) * | 2013-11-20 | 2015-11-17 | Justin London | Adaptive virtual intelligent agent |
US20150178392A1 (en) * | 2013-12-20 | 2015-06-25 | Chacha Search, Inc. | Method and system of providing a search tool |
CN105095182B (zh) | 2014-05-22 | 2018-11-06 | 华为技术有限公司 | 一种回复信息推荐方法及装置 |
CN104217226B (zh) * | 2014-09-09 | 2017-07-11 | 天津大学 | 基于深度神经网络与条件随机场的对话行为识别方法 |
US10691698B2 (en) * | 2014-11-06 | 2020-06-23 | International Business Machines Corporation | Automatic near-real-time prediction, classification, and notification of events in natural language systems |
US10091140B2 (en) * | 2015-05-31 | 2018-10-02 | Microsoft Technology Licensing, Llc | Context-sensitive generation of conversational responses |
US11113598B2 (en) * | 2015-06-01 | 2021-09-07 | Salesforce.Com, Inc. | Dynamic memory network |
US11010550B2 (en) * | 2015-09-29 | 2021-05-18 | Apple Inc. | Unified language modeling framework for word prediction, auto-completion and auto-correction |
US20170091780A1 (en) * | 2015-09-29 | 2017-03-30 | 24/7 Customer, Inc. | Method and apparatus for facilitating customer interactions with enterprises |
JP5907469B2 (ja) * | 2015-10-16 | 2016-04-26 | 洋彰 宮崎 | 言語入力により自律的に知識を拡大する人工知能装置 |
CN106844368B (zh) * | 2015-12-03 | 2020-06-16 | 华为技术有限公司 | 用于人机对话的方法、神经网络系统和用户设备 |
US10268671B2 (en) * | 2015-12-31 | 2019-04-23 | Google Llc | Generating parse trees of text segments using neural networks |
CN105975531B (zh) * | 2016-04-29 | 2019-07-19 | 华南师范大学 | 基于对话知识库的机器人对话控制方法和系统 |
US10949748B2 (en) * | 2016-05-13 | 2021-03-16 | Microsoft Technology Licensing, Llc | Deep learning of bots through examples and experience |
US9807037B1 (en) * | 2016-07-08 | 2017-10-31 | Asapp, Inc. | Automatically suggesting completions of text |
US10546066B2 (en) * | 2016-08-31 | 2020-01-28 | Microsoft Technology Licensing, Llc | End-to-end learning of dialogue agents for information access |
US10719770B2 (en) * | 2016-09-28 | 2020-07-21 | International Business Machines Corporation | System and method for enhanced chatflow application |
US11095590B2 (en) * | 2016-09-28 | 2021-08-17 | International Business Machines Corporation | System and method for enhanced chatflow application |
-
2016
- 2016-09-30 CN CN201610876941.0A patent/CN107885756B/zh active Active
-
2017
- 2017-05-31 WO PCT/CN2017/086609 patent/WO2018058994A1/zh active Application Filing
-
2019
- 2019-03-29 US US16/369,579 patent/US11449678B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050267753A1 (en) * | 2000-09-25 | 2005-12-01 | Yin-Pin Yang | Distributed speech recognition using dynamically determined feature vector codebook size |
CN100371926C (zh) * | 2004-07-26 | 2008-02-27 | 索尼株式会社 | 通过响应输入语句而输出应答语句的交互对话装置和方法 |
CN101010934A (zh) * | 2004-09-10 | 2007-08-01 | 微软公司 | 机器学习 |
CN105159996A (zh) * | 2015-09-07 | 2015-12-16 | 百度在线网络技术(北京)有限公司 | 基于人工智能的深度问答服务提供方法和装置 |
CN105511608A (zh) * | 2015-11-30 | 2016-04-20 | 北京光年无限科技有限公司 | 基于智能机器人的交互方法及装置、智能机器人 |
CN105787560A (zh) * | 2016-03-18 | 2016-07-20 | 北京光年无限科技有限公司 | 基于循环神经网络的对话数据交互处理方法及装置 |
Non-Patent Citations (1)
Title |
---|
俞凯 等: "任务型人机对话系统中的认知技术——概念、进展及其未来", 《计算机学报》 * |
Cited By (37)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108829667A (zh) * | 2018-05-28 | 2018-11-16 | 南京柯基数据科技有限公司 | 一种基于记忆网络的多轮对话下的意图识别方法 |
CN110765338A (zh) * | 2018-07-26 | 2020-02-07 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和用于数据处理的装置 |
US12039281B2 (en) | 2018-07-27 | 2024-07-16 | Beijing Jingdong Shangke Information Technology Co., Ltd. | Method and system for processing sentence, and electronic device |
CN110851574A (zh) * | 2018-07-27 | 2020-02-28 | 北京京东尚科信息技术有限公司 | 语句处理方法、装置和系统 |
CN110851573A (zh) * | 2018-07-27 | 2020-02-28 | 北京京东尚科信息技术有限公司 | 语句处理方法、系统和电子设备 |
CN110858226A (zh) * | 2018-08-07 | 2020-03-03 | 北京京东尚科信息技术有限公司 | 对话管理方法和装置 |
CN109299237A (zh) * | 2018-09-26 | 2019-02-01 | 苏州大学 | 基于行动者评论家强化学习算法的循环网络人机对话方法 |
CN109299237B (zh) * | 2018-09-26 | 2020-06-16 | 苏州大学 | 基于行动者评论家强化学习算法的循环网络人机对话方法 |
CN109543199B (zh) * | 2018-11-28 | 2022-06-10 | 腾讯科技(深圳)有限公司 | 一种文本翻译的方法以及相关装置 |
CN109543199A (zh) * | 2018-11-28 | 2019-03-29 | 腾讯科技(深圳)有限公司 | 一种文本翻译的方法以及相关装置 |
CN109597881A (zh) * | 2018-12-17 | 2019-04-09 | 北京百度网讯科技有限公司 | 匹配度确定方法、装置、设备和介质 |
CN109918484A (zh) * | 2018-12-28 | 2019-06-21 | 中国人民大学 | 对话生成方法和装置 |
CN109918484B (zh) * | 2018-12-28 | 2020-12-15 | 中国人民大学 | 对话生成方法和装置 |
CN109977202A (zh) * | 2019-03-06 | 2019-07-05 | 北京西屋信维科技发展有限公司 | 一种智能客服系统及其控制方法 |
CN109977212A (zh) * | 2019-03-28 | 2019-07-05 | 清华大学深圳研究生院 | 对话机器人的回复内容生成方法和终端设备 |
CN109977212B (zh) * | 2019-03-28 | 2020-11-24 | 清华大学深圳研究生院 | 对话机器人的回复内容生成方法和终端设备 |
CN110222155B (zh) * | 2019-06-13 | 2020-10-02 | 北京百度网讯科技有限公司 | 知识选择策略的对话生成方法、装置以及终端 |
CN110222155A (zh) * | 2019-06-13 | 2019-09-10 | 北京百度网讯科技有限公司 | 知识选择策略的对话生成方法、装置以及终端 |
CN110851575A (zh) * | 2019-09-23 | 2020-02-28 | 上海深芯智能科技有限公司 | 一种对话生成系统及对话实现方法 |
CN112667786A (zh) * | 2019-10-15 | 2021-04-16 | 财团法人资讯工业策进会 | 产生一对话状态追踪模型的装置及方法 |
CN111160010A (zh) * | 2019-12-31 | 2020-05-15 | 苏州思必驰信息科技有限公司 | 缩略句理解模型的训练方法及系统 |
CN111160010B (zh) * | 2019-12-31 | 2023-04-18 | 思必驰科技股份有限公司 | 缩略句理解模型的训练方法及系统 |
CN111400468A (zh) * | 2020-03-11 | 2020-07-10 | 苏州思必驰信息科技有限公司 | 对话状态跟踪系统及方法和人机对话装置及方法 |
CN111353035A (zh) * | 2020-03-11 | 2020-06-30 | 镁佳(北京)科技有限公司 | 人机对话方法、装置、可读存储介质及电子设备 |
CN111428015A (zh) * | 2020-03-20 | 2020-07-17 | 腾讯科技(深圳)有限公司 | 一种信息生成方法、装置、设备及存储介质 |
WO2021196981A1 (zh) * | 2020-03-31 | 2021-10-07 | 华为技术有限公司 | 语音交互方法、装置和终端设备 |
CN111428483A (zh) * | 2020-03-31 | 2020-07-17 | 华为技术有限公司 | 语音交互方法、装置和终端设备 |
CN111694934A (zh) * | 2020-04-24 | 2020-09-22 | 中国电力科学研究院有限公司 | 一种端到端的对话方法和系统 |
CN113836932A (zh) * | 2020-06-08 | 2021-12-24 | 阿里巴巴集团控股有限公司 | 交互方法、装置和系统,以及智能设备 |
CN111694931A (zh) * | 2020-06-11 | 2020-09-22 | 北京百度网讯科技有限公司 | 要素获取方法及装置 |
CN111783429A (zh) * | 2020-07-31 | 2020-10-16 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、电子设备以及存储介质 |
CN111783429B (zh) * | 2020-07-31 | 2024-06-07 | 腾讯科技(深圳)有限公司 | 信息处理方法、装置、电子设备以及存储介质 |
CN112100354A (zh) * | 2020-09-16 | 2020-12-18 | 北京奇艺世纪科技有限公司 | 人机对话方法、装置、设备及存储介质 |
CN112199481B (zh) * | 2020-09-30 | 2023-06-16 | 中国人民大学 | 一种采用pcc对话模型的单用户个性化对话方法和系统 |
CN112364665A (zh) * | 2020-10-11 | 2021-02-12 | 广州九四智能科技有限公司 | 一种语义提取方法、装置、计算机设备及存储介质 |
CN112989013A (zh) * | 2021-04-30 | 2021-06-18 | 武汉龙津科技有限公司 | 一种对话处理方法、装置、电子设备及存储介质 |
CN113553860A (zh) * | 2021-06-10 | 2021-10-26 | 合肥工业大学 | 基于多任务学习的回复多样性多轮对话生成方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US11449678B2 (en) | 2022-09-20 |
CN107885756B (zh) | 2020-05-08 |
US20190228070A1 (en) | 2019-07-25 |
WO2018058994A1 (zh) | 2018-04-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107885756A (zh) | 基于深度学习的对话方法、装置及设备 | |
CN112735373B (zh) | 语音合成方法、装置、设备及存储介质 | |
CN109785824B (zh) | 一种语音翻译模型的训练方法及装置 | |
WO2020215551A1 (zh) | 合成中文语音的方法、装置、设备及存储介质 | |
CN107632987B (zh) | 一种对话生成方法及装置 | |
CN108153913B (zh) | 回复信息生成模型的训练方法、回复信息生成方法及装置 | |
CN109979429A (zh) | 一种tts的方法及系统 | |
CN108304439A (zh) | 一种语义模型优化方法、装置及智能设备、存储介质 | |
CN113158665A (zh) | 一种基于文本摘要生成与双向语料改善对话文本生成的方法 | |
CN111625660A (zh) | 对话生成方法、视频评论方法、装置、设备及存储介质 | |
CN108170686A (zh) | 文本翻译方法及装置 | |
CN108595436A (zh) | 情感对话内容的生成方法和系统、存储介质 | |
CN109933809B (zh) | 一种翻译方法及装置、翻译模型的训练方法及装置 | |
CN110457713A (zh) | 基于机器翻译模型的翻译方法、装置、设备和存储介质 | |
CN112463942B (zh) | 文本处理方法、装置、电子设备及计算机可读存储介质 | |
CN113450765A (zh) | 语音合成方法、装置、设备及存储介质 | |
CN112767917A (zh) | 语音识别方法、装置及存储介质 | |
CN113963359B (zh) | 文本识别模型训练方法、文本识别方法、装置及电子设备 | |
CN113656569A (zh) | 一种基于上下文信息推理的生成式对话方法 | |
CN112735377B (zh) | 语音合成方法、装置、终端设备及存储介质 | |
CN112182162B (zh) | 一种基于记忆神经网络的个性化对话方法和系统 | |
CN118015110A (zh) | 人脸图像生成方法及装置、计算机可读存储介质、终端 | |
CN112861546A (zh) | 获取文本语义相似值的方法、装置、存储介质及电子设备 | |
CN117012177A (zh) | 语音合成方法、电子设备和存储介质 | |
CN115690238A (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 |