随着互联网和智能终端的快速发展,人机对话的应用越来越广泛。现在,许多互联网公司都各自的推出了智能助手,这些智能助手能够与人进行简单的对话,并且完成一些基本的任务,但是现有的智能助手存在只考虑自动问答,对话中问题的回复的准确率较低。
文|集微网
校对|Jurnan
图源|网络
集微网消息,随着互联网和智能终端的快速发展,人机对话的应用越来越广泛。现在,许多互联网公司都各自的推出了智能助手,如Apple Siri、Google Now、微软小娜(Microsoft Cortana)、Facebook M、百度度秘和微软小冰等等,这些智能助手能够与人进行简单的对话,并且完成一些基本的任务,但是现有的智能助手存在只考虑自动问答,对话中问题的回复的准确率较低。因此,智能助手的相关技术还需要不断发展和改进,朝着更加拟人化、博学化和智能化的方向发展。
华为在2015年底提供了一种用于人机对话的方法、神经网络系统和用户设备,这种方法可以将对话和基于知识库的问答相结合,能够与用户进行自然语言交互,并且依据知识库给出基于事实的正确的自然语言答案。
图1
图1为该专利提供的用于人机对话的方法,其中,
在步骤S310中,自然语言问题可以是用户通过麦克风等进行语音输入,也可以通过键盘、鼠标等进行文字或图形的输入,还可以是其它的一些输入形式,系统根据用户输入的自然语言问题能够转化为序列即可。
步骤S320,将自然语言转化为问题向量。可以将自然语言问题作为神经网络系统的第一神经网络模块的输入,计算获得该自然语言问题对应的问题向量。
步骤S330的目的是获取与前述自然语言问题相关的答案。以知识答案为三元组为例,则是获得与自然语言问题相关的至少一个三元组,其中,至少一个三元组与至少一个三 元组向量对应。
步骤340的作用是计算问题向量与至少一个三元组中每个三元组的三元组向量表示的相似度,然后输出以相似度作为元素的中间结果向量,以此来指示问题向量与答案向量的相似度。
步骤350的作用则是将问题向量和中间结果向量作为神经网络系统的第三神经网络模块的输入,将问题向量和中间结果向量进行综合,计算获得自然语言问题的自然语言答案。
下图为该专利提供的具有人机对话功能的用户设备的结构图,包括处理器510、输入设备520、存储器530和输出设备540,各组件通过总线系统550耦合在一起。
图2
输入设备520用于获取用户输入的自然语言问题,存储器530用于存储由处理器510执行的指令。该处理器具有多种功能:
1.将问题向量和至少一个知识答案向量作为输入,计算问题向量与每个知识答案向量的相似度;
2.知识答案向量为三元组向量时,将三元组的主语、谓语和宾语分别用第一独热向量、第二独热向量和第三独热向量表示;
3.将自然语言问题作为输入,将自然语言问题的词序列表示为低维向量序列;
将问题向量和中间结果向量作为输入,计算以问题向量和中间结果向量作为条件的输出序列的联合概率,生成自然语言答案;
4.将问题向量和中间结果向量作为输入,通过递归神经网络模型,计算输出序列的概率,生成自然语言答案。
该专利提供的用于人机对话的方法通过将自然语言问题和知识库向量化,通过向量计算得到基于知识库的,表示自然语言问题和知识库答案相似度的中间结果向量,再根据问题向量和中间结果向量计算得到基于事实的正确的自然语言答案。该方法固然满足不了用户100%的满意度,但它提高了人机对话中自然语言答案的准确性。
END
领取专属 10元无门槛券
私享最新 技术干货