CN109783621B - 对话生成方法、装置及设备 - Google Patents
对话生成方法、装置及设备 Download PDFInfo
- Publication number
- CN109783621B CN109783621B CN201811545176.XA CN201811545176A CN109783621B CN 109783621 B CN109783621 B CN 109783621B CN 201811545176 A CN201811545176 A CN 201811545176A CN 109783621 B CN109783621 B CN 109783621B
- Authority
- CN
- China
- Prior art keywords
- target
- sentence
- determining
- statement
- semantic information
- 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
Abstract
本发明实施例提供一种对话生成方法、装置及设备,所述方法包括:获取第一语句对应的至少两个语义信息;在所述至少两个语义信息中确定目标语义信息;根据所述目标语义信息确定所述第一语句对应的应答信息。用于提高应答信息与第一语句的相关性。
Description
技术领域
本发明实施例涉及人工智能领域,尤其涉及一种对话生成方法、装置及设备。
背景技术
对话生成技术已经应用于实际生活中,例如,机器人小冰可以根据用户输入的语音信息、或者文字信息与用户进行交流。
目前,对话生成技术首先将用户当前的输入的语音信息、或者文字信息进行编码处理,以获取与用户输入信息相对应的一个语义信息,并根据该语义信息与用户进行交流。在上述过程中,由于根据用户当前的输入的语音信息、或者文字信息只能获取一个语义信息,若在该语义信息错误、或者产生歧义时,导致回复用户信息与用户输入信息的相关性降低。
发明内容
本发明实施例提供一种对话生成方法、装置及设备,用于提高应答信息与第一语句的相关性。
第一方面,本发明实施例提供一种对话生成方法,包括:
获取第一语句对应的至少两个语义信息;
在所述至少两个语义信息中确定目标语义信息;
根据所述目标语义信息确定所述第一语句对应的应答信息。
在一种可能的实施例方式中,所述获取第一语句对应的至少两个语义信息,包括:
获取所述第一语句对应的第一矩阵;
根据所述第一矩阵和至少两个预设向量,确定至少两组权重值,每组权重值包括所述第一语句中每个词汇的权重值;
根据所述至少两组权重值和所述第一矩阵,确定所述至少两个语义信息。
在另一种可能的实施例方式中,所述获取所述第一语句对应的第一矩阵,包括:
在所述第一语句中确定多个词汇;
根据每个词汇对应的词向量确定所述第一矩阵。
在另一种可能的实施例方式中,所述在所述至少两个语义信息中确定目标语义信息,包括:
获取历史对话信息,所述历史对话信息中包括多个第二语句;
根据所述历史对话信息和所述至少两个语义信息,确定所述目标语义信息。
在另一种可能的实施例方式中,所述根据所述历史对话信息和所述至少两个语义信息,确定所述目标语义信息,包括:
在所述历史对话信息中确定目标词汇,所述目标词汇为所述历史对话信息中与所述第一语句的相似度最大的N个词汇,所述N为大于或者等于1的整数;
根据所述目标词汇和所述至少两个语义信息,确定所述目标语义信息。
在另一种可能的实施例方式中,所述在所述历史对话信息中确定目标词汇,包括:
获取所述历史对话信息中每个第二语句与所述第一语句的相似度,所述历史对话信息包括多个语句对,一个语句对中包括一个语句和所述一个语句对应的应答语句;
根据每个第二语句与所述第一语句的相似度,在所述第二语句中确定目标第二语句;
根据所述目标第二语句确定所述目标词汇。
在另一种可能的实施例方式中,所述根据所述目标第二语句确定所述目标词汇,包括:
获取所述目标第二语句中每个词汇与所述第一语句的相似度;
根据所述目标第二语句中每个词汇与所述第一语句的相似度,在所述目标第二语句的词汇中确定与所述第一语句的相似度最大的M个第一词汇,所述M为大于或者等于1的整数;
根据所述目标第二语句和所述多个第一词汇确定为所述目标词汇。
在另一种可能的实施例方式中,所述根据所述目标词汇和所述至少两个语义信息,确定所述目标语义信息,包括:
获取每个语义信息与所述目标词汇的相似度;
根据每个语义信息与所述目标词汇的相似度,在所述至少两个语义信息中确定所述目标语义信息。
在另一种可能的实施例方式中,其特征在于,所述根据所述目标语义信息确定所述第一语句对应的应答信息,包括:
根据所述目标语义信息和所述目标词汇,确定所述第一语句对应的应答信息。
第二方面,本发明实施例提供一种对话生成装置,包括第一获取模块、第一确定模块和第二确定模块,其中,
所述第一获取模块用于,获取第一语句对应的至少两个语义信息;
所述第一确定模块用于,在所述至少两个语义信息中确定目标语义信息;
所述第二确定模块用于,根据所述目标语义信息确定所述第一语句对应的应答信息。
在一种可能的实施方式中,所述第一获取模块具体用于:
获取所述第一语句对应的第一矩阵;
根据所述第一矩阵和至少两个预设向量,确定至少两组权重值,每组权重值包括所述第一语句中每个词汇的权重值;
根据所述至少两组权重值和所述第一矩阵,确定所述至少两个语义信息。
在另一种可能的实施方式中,所述第一获取模块具体用于:
在所述第一语句中确定多个词汇;
根据每个词汇对应的词向量确定所述第一矩阵。
在另一种可能的实施方式中,所述第一确定模块具体用于:
获取历史对话信息,所述历史对话信息中包括多个第二语句;
根据所述历史对话信息和所述至少两个语义信息,确定所述目标语义信息。
在另一种可能的实施方式中,所述第一确定模块具体用于:
在所述历史对话信息中确定目标词汇,所述目标词汇为所述历史对话信息中与所述第一语句的相似度最大的N个词汇,所述N为大于或者等于1的整数;
根据所述目标词汇和所述至少两个语义信息,确定所述目标语义信息。
在另一种可能的实施方式中,所述第一确定模块具体用于:
获取所述历史对话信息中每个第二语句与所述第一语句的相似度,所述历史对话信息包括多个语句对,一个语句对中包括一个语句和所述一个语句对应的应答语句;
根据每个第二语句与所述第一语句的相似度,在所述第二语句中确定目标第二语句;
根据所述目标第二语句确定所述目标词汇。
在另一种可能的实施方式中,所述第一确定模块具体用于:
获取所述目标第二语句中每个词汇与所述第一语句的相似度;
根据所述目标第二语句中每个词汇与所述第一语句的相似度,在所述目标第二语句的词汇中确定与所述第一语句的相似度最大的M个第一词汇,所述M为大于或者等于1的整数;
根据所述目标第二语句和所述多个第一词汇确定为所述目标词汇。
在另一种可能的实施方式中,所述第一确定模块具体用于:
获取每个语义信息与所述目标词汇的相似度;
根据每个语义信息与所述目标词汇的相似度,在所述至少两个语义信息中确定所述目标语义信息。
在另一种可能的实施方式中,其特征在于,所述第二确定模块具体用于:
根据所述目标语义信息和所述目标词汇,确定所述第一语句对应的应答信息。
第三方面,本发明实施例提供一种对话生成装置,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行上述第一方面任一项所述的对话生成方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现上述第一方面任一项所述的对话生成方法。
本发明实施例提供的对话生成方法、装置及设备,获取用户输入的第一语句对应的至少两个语义信息,在至少两个语义信息中确定目标语义信息,根据目标语义信息确定与第一语句对应的应答信息。在上述方法中,由于根据用户的输入第一语句,可以确定出与第一语句对应多个语义信息,因此,达到了对用户输入的第一语句进行详细的解读的目的,进一步地,可有效的避免在第一语句仅有一个语义信息的情况下,若在对第一语句的解读错误,可使应答信息与第一语句无关的问题。另外,在本身申请提供的对话生成方法中,在多个语义信息中确定目标语义信息,并根据目标语义信息确定出与第一语句对应的应答信息,使得应答信息更加准确,且提高了应答信息与第一语句的相关性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的对话生成方法的应用场景示意图;
图2为本发明实施例提供的对话生成方法的流程示意图一;
图3为本发明实施例提供的确定至少两个语义信息的方法流程示意图;
图4为本发明实施例提供的语义信息确定模块的结构示意图;
图5为本发明实施例提供的对话生成方法的流程示意图二;
图6为本发明实施例提供的一种用于生成应答信息的结构示意图;
图7为本发明实施例提供的一种对话生成装置的结构示意图;
图8为本发明实施例提供的对话生成装置的硬件结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的对话生成方法的应用场景示意图。具体的,请参见图1,在终端设备3中显示了用户与机器人的聊天界面,该聊天界面中记录了当前人与机器人的聊天内容,例如:个人记忆(聊天信息)1,在终端设备3中还可以显示人与人的聊天界面(图1中未示出),在人与人的聊天界面中记录了人与人的聊天内容,例如:多人记忆(聊天信息对)2。对话生成装置可以从个人记忆(聊天信息)1中提取出重要词汇“请假”,从多人记忆(聊天信息对)2中提取出重要词汇“三天”。则,当用户在用户与机器人的聊天界面中输入“大概去玩几天?”时,对话生成装置会根据重要词汇“请假”和“三天”,确定、并使机器人回复语句“哈哈,我请假了,去玩三天!”。
可选的,在多人记忆(聊天信息对)2示例性的给出两对聊天信息“Q1:玩几天呢?-R1:三天呀。”、“Q2:大概需要几天呢?-R2:玩三天吧,住一起能便宜点。”。
需要说明的是,在机器人回复“哈哈,我请假了,去玩三天!”之前,所述对话生成装置还需要确定用户输入的“大概去玩几天?”的至少两种语义,具体的,请参见图2实施例。
本发明实施例提供的对话生成方法,参考了个人记忆和多人记忆,使得对话生成装置确定、并使机器人的回复与用户输入的语句具有更强的相关性。
下面,通过具体实施例对本申请所示的技术方案进行详细说明。需要说明的是,下面几个具体实施例可以相互结合,对于相同或相似的内容,在不同的实施例中不再进行重复说明。
图2为本发明实施例提供的对话生成方法的流程示意图一。请参见图2。对话生成方法包括:
S201:获取第一语句对应的至少两个语义信息。
可选的,本发明实施例的执行主体为对话生成装置。可选的,所述对话生成装置可以通过软件实现,也可以通过软件和硬件的结合来实现。
可选的,第一语句为用户输入到对话生成装置的一句话、或者一条语音。
可选的,第一语句可以为中文、英文等。具体的,本申请中不限定第一一句话的语言类型。
例如,第一语句为“大概去玩几天?”,则对第一语句进行词汇拆分处理后为“大概”、“去”、“玩”和“几天”四个词。
S202:在至少两个语义信息中确定目标语义信息。
可选的,可以根据历史对话信息,在至少两个语义信息中确定目标语义信息。
可选的,历史对话信息包括多个第二语句。
可选的,多个第二语句中包括了人-机历史对话信息(即个人记忆)、人-人历史对话信息(即人人记忆)。
可选的,个人记忆包括在获取用户输入的第一语句之前,用户与机器人在当前对话框中的对话信息。
可选的,人人记忆包括在获取用户输入的第一语句之前,用于与他人在当前对话框中的对话信息。
可选的,在历史对话信息中,确定与第一语句相关的目标词汇z,其中z表示一个向量。具体的,可参见图5实施例S506中确定目标词汇z的方法。
其中,γ代表语义选择器的软状态向量,softmax()代表归一化操作,·代表乘法运算,代表由(i取1~r之间的任何一个整数)构成的第二矩阵,具体的, 代表硬决策向量,GS()代表冈贝尔柔性最大值操作;ce代表目标语义信息。
S203:根据目标语义信息确定第一语句对应的应答信息。
可选的,根据目标语义信息ce和目标词汇z确定控制向量o,并根据控制向量o确定第一语句对应的应答信息。
具体的,可以通过如下可行的公式5确定控制向量o:
o=ce+z (公式5)
可选的,可以对控制向量o进行解码操作,以获取第一语句对应的应答信息。
本发明实施例提供的对话生成方法,获取用户输入的第一语句对应的至少两个语义信息,在至少两个语义信息中确定目标语义信息,根据目标语义信息确定与第一语句对应的应答信息。在上述方法中,由于根据用户的输入第一语句,可以确定出与第一语句对应多个语义信息,因此,达到了对用户输入的第一语句进行详细的解读的目的,进一步地,可有效的避免在第一语句仅有一个语义信息的情况下,若在对第一语句的解读错误,可使应答信息与第一语句无关的问题。另外,在本身申请提供的对话生成方法中,在多个语义信息中确定目标语义信息,并根据目标语义信息确定出与第一语句对应的应答信息,使得应答信息更加正确,且提高了应答信息与第一语句的相关性。
在上述任一实施例的基础上,下面结合图3,就对话生成方法中确定至少两个语义信息的过程做进一步的说明。具体的,请参见图3。
图3为本发明实施例提供的确定至少两个语义信息的方法流程示意图,请参见图3,确定至少两个语义信息的方法包括:
S301:获取用户输入的第一语句。
可选的,当用户在终端设备中打开人与机器人的聊天界面时,可以在聊天界面中输入用户想要输入的第一语句。
可选的,终端设备可以为手机、电脑等。
S302:在第一语句中确定多个词汇。
S303:根据每个词汇对应的词向量确定第一矩阵。
S304:根据第一矩阵和至少两个预设向量,确定至少两组权重值,每组权重值包括第一语句中每个词汇的权重值。
可选的,在本申请中,对话生成装置中设置有多个预设向量wi。
可选的,将第一矩阵和至少两个预设向量以此代入如下可行的公式6-公式7,来确定至少两组权重值αi:
i∈1,2,…,r,t∈1,2,…,N
其中,代表第i个隐向量的权重值,wi代表第i个预设向量,e代表以自然常数为底的指数操作,∑·代表求和操作,αi为第i个权重值向量(即第i组权重值),即第一语句中各个词汇的第i组权重值向量,[]代表矩阵组合操作,即由组成至少两组权重值向量αi,其中,r可以为大于或者等于2的整数。
S305:根据至少两组权重值和第一矩阵,确定至少两个语义信息。
可选的,在获取到权重值向量αi之后,将权重值向量αi与第一矩阵Hq相乘,来确定至少两个语义信息。
需要说明的是,在图3实施例的基础上,本发明实施例提供了一种至少两个语义信息确定单元的结构示意图,具体的,请参见图4。
图4为本发明实施例提供的语义信息确定模块的结构示意图。请参见图4,语义信息确定模块40包括用户输入模块41、门控循环单元模块42、预设向量生成模块43、归一化处理模块44和乘法器组45,其中,
用户输入模块41可获取用户输入的第一语句,并将第一语句输入门控循环单元模块42;
门控循环单元模块42将接收到的第一语句进行门控循环编码处理,输出第一矩阵Hq、并将第一矩阵Hq分别发送至归一化处理模块44和乘法器组45;
预设向量生成模块43可产生多个预设向量wi,并将多个预设向量wi发送至归一化处理模块44;
归一化处理模块44对接收到的第一矩阵Hq和多个预设向量wi进行归一化处理,输出多个权重值向量αi(包括α1、α2、……、αr),并将多个权重值向量αi发送至乘法器组45;
乘法器组45包括至少两个乘法器,即乘法器451和乘法器452,乘法器组45在接收到第一矩阵Hq和权重值向量αi后,将每个权重值向量(包括α1、α2、……、αr)分别采用一个乘法器与第一矩阵Hq相乘,来确定多个语义信息
可选的,在归一化处理模块44中,利用公式6-公式7来确定多组权重值向量αi。
在上述任一实施例的基础上,下面,结合图5,对本发明提供的对话生成方法作进一步的详细说明。具体的,请参见图5。
图5为本发明实施例提供的对话生成方法的流程示意图二。请参见图5,所述方法包括:
S501:获取历史对话信息。
可选的,历史对话信息可以为图1实施例中个人记忆(聊天信息)1所示的“C1:要去深圳玩,我得请教才行”、“C2:那就请假吧,人要过得开心点。”和“C3:大概去玩几天?”。
可选的,历史对话信息还包括多个语句对,一个语句对中包括一个语句和一个语句对应的应答语句。
例如,图1实施例中多人记忆(聊天信息对)2所示的第一语句对“Q1:玩几天呢?-R1:三天呀。”、以及第二语句对“Q2:大概需要几天呢?-R2:玩三天吧,住一起能便宜点”。
S502:获取历史对话信息中每个第二语句与第一语句的相似度。
可选的,获取历史对话信息中每个第二语句与第一语句的相似度包括:获取个人记忆中每个第二语句与第一语句的相似度、以及获取多人记忆中每个聊天对中每个第二语句(即应答语句)与第一语句的相似度。
可选的,针对个人记忆,可通过如下可行的方法,来获取个人记忆中每个第二语句与第一语句的相似度,所述方法包括:
第一步:将个人记忆中每个第二语句进行循环编码处理,以确定每个第二语句的每个词汇对应的隐状态向量。
其中,代表个人记忆矩阵C中第i个第二语句ci的第t个词的状态隐向量,代表个人记忆矩阵C中第i个第二语句ci的第t-1个词的隐状态向量。代表第i个第二语句ci的第t个词的向量,个人记忆矩阵C=(c1,c2,…cK),c1、c2、……、cK为个人记忆中的每个第二语句对应的向量。
需要说明的是,第三矩阵H3中一个行向量可以代表一个第二语句。
第二步:根据第三矩阵H3和第一矩阵Hq,确定第一近似语句门控向量。
i∈1,2,…,K
其中,代表第一平均向量,第一平均向量为第三矩阵H3中每个行向量和的平均值,代表第二平均向量,第二平均向量为第一矩阵Hq中每个行向量和的平均值,代表用于确定近似实现向量的二维中间向量,代表学习参数,代表第i个语句的语句门控向量(取值可以为0~1之间的任意一个数),argmax()代表确定最大值操作,代表第i个语句的第一近似语句门控向量,δ代表独立样本向量,τ代表温度系数。
第三步:将第一近似门控向量中的每个元素作为每个第二语句与第一语句的相似度。
S503:根据每个第二语句与第一语句的相似度,在第二语句中确定目标第二语句。
S504:获取目标第二语句中每个词汇与第一语句的相似度。
i∈1,2,…,K t∈1,2,…,T
S505:根据目标第二语句中每个词汇与第一语句的相似度,在目标第二语句的词汇中确定与第一语句的相似度最大的M个第一词汇,M为大于或者等于1的整数。
S506:根据目标第二语句和所述多个第一词汇确定目标词汇。
可选的,目标词汇为历史对话信息中与第一语句的相似度最大的N个词汇,其中N为大于或者等于1的整数。
需要说明的是,目标词汇包括第一目标词汇和第二目标词汇。
可选的,第一目标词汇是根据个人记忆中的目标第二语句和多个第一词汇确定的。
可选的,第二目标词汇是根据多人记忆中的目标第二语句和多个第一词汇确定的。
可选的,可以根据个人记忆中的目标第二语句和多个第一词汇,通过如下可行的公式17-公式18,确定第一目标词汇zc:
例如,在图1实施例中,根据根据个人记忆(聊天信息1)中确定出第一目标词汇zc可以为“请假”。
需要说明的是,针对个人记忆,在上述公式18中,第一近似语句门控向量中包括与目标第二语句对应的元素,相似度中包括了与每一第一词汇对应对应的元素。因此,可以采用第一近似语句门控向量和相似度确定第一目标词汇zc。
可选的,在上述S502-S506中,针对个人记忆,对确定第一目标词汇zc的方法进行了详细的说明。下面,结合S502-S506,针对多人记忆,简要的说明确定第二目标词汇zp的方法。
可选的,将多人记忆中的聊天对进行分组处理,确定多人记忆中聊天对集合P,P={(q1,r1),(q2,r2),…,(qL,rL)},其中(q1,r1)、……、(qL,rL)表示L个不同的聊天对,q1、……、qL代表L个聊天对中的的一个语句,r1、……、rL代表L个聊天与一个语句对应的应答语句。
可选的,可以通过如下可行的公式19-公式23来确定第二目标词汇zp:
i∈1,2,…,K t∈1,2,…,J
其中,代表的隐向量,代表第i个应答语句中的第t个词的信息向量,代表第二近似语句门控向量(取值为0~1之间的任意一个数),SE()代表对()中的内容进行公式9-公式14的操作,R为(r1,…rL),q为(q1,…qL),代表人人记忆中每个第二语句的每个词汇与第一语句的相似度,WE()代表对()中的内容进行公式15-公式16的操作,代表人人记忆中与第一语句相关的第二语句ri中的词汇,zp代表第二目标词汇。
需要说明的是,针对人人记忆,在上述公式22中,第二近似语句门控向量中包括与目标第二语句对应的元素,相似度中包括了与每一第一词汇对应的元素。因此,可以采用第二近似语句门控向量和相似度确定第二目标词汇zp。
例如,在图1实施例中,根据人人记忆(聊天信息对)2确定出第二目标词汇zp可以为“三天”。
可选的,在获得第一目标词汇zc和第二目标词汇zp之后,利用如下可行的公式24,确定目标词汇z:
z=ρzc+(1-ρ)zp (公式24)
其中,ρ代表可调系数。
例如,目标词汇z可以为包括“三天”和“请假”的词向量:[“三天”,“请假”]
S507:根据目标词汇和至少两个语义信息,确定目标语义信息。
可选的,S507与S202对应相同,具体的,可参见S202。此处,不再赘述S507的内容。
S508:根据目标语义信息和目标词汇,确定第一语句对应的应答信息。
可选的,S508与S203对应相同,具体的,可参见S203。此处,不再赘述S508的内容。
例如,图1实施例中,在终端设备3中显示的聊天记录中,机器人根据用户输入的第一语句“大概去玩几天?”,确定第一语句对应的应答信息为“哈哈,我请假了,去玩三天”。
本发明实例提供的对话生成方法,在确定多个语义信息之后,参考历史对话信息,确定目标语义信息,提高了目标语义信息的准确性,进而使得根据目标语义信息确定的应答信息与第一语句的相关性更强。
可选的,本发明实施例还提供一种用于生成应答信息的结构示意图。具体的,请参见图6。
图6为本发明实施例提供的一种用于生成应答信息的结构示意图,请参见图6,包括第一目标词汇确定模块61、第一平均处理模块62、第二目标词汇确定模块63、第一乘法器64、第二乘法器65、第一加法器66、路由选择模块67、第二加法器68、解码处理模块69和语义信息生成模块60,其中,第一目标词汇确定模块61包括个人记忆输入模块601、第一门控循环单元模块602、第二平均处理模块603、第一归一化处理模块603、第一冈贝尔柔性最大值处理模块604、第三乘法器605、用户输入模块606、第二门控循环单元模块607、第三平均处理模块608、第二归一化处理模块609、第二冈贝尔柔性最大值处理模块610和求和模块611。
需要说明的是,将第一目标词汇确定模块61中的个人记忆输入模块601替换为个人记忆输入模块611,可使得第二目标词汇确定模块63与第一目标词汇确定模块61具有相似的结构和处理模块。
可选的,个人记忆输入模块601用于获取个人记忆,并将个人记忆依次通过第一门控循环单元模块602、第二平均处理模块603、第一归一化处理模块603、第一冈贝尔柔性最大值处理模块604进行处理。
可选的,第一门控循环单元模块602、第二平均处理模块603、第一归一化处理模块603、第一冈贝尔柔性最大值处理模块604对个人记忆的处理过程可对应的参考公式9、公式10、公式12、以及公式14。
可选的,用户输入模块606用于获取用户输入的第一语句,并将第一语句依次通过第二门控循环单元模块607、第三平均处理模块608、第二归一化处理模块609、第二冈贝尔柔性最大值处理模块610进行处理。
可选的,第二门控循环单元模块607、第三平均处理模块608、第二归一化处理模块609、第二冈贝尔柔性最大值处理模块610对第一语句的处理可对应的参考公式1、公式11、公式15、以及公式16。
可选的,根据第一目标词汇zc、第二目标词汇zp以及可调系数ρ,采用第一加法器66、第一乘法器64和第二乘法器65,确定目标词汇z的方法可参考公式24。
可选的,根据目标词汇z和目标语义信息ce,采用第二加法器68,确定控制向量o的方法可参考公式5。
可选的,控制向量o经过解码处理模块69的解码操作后,输出与第一语句(用户输入模块606获取到的用户输入的第一语句)对应的应答信息。
图7为本发明实施例提供的一种对话生成装置的结构示意图。请参见图7,对话生成装置10包括第一获取模块11、第一确定模块12和第二确定模块13,其中,
所述第一获取模块11用于,获取第一语句对应的至少两个语义信息;
所述第一确定模块12用于,在所述至少两个语义信息中确定目标语义信息;
所述第二确定模块13用于,根据所述目标语义信息确定所述第一语句对应的应答信息。
本发明实施例提供的对话生成装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
在一种可能的实施方式中,所述第一获取模块11具体用于:
获取所述第一语句对应的第一矩阵;
根据所述第一矩阵和至少两个预设向量,确定至少两组权重值,每组权重值包括所述第一语句中每个词汇的权重值;
根据所述至少两组权重值和所述第一矩阵,确定所述至少两个语义信息。
在一种可能的实施方式中,所述第一获取模块11具体用于:
在所述第一语句中确定多个词汇;
根据每个词汇对应的词向量确定所述第一矩阵。
在另一种可能的实施方式中,所述第一确定模块12具体用于:
获取历史对话信息,所述历史对话信息中包括多个第二语句;
根据所述历史对话信息和所述至少两个语义信息,确定所述目标语义信息。
在另一种可能的实施方式中,所述第一确定模块12具体用于:
在所述历史对话信息中确定目标词汇,所述目标词汇为所述历史对话信息中与所述第一语句的相似度最大的N个词汇,所述N为大于或者等于1的整数;
根据所述目标词汇和所述至少两个语义信息,确定所述目标语义信息。
在另一种可能的实施方式中,所述第一确定模块12具体用于:
获取所述历史对话信息中每个第二语句与所述第一语句的相似度,所述历史对话信息包括多个语句对,一个语句对中包括一个语句和所述一个语句对应的应答语句;
根据每个第二语句与所述第一语句的相似度,在所述第二语句中确定目标第二语句;
根据所述目标第二语句确定所述目标词汇。
在另一种可能的实施方式中,所述第一确定模块12具体用于:
获取所述目标第二语句中每个词汇与所述第一语句的相似度;
根据所述目标第二语句中每个词汇与所述第一语句的相似度,在所述目标第二语句的词汇中确定与所述第一语句的相似度最大的M个第一词汇,所述M为大于或者等于1的整数;
根据所述目标第二语句和所述多个第一词汇确定为所述目标词汇。
在另一种可能的实施方式中,所述第一确定模块12具体用于:
获取每个语义信息与所述目标词汇的相似度;
根据每个语义信息与所述目标词汇的相似度,在所述至少两个语义信息中确定所述目标语义信息。
在另一种可能的实施方式中,所述第二确定模块13具体用于:
根据所述目标语义信息和所述目标词汇,确定所述第一语句对应的应答信息。
本发明实施例提供的对话生成装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。
图8为本发明实施例提供的对话生成装置的硬件结构示意图,如图8所示,该对话生成装置20包括:至少一个处理器21和存储器22。其中,处理器21和存储器22通过总线23连接。
可选地,该模型确定20还包括通信部件。例如,通信部件可以包括接收器和/或发送器。
在具体实现过程中,至少一个处理器21执行所述存储器22存储的计算机执行指令,使得至少一个处理器21执行如上的对话生成方法。
处理器21的具体实现过程可参见上述方法实施例,其实现原理和技术效果类似,本实施例此处不再赘述。
在上述图7所示的实施例中,应理解,处理器可以是中央处理单元(英文:CentralProcessing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:DigitalSignal Processor,简称:DSP)、专用集成电路(英文:Application Specific IntegratedCircuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
存储器可能包含高速RAM存储器,也可能还包括非易失性存储NVM,例如至少一个磁盘存储器。
总线可以是工业标准体系结构(Industry Standard Architecture,ISA)总线、外部设备互连(Peripheral Component,PCI)总线或扩展工业标准体系结构(ExtendedIndustry Standard Architecture,EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,本申请附图中的总线并不限定仅有一根总线或一种类型的总线。
本申请还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上所述的对话生成方法。
上述的计算机可读存储介质,上述可读存储介质可以是由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。可读存储介质可以是通用或专用计算机能够存取的任何可用介质。
一种示例性的可读存储介质耦合至处理器,从而使处理器能够从该可读存储介质读取信息,且可向该可读存储介质写入信息。当然,可读存储介质也可以是处理器的组成部分。处理器和可读存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。当然,处理器和可读存储介质也可以作为分立组件存在于设备中。
所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (12)
1.一种对话生成方法,其特征在于,包括:
获取第一语句对应的至少两个语义信息;
获取历史对话信息,所述历史对话信息中包括多个第二语句;
获取所述历史对话信息中每个第二语句与所述第一语句的相似度,所述历史对话信息包括多个语句对,一个语句对中包括一个语句和所述一个语句对应的应答语句;
根据每个第二语句与所述第一语句的相似度,在所述第二语句中确定目标第二语句;
根据所述目标第二语句确定目标词汇,所述目标词汇为所述历史对话信息中与所述第一语句的相似度最大的N个词汇,所述N为大于或者等于1的整数;
根据所述目标词汇和所述至少两个语义信息,确定目标语义信息;
根据所述目标语义信息和所述目标词汇,确定所述第一语句对应的应答信息。
2.根据权利要求1所述的方法,其特征在于,所述获取第一语句对应的至少两个语义信息,包括:
获取所述第一语句对应的第一矩阵;
根据所述第一矩阵和至少两个预设向量,确定至少两组权重值,每组权重值包括所述第一语句中每个词汇的权重值,所述第一矩阵为由所述第一语句中的多个词汇对应的隐向量组成的矩阵;
根据所述至少两组权重值和所述第一矩阵,确定所述至少两个语义信息。
3.根据权利要求2所述的方法,其特征在于,所述获取所述第一语句对应的第一矩阵,包括:
在所述第一语句中确定多个词汇;
根据每个词汇对应的词向量确定所述第一矩阵。
4.根据权利要求1所述的方法,其特征在于,所述根据所述目标第二语句确定所述目标词汇,包括:
获取所述目标第二语句中每个词汇与所述第一语句的相似度;
根据所述目标第二语句中每个词汇与所述第一语句的相似度,在所述目标第二语句的词汇中确定与所述第一语句的相似度最大的M个第一词汇,所述M为大于或者等于1的整数;
根据所述目标第二语句和所述M个第一词汇确定为所述目标词汇。
5.根据权利要求1所述的方法,其特征在于,所述根据所述目标词汇和所述至少两个语义信息,确定所述目标语义信息,包括:
获取每个语义信息与所述目标词汇的相似度;
根据每个语义信息与所述目标词汇的相似度,在所述至少两个语义信息中确定所述目标语义信息。
6.一种对话生成装置,其特征在于,包括第一获取模块、第一确定模块和第二确定模块,其中,
所述第一获取模块用于,获取第一语句对应的至少两个语义信息;
所述第一确定模块用于,获取历史对话信息,所述历史对话信息中包括多个第二语句;
获取所述历史对话信息中每个第二语句与所述第一语句的相似度,所述历史对话信息包括多个语句对,一个语句对中包括一个语句和所述一个语句对应的应答语句;
根据每个第二语句与所述第一语句的相似度,在所述第二语句中确定目标第二语句;
根据所述目标第二语句确定目标词汇,所述目标词汇为所述历史对话信息中与所述第一语句的相似度最大的N个词汇,所述N为大于或者等于1的整数;
根据所述目标词汇和所述至少两个语义信息,确定目标语义信息;
所述第二确定模块用于,根据所述目标语义信息和所述目标词汇,确定所述第一语句对应的应答信息。
7.根据权利要求6所述的装置,其特征在于,所述第一获取模块具体用于:
获取所述第一语句对应的第一矩阵;
根据所述第一矩阵和至少两个预设向量,确定至少两组权重值,每组权重值包括所述第一语句中每个词汇的权重值,所述第一矩阵为由所述第一语句中的多个词汇对应的隐向量组成的矩阵;
根据所述至少两组权重值和所述第一矩阵,确定所述至少两个语义信息。
8.根据权利要求7所述的装置,其特征在于,所述第一获取模块具体用于:
在所述第一语句中确定多个词汇;
根据每个词汇对应的词向量确定所述第一矩阵。
9.根据权利要求6所述的装置,其特征在于,所述第一确定模块具体用于:
获取所述目标第二语句中每个词汇与所述第一语句的相似度;
根据所述目标第二语句中每个词汇与所述第一语句的相似度,在所述目标第二语句的词汇中确定与所述第一语句的相似度最大的M个第一词汇,所述M为大于或者等于1的整数;
根据所述目标第二语句和所述M个第一词汇确定为所述目标词汇。
10.根据权利要求6所述的装置,其特征在于,所述第一确定模块具体用于:
获取每个语义信息与所述目标词汇的相似度;
根据每个语义信息与所述目标词汇的相似度,在所述至少两个语义信息中确定所述目标语义信息。
11.一种对话生成装置,其特征在于,包括:至少一个处理器和存储器;
所述存储器存储计算机执行指令;
所述至少一个处理器执行所述存储器存储的计算机执行指令,使得所述至少一个处理器执行如权利要求1至5任一项所述的对话生成方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如权利要求1至5任一项所述的对话生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811545176.XA CN109783621B (zh) | 2018-12-17 | 2018-12-17 | 对话生成方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811545176.XA CN109783621B (zh) | 2018-12-17 | 2018-12-17 | 对话生成方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109783621A CN109783621A (zh) | 2019-05-21 |
CN109783621B true CN109783621B (zh) | 2021-10-08 |
Family
ID=66498132
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811545176.XA Active CN109783621B (zh) | 2018-12-17 | 2018-12-17 | 对话生成方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109783621B (zh) |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8346563B1 (en) * | 2012-04-10 | 2013-01-01 | Artificial Solutions Ltd. | System and methods for delivering advanced natural language interaction applications |
CN103020047A (zh) * | 2012-12-31 | 2013-04-03 | 威盛电子股份有限公司 | 修正语音应答的方法及自然语言对话系统 |
CN103077165A (zh) * | 2012-12-31 | 2013-05-01 | 威盛电子股份有限公司 | 自然语言对话方法及其系统 |
CN103744836A (zh) * | 2014-01-08 | 2014-04-23 | 苏州思必驰信息科技有限公司 | 一种人机对话方法及装置 |
CN104933084A (zh) * | 2015-05-04 | 2015-09-23 | 上海智臻网络科技有限公司 | 一种用于获得答案信息的方法、装置和设备 |
CN106547812A (zh) * | 2015-09-18 | 2017-03-29 | 环球娱乐株式会社 | 商业信息提供系统以及商业信息提供方法 |
CN107609092A (zh) * | 2017-09-08 | 2018-01-19 | 北京百度网讯科技有限公司 | 智能应答方法和装置 |
CN108062388A (zh) * | 2017-12-15 | 2018-05-22 | 北京百度网讯科技有限公司 | 人机对话的回复生成方法和装置 |
CN108446286A (zh) * | 2017-02-16 | 2018-08-24 | 阿里巴巴集团控股有限公司 | 一种自然语言问句答案的生成方法、装置及服务器 |
CN108846130A (zh) * | 2018-06-29 | 2018-11-20 | 北京百度网讯科技有限公司 | 一种问题文本生成方法、装置、设备和介质 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2016151699A1 (ja) * | 2015-03-20 | 2016-09-29 | 株式会社 東芝 | 学習装置、方法およびプログラム |
CN105468582B (zh) * | 2015-11-18 | 2018-03-02 | 苏州思必驰信息科技有限公司 | 一种基于人机交互的数字串的纠正方法及装置 |
JP6480377B2 (ja) * | 2016-05-06 | 2019-03-06 | 日本電信電話株式会社 | 分類器学習装置、表種類分類装置、方法、及びプログラム |
CN108197191B (zh) * | 2017-12-27 | 2018-11-23 | 神思电子技术股份有限公司 | 一种多轮对话的场景意图中断方法 |
-
2018
- 2018-12-17 CN CN201811545176.XA patent/CN109783621B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8346563B1 (en) * | 2012-04-10 | 2013-01-01 | Artificial Solutions Ltd. | System and methods for delivering advanced natural language interaction applications |
CN103020047A (zh) * | 2012-12-31 | 2013-04-03 | 威盛电子股份有限公司 | 修正语音应答的方法及自然语言对话系统 |
CN103077165A (zh) * | 2012-12-31 | 2013-05-01 | 威盛电子股份有限公司 | 自然语言对话方法及其系统 |
CN103744836A (zh) * | 2014-01-08 | 2014-04-23 | 苏州思必驰信息科技有限公司 | 一种人机对话方法及装置 |
CN104933084A (zh) * | 2015-05-04 | 2015-09-23 | 上海智臻网络科技有限公司 | 一种用于获得答案信息的方法、装置和设备 |
CN106547812A (zh) * | 2015-09-18 | 2017-03-29 | 环球娱乐株式会社 | 商业信息提供系统以及商业信息提供方法 |
CN108446286A (zh) * | 2017-02-16 | 2018-08-24 | 阿里巴巴集团控股有限公司 | 一种自然语言问句答案的生成方法、装置及服务器 |
CN107609092A (zh) * | 2017-09-08 | 2018-01-19 | 北京百度网讯科技有限公司 | 智能应答方法和装置 |
CN108062388A (zh) * | 2017-12-15 | 2018-05-22 | 北京百度网讯科技有限公司 | 人机对话的回复生成方法和装置 |
CN108846130A (zh) * | 2018-06-29 | 2018-11-20 | 北京百度网讯科技有限公司 | 一种问题文本生成方法、装置、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN109783621A (zh) | 2019-05-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109460463B (zh) | 基于数据处理的模型训练方法、装置、终端及存储介质 | |
CN109284502B (zh) | 一种文本相似度计算方法、装置、电子设备及存储介质 | |
WO2018196718A1 (zh) | 图像消歧方法、装置、存储介质和电子设备 | |
CN109215630B (zh) | 实时语音识别方法、装置、设备及存储介质 | |
WO2020151688A1 (zh) | 编码方法、装置、设备及存储介质 | |
WO2020151689A1 (zh) | 对话生成方法、装置、设备及存储介质 | |
CN112017694B (zh) | 语音数据的评测方法和装置、存储介质和电子装置 | |
CN115309877B (zh) | 对话生成方法、对话模型训练方法及装置 | |
CN108804427B (zh) | 语音机器翻译方法及装置 | |
WO2021135457A1 (zh) | 基于循环神经网络的情绪识别方法、装置及存储介质 | |
CN115221271A (zh) | 一种对话回复方法及装置、语言模型训练方法及装置 | |
JP6969443B2 (ja) | 学習品質推定装置、方法、及びプログラム | |
CN111339274B (zh) | 对话生成模型训练方法、对话生成方法及装置 | |
CN111597326A (zh) | 生成商品描述文本的方法及装置 | |
JP6243072B1 (ja) | 入出力システム、入出力プログラム、情報処理装置、チャットシステム | |
CN109829040B (zh) | 一种智能对话方法及装置 | |
CN110046344B (zh) | 添加分隔符的方法及终端设备 | |
CN113094478B (zh) | 表情回复方法、装置、设备及存储介质 | |
CN109783621B (zh) | 对话生成方法、装置及设备 | |
CN112910761A (zh) | 即时通讯方法、装置、设备、存储介质以及程序产品 | |
CN110895656B (zh) | 一种文本相似度计算方法、装置、电子设备及存储介质 | |
CN112905755A (zh) | 一种回复文本预测方法、装置、设备及存储介质 | |
CN111222327A (zh) | 一种词嵌入表示方法、装置及设备 | |
CN114780863B (zh) | 基于人工智能的项目推荐方法、装置、计算机设备及介质 | |
CN111881293B (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 |