Skip to main content
Dreamforce 将于 9 月 17 日至 19 日来到旧金山。立即注册,使用代码 DF24TRAIL20 节省 20%

了解自然语言处理

学习目标

完成本单元后,您将能够:

  • 描述自然语言处理。
  • 讨论自然语言处理在日常生活中的使用。
  • 说明自 20 世纪 50 年代以来它是如何演变的。
  • 区分自然语言处理、自然语言理解和自然语言生成。

开始之前

本徽章包含神经网络和深度学习等术语,这些术语在人工智能基础知识生成式 AI 基础知识这两个徽章中进行了详细介绍。我们建议您先获得这两个徽章。

什么是自然语言处理?

自然语言处理 (NLP) 是人工智能领域的一个分支,它融合了计算机科学和语言学知识,使计算机能够以对人类有意义和有用的方式来理解、解释和生成自然语言。

NLP 帮助计算机执行有用的任务,如理解句子的含义、识别文本中的重要细节、翻译语言、回答问题、总结文本以及生成类似人类回应的响应。

NLP 在我们的日常生活中已经很常见了,当我们与之交互或它为我们做一些事情时,甚至于我们可能都没有意识到它的存在。例如,也许您的电子邮件或文档创建应用程序会自动为您建议下一步可以使用的单词或短语。您可以让 Siri 这样的虚拟助理提醒您在周二给植物浇水。或者您可以让 Alexa 告诉您智利最近一次大地震的详细信息,以帮助您的女儿完成科学作业。

当您联系一家公司的客户服务时,所用的聊天机器人会使用 NLP,而当您在国外时帮助您订餐的翻译应用程序也使用 NLP。垃圾邮件检测、在线新闻偏好设置等等,这些都离不开 NLP。

NLP 简史

值得一提的是,NLP 并不是新鲜事物。事实上,它的历史可以追溯到 20 世纪 50 年代,当时研究人员开始使用计算机来理解和生成人类语言。图灵测试为 NLP 初期的发展做出了巨大贡献。该测试由艾伦·图灵 (Alan Turing) 开发,旨在测量机器以与人类无法区分的方式回答任何问题的能力。不久之后,第一个机器翻译系统问世。这些基于句子和短语的语言翻译实验进展有限,因为它们依赖于非常具体的语言模式,如预定义的短语或句子。

一台 20 世纪 50 年代的大型计算机,正由一位计算机科学家操作。

到了 20 世纪 60 年代,研究人员尝试打造基于规则的系统,这些系统允许用户要求计算机完成任务或进行对话。

在 20 世纪 70-80 年代,出现了更复杂的基于知识的方法,使用语言规则、基于规则的推理和行业知识来完成命令执行和身体状况诊断等任务。

从 20 世纪 90 年代到 21 世纪初,NLP 的统计方法(即从数据中学习)变得非常流行,这一趋势推动了语音识别、机器翻译以及机器算法等领域的进步。在此期间,1993 年万维网的出现使大量基于文本的数据可随时用于 NLP 研究。

一叠纸和书。

大约从 2009 年开始,神经网络和深度学习一直主导着 NLP 的研发。翻译和自然语言生成等 NLP 领域,包括最近推出的 ChatGPT,已经取得了显著的进步,并将继续快速发展。

备注

请注意: 

有关这些和其他重要 NLP 不断发展的更多信息,请查看资源部分。

人类语言是“自然”语言

那么,什么是自然语言?自然语言是指人类利用单词和句子相互交流的方式。这是我们在对话、阅读、写作或聆听过程中使用的语言。自然语言是我们传递信息、表达想法、提出问题、讲述故事和相互交流的方式。虽然研究人员正在针对多种不同的人类语言开发 NLP 模型,但本模块侧重于英语 NLP。

完成人工智能基础知识徽章后您便已了解非结构化数据和结构化数据。这些也是重要的 NLP 术语。自然语言——我们实际说话的方式——是非结构化数据,这意味着虽然我们人类通常可以从中抽取出有意义的信息,但它并不能为计算机提供正确的细节来理解其含义。以下关于动物收容所中可领养狗的段落是非结构化数据的一个例子。

Tala 是一只雌性哈士奇,5 岁大,65 磅重并且已绝育,它喜欢在公园里玩耍,也喜欢远足。她对小孩子很和善,对猫也很友好。这只蓝眼睛的甜心有着一身灰白相间的长毛,需要定期梳理。您可以致电特劳特代尔动物收容所,安排与 Tala 的见面时间。

为了让计算机理解我们的意思,这些信息需要定义明确并组织有序,类似于电子表格或数据库中信息的定义和组织方式。这被称为结构化数据。结构化数据中包含的信息以及数据的结构最终由所需最终应用程序采用的算法来确定。例如,翻译应用程序的数据结构与聊天机器人的不同。以下是一款有助于将狗匹配给潜在领养者的应用程序所使用的结构化数据示例:

  • 名字:Tala
  • 年龄:5
  • 是否绝育:已绝育
  • 性别:雌性
  • 品种:哈士奇
  • 重量:65 磅
  • 颜色:灰白相间
  • 眼睛颜色:蓝色
  • 对儿童友好:是
  • 对猫友好:是
  • 最喜欢的活动:公园玩耍,远足
  • 地点:特劳特代尔

自然语言理解与自然语言生成

现如今,NLP 发展成了两个子领域,即自然语言理解 (NLU) 和自然语言生成 (NLG)。从非结构化数据到结构化数据的处理过程被称为自然语言理解 (NLU)。NLU 使用多种技术来解释书面或口头语言,以理解其背后的意义和上下文。在下一单元中,您将学习这些技术。

以相反的方式处理数据——从结构化到非结构化——被称为自然语言生成 (NLG)。NLG 使计算机能够生成类似人类的语言。NLG 涉及算法和模型的开发,旨在将结构化数据或信息转换为有意义、上下文相关、类似自然语言的文本或语音。它还包括生成编程语言中的代码,例如生成用于字符串排序的 Python 函数。

过去,NLU 和 NLG 任务使用显式语言结构表示,如解析树。尽管 NLU 和 NLG 在自然语言处理中仍然至关重要,但现如今我们使用的大多数应用程序、工具和虚拟助手已经发展到利用深度学习或神经网络来完成端到端任务。例如,神经网络机器翻译系统可以直接将句子从中文翻译成英文,而无需显式地创建任何中间结构。神经网络识别模式、单词和短语,使语言处理速度呈指数级增长,并且对上下文的理解也更加准确。

在下一个单元中,您将进一步了解我们的自然语言以及使计算机能够理解我们所说的话并做出相应回应的方法和技术。

资源