为什么在前馈神经网络上使用循环神经网络进行序列预测?
RNN 或 LSTM 具有“记住”过去输入的优势,以提高预测时间序列数据的性能。如果您在过去 500 个字符上使用神经网络,这可能有效,但网络只是将数据视为一堆数据,没有任何具体的时间指示。网络只能通过梯度下降来学习时间表示。然而,RNN 或 LSTM 将“时间”作为模型内置的机制。模型按顺序循环遍历模型,甚至在模型训练之前就具有真正的“时间感”。该模型还具有先前数据点的“记忆”以帮助预测。该架构基于时间的进展,并且梯度也随着时间传播。这是一种处理时间序列数据的更直观的方法。
一维 CNN 也可以完成这项任务。Wavenet 是时间序列数据中 CNN 的一个例子,它使用 CNN 使用扩张卷积神经网络生成令人难以置信的生命般的语音。对于 LSTM 或 CNN 哪个效果更好,这取决于数据。您应该尝试对这两个网络进行试验,看看哪个效果最好。
假设您需要对视频的类型进行分类。按顺序观看它比在你眼前看到它随机播放的帧要简单得多。这就是为什么 RNN 或 LSTM 在时间序列数据中效果更好的原因。
假设
不同的模型结构编码不同的假设——虽然我们经常简化不严格正确的假设,但有些假设比其他假设更错误。
例如,您提出的“只需通过FFNN 中最后一个字母之前的字母数”假设与决策相关的所有信息都可以从以前的字母,和st 和更早的输入字母不相关 - 在某种意义上,马尔可夫属性的扩展。显然,在许多情况下并非如此,有各种结构对长期关系很重要,并假设它们不会导致故意不考虑这种关系的模型。此外,它会做出一个独立的假设,即th,站立当前输出中的 nd 个元素是完全不同且独立的,您不要假设这些特征是相关的,而在大多数实际问题中它们是相关的。
经典的 RNN 结构也做出了一些隐含的假设,即只有前面的元素与决策相关(这对于某些问题是错误的,其中还需要来自后面的项目的信息),以及输入之间的转换关系,输出和传递状态对于链中的所有元素都是相同的,并且不会随着时间而改变;这也不一定在所有情况下都是正确的,这是一个非常严格的限制,但这通常比最后一个假设的错误要少元素是足够的,并且强大的真实(或大部分真实)限制对于泛化更好的模型很有用(例如,没有免费午餐定理适用);就像例如为图像分析模型强制执行平移不变性等一样。