一、自然语言处理概述
自然语言处理(NLP)聚焦于使机器理解、处理自然语言。若计算机视觉让机器“看懂”图像,那自然语言处理的目标则是让机器像人一样能够“对话”。
人类语言交流过程是:人 A 用自然语言生成信息传播出去,人 B 接收并理解信息,再用他的自然语言生成信息传播出去。自然语言处理就是研究人与机器之间的有效沟通技术,即用户以自然语言生成信息传播给机器,机器将收到的信息作为输入数据,通过内部的算法对其进行理解,再生成并返回用户所期望的结果。
自然语言处理起源于二战期间的机器翻译,后经历多个发展阶段。上世纪 90 年代以来,互联网出现,存储力、算力提升,基于自然语言的检索、语音交互需求爆发式增长,自然语言处理技术进入快速发展期。2010 年以后,基于大数据、机器学习特别是深度学习的算法进一步优化了自然语言处理的效果。
从技术实现来看,以百度为例,自然语言处理平台框架可分成四层:数据层、模型层、功能层、应用层。
处理难点:自然语言具有高度抽象性、近乎无穷变化的语义组合性、无处不在的歧义性和进化性,以及理解语言通常需要背景知识和推理能力等,这些特性使自然语言处理面临诸多挑战,成为制约人工智能发展的瓶颈之一。
二、自然语言理解(NLU)
自然语言理解(NLU)是自然语言处理的前提,是使机器能够阅读和理解人类语言,从而与人进行对话、交流。
自然语言理解经历了基于规则的方法、基于统计的方法、基于深度学习的方法三个发展阶段。
自然语言理解的步骤包括分词、词性标注、句法分析、词义消歧、语义分析、语用分析等,在此基础上还可以进行篇章分析、海量文档处理等。
自然语言理解在生活中有广泛的应用,如机器翻译、机器客服、智能音箱等,为我们的生活提供了很多便利。
三、自然语言生成(NLG)
自然语言生成(NLG)承担着不同且相关的功能,侧重于计算机能写作和表达。早期的 NLG 系统使用模板来生成文本,但随着人工智能算法与算力的不断提升,NLG 系统随着马尔可夫链、循环神经网络 RNN 和转换器(Transformer)的应用而发展,已经实现更动态、质量更高的实时文本生成。
自然语言生成的步骤一般可以分成内容分析、数据理解、文档结构、句子聚合、语法结构、语言表达六个步骤。
自然语言生成技术能够加速内容生产,且产生大规模的个性化内容;能帮助人类洞察数据,让数据更容易理解。因此,NLG 系统可应用于自动摘要、报告生成、问答和对话系统等多个领域。

