自然语言处理
在深入研究 Transformer 模型之前,让我们快速概述一下什么是自然语言处理以及为什么我们关心它。
什么是 NLP?
NLP 是语言学和机器学习的一个领域,专注于理解与人类语言相关的一切。NLP 任务的目标不仅是理解单个单词,而是能够理解这些单词的上下文。
以下是常见 NLP 任务的列表,以及一些每个任务的示例
- 对整个句子进行分类:获取评论的情感,检测电子邮件是否为垃圾邮件,确定句子是否语法正确或两个句子是否在逻辑上相关
- 对句子中的每个单词进行分类:识别句子的语法成分(名词、动词、形容词)或命名实体(人物、地点、组织)
- 生成文本内容:使用自动生成的文本完成提示,使用掩码词填充文本中的空白
- 从文本中提取答案:给定一个问题和一个上下文,根据上下文中提供的信息提取问题的答案
- 从输入文本生成新句子:将文本翻译成另一种语言,总结文本
然而,NLP 不仅限于书面文本。它还解决了语音识别和计算机视觉中的复杂挑战,例如生成音频样本的转录或图像的描述。
为什么具有挑战性?
计算机处理信息的方式与人类不同。例如,当我们阅读句子“我饿了”时,我们可以轻松理解其含义。同样,给定两个句子,例如“我饿了”和“我很难过”,我们能够轻松地确定它们之间的相似程度。对于机器学习 (ML) 模型,此类任务更难。文本需要以一种使模型能够从中学习的方式进行处理。由于语言很复杂,我们需要仔细考虑必须如何进行这种处理。关于如何表示文本,已经进行了大量研究,我们将在下一章中介绍一些方法。