第1章 自然语言处理介绍

你认为计算机能做哪些事情?展示邮件?编辑文档?或者是打开Excel表格进行处理?

实际上计算机不仅可以阅读语句,比如:

019-01

还可以生成语句:

019-02

最让人惊奇的是,计算机还可以理解语言:

019-03

这个人类曾经幻想的遥远未来不仅已经出现在我们面前,而且任何人仅通过一台计算机和一个互联网访问接口就可以触达。使用自然语言进行沟通和交流是人类通过生存斗争所进化出的最重要的技能之一,现在也可以在计算机上实现了。

你可能认为这是理所当然的,毕竟技术在不断进步,我们也早就有了语音识别(speech recognition)和谷歌翻译!

可是即使在5年前,“自然语言处理”也一般只出现在科技媒体TechCrunch的报道中,而不是实际的产品代码库中。直到最近几年,自然语言处理领域经历了爆发式的发展,如今部署在产品中的模型已显著优于此前出现在最鲜为人知的研究榜单中的结果。

先不用操之过急,本书在更深入探索之前将从该领域高层次的概述开始,在覆盖了基础内容之后,将会介绍更加高级的课题。本书的目标是帮助你建立使用自然语言处理技术进行工作的直观感受和经验,使你通过循序渐进地学习每一章后,有能力构建一个有价值的真实应用。

本章的前半部分将给出自然语言处理的定义,探索该技术的一些商业化应用,然后回顾这项起源于20世纪50年代的技术到今天的演化过程。

本章的后半部分将介绍一个非常强大的自然语言处理类库。该类库被广泛地应用于企业场景下的基础自然语言处理任务。虽然这些任务是基础性的,但是将它们组合在一起就可以让计算机系统以复杂的方式处理和分析自然语言数据,从而使构建聊天机器人和语音机器人等不可思议的商业应用成为可能。

从某种意义上来说,计算机学习处理自然语言和蹒跚学步的儿童牙牙学语的过程是类似的,直到学习后期才能“说出”完整的句子和段落。随着本书的深入,我们将构建本章涉及的基本的自然语言处理任务。