介绍完机器学习预测时间序列,接着连续几篇要进入到深度学习的范畴。
我们会提到在时间序列预测的命题上,深度学习和机器学习的不同、优化的逻辑,
并且整理有哪些神经网络常用於时间序列预测,从比较单纯的模型架构,到结合不同类型神经网络的方法。
最大的差别在於,深度学习神经网络能够捕捉序列特徵,机器学习则只能以聚合特徵或生成其他时间特徵,来代表一段时间序列中的资讯。
机器学习
将一段时间序列的特徵聚合或取统计指标计算(例如自回归特徵、差分特徵等),再建模做监督式学习回归预测
神经网络
保留原始时间序列的颗粒度,针对原始序列结构设计神经网络输入层架构,後续再根据模型表现优化、调整模型架构、超参数,例如加入 Dropout Layer、接上不同特性的神经网络等
最能够利用序列特性的神经网络架构,非递归神经网络莫属;且序列数据不仅限於时间序列,如语音、文本等。
递归神经网络的概念是,透过记住前面出现的特征推断结果,并且网络结构不断循环。
递归神经网络家族有几个经典款:(包含 RNN 的变形)
Self-Attention 机制、预训练模型在语言序列上的良好表现,如出现 BERT 这样的高适用度模型;那 Transformer 的表现有比 LSTM/GRU 来得好吗?
Transformer 的 Encoder-Decoder 框架虽然有 position embedding 来捕捉位置顺序资讯,但 LSTM/GRU 这种递归捕捉时序关系的特性,Transformer 不一定能够替代得了;因此在大宗相关论坛也都讨论到,在数据量大、或能够使用 pre-train model 的情况下(例如众多 NLP 任务,像是文本分类、情感分析、问答、语意推论、文本生成等),使用 Transformer 架构表现是更好的,但遇到具有更明显时序关系(例如季节性循环等)的资料时, LSTM/GRU 还是有不可取代的地位。
return_sequence
设为 True
本篇【以深度学习进行时间序列预测:概论】就到这边,下一篇我们会从 RNN、LSTM 开始介绍,然後一篇一篇带到上面列出的模型。
<<: TypeScript 能手养成之旅 Day 8 物件型别-扩充型别-元组(Tuple)
>>: 【领域展开 10 式】真的需要看教学文,正式启用布景主题 Soledad 与网站做绑定
# -*- coding: utf-8 -*- import cv2 import numpy as...
在现在这种讲求快速开发的开发模式,我们通常不太会自己将所有功能都自己硬刻出来,而是会去使用第三方的套...
学习目标 本文章将会是阅读官方文件Add navigation with routing 内容所做的...
看起来很废话但是很实际 使用套件前,要先安装套件 安装完成之後要使用套件要先载入套件 library...
在上篇中,我们是需要到 Line Notify 登入後的个人介面发行 token,但总不能叫每一个加...