语音助手越来越像人类了,与人类之间的交流不再是简单的你问我答,不少语音助手甚至能和人类进行深度交谈。在交流的背后,离不开自然语言处理(NLP)和自然语言生成(NLG)这两种基础技术。机器学习的这两个分支使得语音助手能够将人类语言转换为计算机命令,反之亦然。
这两种技术有什么差异?工作原理是什么?
NLP vs NLG:了解基本差异
什么是NLP?
NLP指在计算机读取语言时将文本转换为结构化数据的过程。简而言之,NLP是计算机的阅读语言。可以粗略地说,在NLP中,系统摄取人语,将其分解,分析,确定适当的操作,并以人类理解的语言进行响应。
NLP结合了计算机科学、人工智能和计算语言学,涵盖了以人类理解的方式解释和生成人类语言的所有机制:语言过滤、情感分析、主题分类、位置检测等。
什么是NLG?
自然语言处理由自然语言理解(NLU)和自然语言生成(NLG)构成。NLG是计算机的“编写语言”,它将结构化数据转换为文本,以人类语言表达。即能够根据一些关键信息及其在机器内部的表达形式,经过一个规划过程,来自动生成一段高质量的自然语言文本。
NLP vs NLG:聊天机器人的工作方式
人类谈话涉及双向沟通的方式,聊天机器人也一样,只是沟通渠道略有不同——您是与机器交谈。当给机器人发送消息时,它会将其拾取并使用NLP,机器将文本转换为自身的编码命令。然后将该数据发送到决策引擎。
在整个过程中,计算机将自然语言转换为计算机理解的语言,处理,识别语音。语音识别系统常用的是Hidden Markov模型(HMM),它将语音转换为文本以确定用户所说的内容。通过倾听您所说的内容,将其分解为小单元,并对其进行分析以生成文本形式的输出或信息。
此后的关键步骤是自然语言理解(NLU),如上文所说,它是NLP的另一个子集,试图理解文本形式的含义。重要的是计算机要理解每个单词是什么,这是由NLU执行的部分。在对词汇、语法和其他信息进行筛选时,NLP算法使用统计机器学习、应用自然语言的语法规则,并确定所说的最可能的含义。
另一方面,NLG是一种利用人工智能和计算语言学生成自然语言的系统。它还可以将该文本翻译成语音。NLP系统首先确定要翻译成文本的信息,然后组织表达结构,再使用一组语法规则,NLG就能系统形成完整的句子并读出来。
应用
语音助手只是NLP众多应用程序之一。它还可用于网络安全文章、白皮书、科研等领域。例如,NLP对在线内容进行情绪分析,以改进服务并为客户提供更好的产品。
而NLG通常用于Gmail,它可以为您自动创建答复。创建公司数据图表的描述说明时,NLG也是很好的工具。
说NLP和NLG完全不相关,也不正确,因为NLP和NLG相当于学习中的阅读、写作过程,还是有内在关联的。
原文地址:http://blog.51cto.com/13957185/2309466