《TensorFlow自然语言处理》—1.4.2 深度学习和NLP的当前状况
1.4.2 深度学习和NLP的当前状况
自2000年年初以来,许多不同的深层模型已经开始崭露头角。即使它们有相似之处(例如所有这些模型都对输入和参数进行非线性变换),但细节仍然有很大差异。例如,卷积神经网络(CNN)可以从原始二维数据(例如,RGB图像)中进行学习,而多层感知器模型需要将输入变为一维向量,这会导致损失重要的空间信息。
在处理文本时,由于对文本最直观的解释之一是将其视为字符序列,因此,学习模型应该能够对时间序列进行建模,从而需要有过去的记忆。要理解这一点,可以想象有这样一个语言建模任务,单词cat的下一个单词应该与单词climbed的下一个单词不同。递归神经网络(RNN)是具有这种能力的流行模型中的一种。我们将在第6章中看到RNN如何通过交互式训练来实现这一点。
应该注意,记忆不是学习模型固有的微不足道的操作,相反,持久记忆的方式是需要仔细设计的。此外,记忆不应与仅关注当前输入的无序深度网络学习到的权重相混淆,序列模型(例如,RNN)将同时关注学习到的权重和序列中前一个元素,以此预测下一个输出。
RNN的一个突出缺点是它不能记住超过若干(大约为7个)时间步长的元素,因此它缺乏长期记忆能力。长短期记忆(LSTM)网络是具有长期记忆的RNN扩展模型。因此,如今LSTM模型通常优于标准RNN模型。我们将在第7章深入探讨,以便更好地理解它。
总之,我们可以将深度网络主要分为两类:在训练和预测时每次只处理单个输入的无序模型(例如,图像分类),和处理任意长度序列的输入的顺序模型(例如,在文本生成中,单个单词是一个输入)。然后,可以将无序(也称为前馈)模型分类为深(大约少于20层)和非常深(可以大于数百层)的网络。序列模型分为只能记忆短期模式的短期记忆模型(例如,RNN)和可记忆更长模式的长期记忆模型。在图1.4中,我们大致描述了以上讨论的分类,你不必完全按照这种方式理解不同的深度模型,它只是说明深度学习模型的多样性。
图1.4 最常用的深度学习方法的一般分类
- 点赞
- 收藏
- 关注作者
评论(0)