近年来,已经开发了一些深度学习方法并将其应用于单变量时间预测场景,其中时间序列由在等时间增量上按顺序记录的单个观测数据组成。
5.1 将深度学习用于时间序列预测的原因
机器学习的目标是提取特征来训练模型。模型将输入数据(例如图片,时间序列或音频)转换为给定的输出(例如字幕、价格值或转录)。深度学习是机器学习算法的子集。它通过经输入数据表示为向量并将其通过一系列线性代数运算转换为给定的输出来学习并提取特征。为了进一步阐明深度学习和机器学习之间的区别,我们首先分别定义这两个研究领域:
1.机器学习 是一直使用算法来分析数据,从中学习并随后使用此数据对某种现象做出一写预测的实践。这个学习过程通常基于以下步骤:
a.向算法中填充数据;
b.使用这些数据来从以前的观测值中学习并训练数据。
c.运行测试来检查模型是否从以前的观测值中进行了足够的学习并对其性能进行评估。
d.如果模型表现良好,我们将其部署并投入生产阶段,以供组织中或企业外部的其他利益相关者使用。
e.最后,使用部署的模型来执行某些自动化的预测任务。
2.深度学习是机器学习的子集。深度学习算法基于人工神经网络,是一种特定类型的机器学习算法,是因为算法的结构基于人工神经网络。人工神经网络由多个输入、输出和隐藏层组成,其中包含一些单元。一旦部署了深度学习模型,这些单元就可以就将输入数据转换为一些信息,供下一层用于执行某些自动化预测任务。
深度学习神经网络具有三个主要的内在特性:
a.深度学习神经网络能够自动从原始数据中学习和提取特征。
b.深度学习支持多个输入和输出。
c.循环神经网络,特别是LSTM和门控循环单元(GRU),擅长提取跨越相对较长序列的输入数据中的模式。
5.1.1 深度学习神经网络能够自动从原始数据中学习和提取特征
5.1.2 深度学习支持多个输入和输出
5.1.3 循环神经网络擅长从输入数据中提取模式
5.2 基于循环神经网络的时间序列预测
5.2.1 循环神经网络 RNN
5.2.2 长短期记忆 LSTM
5.2.3 门控循环单元 GRU(Gated Recurrent Unit)
GRU是传统RNN的变体,同LSTM一样neg有效捕捉长序列之间的语义关联,缓解梯度消失或爆炸现象。同时它的结构和计算要比LSTM更简单,它的核心结构可以分为两个部分去解析:
更新门
用于控制上一时间步的隐藏状态是否对当前时间步的输入进行更新。更新门的作用类似于LSTM中的遗忘门和输入门的组合,它决定了新信息进入当前隐藏状态的比例,以及保留多少旧信息。
重置门
用于控制如何使用历史信息。当重置门接近0时,它几乎会忽略掉所有的历史信息,而只关注当前输入。这有助于模型在处理新的输入时能够“忘记”不相关的信息,从而更好地捕捉序列中的长期依赖关系。
内部结构图:
结构解析图:
GRU的更新门和重置门结构图 :
GRU的优点:
GRU和LSTM作用相同, 在捕捉长序列语义关联时, 能有效抑制梯度消失或爆炸, 效果都优于传统RNN且计算复杂度相比LSTM要小.
GRU的缺点:
GRU仍然不能完全解决梯度消失问题, 同时其作用RNN的变体, 有着RNN结构本身的一大弊端, 即不可并行计算, 这在数据量和模型体量逐步增大的未来, 是RNN发展的关键瓶颈.
5.3 如何开发用于时间序列的GRU和LSTM
5.3.1 Keras
5.3.2Tensorflow
5.3.3 单变量模型
5.3.4 多变量模型
5.4 总结
参考:【机器学习】探索GRU:深度学习中门控循环单元的魅力-腾讯云开发者社区-腾讯云