一、LSTM

class LSTM(nn.Module):def __init__(self, input_size=1, hidden_layer_size=100, output_size=1):super().__init__()self.hidden_layer_size = hidden_layer_sizeself.lstm = nn.LSTM(input_size, hidden_layer_size)self.linear = nn.Linear(hidden_layer_size, output_size)self.hidden_cell = (torch.zeros(1,1,self.hidden_layer_size),torch.zeros(1,1,self.hidden_layer_size)) # (num_layers * num_directions, batch_size, hidden_size)def forward(self, input_seq):lstm_out, self.hidden_cell = self.lstm(input_seq.view(len(input_seq) ,1, -1), self.hidden_cell)predictions = self.linear(lstm_out.view(len(input_seq), -1))return predictions[-1]

细节问题:

二、Transformer

transformer-time-series-prediction时序预测代码

三、Informer

大名鼎鼎的Informer,AAAI 2021 Best Paper提出的模型,是对Transformer的改进。

首先介绍一个新任务,LSTF(Long Sequence Time-Series Forecasting),即长序列预测任务。刚刚我们提到的LSTM模型,往往以滑动窗口(或动态解码)的形式做长序列预测,随着时间步的增长,预测误差会逐渐放大。



Informer2020原作者代码

args.seq_len = 48 # input sequence length of Informer encoder
args.label_len = 24 # start token length of Informer decoder
args.pred_len = 24 # prediction sequence length

代码中的以上参数配置表示:1~48时间步为encoder输入,25~72时间步为decoder输入(其中49~72时间步被置为0),25~72时间步为decoder输出。可以结合着下图来理解。

另一个容易混淆的参数是timeenc。timeenc = 0 if args.embed!=‘timeF’ else 1,如果timeenc为1,将考虑更多可能的周期信息。

四、一些重要的库

以下是一些学习过程中接触到的、关于时序任务的开源库的整理。

https://github.com/linkedin/luminol

luminol支持两大功能:时序异常检测、两条时间序列的相关性计算。

GitHub - jdb78/pytorch-forecasting: Time series forecasting with PyTorch

pytorch-forecasting是一个基于pytorch的时序预测库,内嵌了一系列模型,如LSTM、DeepAR、Transformer、N-BEATS等。

Anomaly Detection Toolkit (ADTK)

adtk提供了通过三大组件,提供基本的异常检测算法(Detector)、异常特征加工(Transformer)、处理流程控制(Aggregator)等功能。注意这里真的只是基本算法,例如在异常检测中,通过阈值/分位数/滑动窗口/自回归等方式判断异常,没有高级的检测模型。

https://github.com/alexminnaar/time-series-classification-and-clustering

https://github.com/FilippoMB/Time-series-classification-and-clustering-with-Reservoir-Computing

GitHub - wannesm/dtaidistance: Time series distances: Dynamic Time Warping (DTW)

tslearn’s documentation - tslearn 0.5.1.0 documentation

以上几个项目与时间序列聚类任务相关。

GitHub - MaxBenChrist/awesome_time_series_in_python: This curated list contains python packages for time series analysis

时间序列相关工具、模型、数据集汇总。

时间序列预测-深度学习方法相关推荐

  1. 时间序列预测——深度好文,ARIMA是最难用的(数据预处理过程不适合工业应用),线性回归模型简单适用,预测趋势很不错,xgboost的话,不太适合趋势预测,如果数据平稳也可以使用。...

    补充:https://bmcbioinformatics.biomedcentral.com/articles/10.1186/1471-2105-15-276 如果用arima的话,还不如使用随机森 ...

  2. 图神经网络时间序列预测,时间序列神经网络预测

    有哪些深度神经网络模型 目前经常使用的深度神经网络模型主要有卷积神经网络(CNN).递归神经网络(RNN).深信度网络(DBN).深度自动编码器(AutoEncoder)和生成对抗网络(GAN)等. ...

  3. 做时间序列预测有必要用深度学习吗?事实证明,梯度提升回归树媲美甚至超越多个DNN模型...

    来源:机器之心 本文约2600字,建议阅读9分钟 在时间序列预测任务上,你不妨试试简单的机器学习方法. 在深度学习方法应用广泛的今天,所有领域是不是非它不可呢?其实未必,在时间序列预测任务上,简单的机 ...

  4. 做时间序列预测没必要深度学习!GBDT性能超DNN

    点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 来自:机器之心 在深度学习方法应用广泛的今天,所有领域是不是非它不可呢?其实未必,在时 ...

  5. 做时间序列预测有必要用深度学习吗?梯度提升回归树媲美甚至超越多个DNN模型...

    ©作者 | 杜伟.陈萍 来源 | 机器之心 在深度学习方法应用广泛的今天,所有领域是不是非它不可呢?其实未必,在时间序列预测任务上,简单的机器学习方法能够媲美甚至超越很多 DNN 模型. 过去几年,时 ...

  6. 深度学习方法在负荷预测中的应用综述(论文阅读)

    前言   本篇论文主要介绍了当下用于智能电网电力负荷预测的多种DL方法,并对它们的效果进行了比较.对于RMSE的降低效果上,集成DBN和SVM的方法RMSE降低显著,达到了21.2%.此外,PDRNN ...

  7. 5个时间序列预测的深度学习模型对比总结:从模拟统计模型到可以预训练的无监督模型

    时间序列预测在最近两年内发生了巨大的变化,尤其是在kaiming的MAE出现以后,现在时间序列的模型也可以用类似MAE的方法进行无监督的预训练 Makridakis M-Competitions系列( ...

  8. iMeta:哈佛刘洋彧等基于物种组合预测菌群结构的深度学习方法(全文翻译,PPT,中英视频)...

    通过深度学习从物种组合中预测微生物组成 Predicting microbiome compositions from species assemblages through deep learnin ...

  9. 基于深度学习的时间序列预测

    # 技术黑板报 # 第十一期 推荐阅读时长:15min 前言 时间序列建模历来是学术和工业界的关键领域,比如用于气候建模.生物科学和医学等主题应用,零售业的商业决策和金融等.虽然传统的统计方法侧重于从 ...

最新文章

  1. SCCM部署操作系统失败:MP has rejected a request
  2. 小tips:JS严格模式(use strict)下不能使用arguments.callee的替代方案
  3. linux mount挂载文件夹设置权限
  4. vsphere通用配置_Mac环境下如何用Hexo+Github搭建个人博客
  5. php flink,plus/flink.php · 辉辉菜/三强源码 - Gitee.com
  6. 配置DATAGUARD 时关于 LOG_FILE_NAME_CONVERT配置错误的解决
  7. loss function
  8. linux文件句柄数
  9. java 双向链表_数据结构-链表、栈和队列
  10. 抖音大数据,教你爬爬爬!
  11. android ipad 免费思维导图软件,推荐一款 iPad 能用的思维导图软件
  12. 全网优惠券、红包获取api
  13. linux分区拓展容量,Linux系统分区容量扩充的方法
  14. 计算机常用算法程序设计案例教程,计算机常用算法与程序设计案例教程
  15. python通达信自动交易_【其他】通达信程序化交易新发现,通达信dll下单
  16. JavaScript实现的躲避球小游戏
  17. 高手速成android开源项目[View篇]
  18. 红日安全attck靶场7 内网靶场 WP
  19. CentOS: Kernel panic - not syncing: Fatal exception
  20. 3D视觉之深度相机方案

热门文章

  1. 智能小区 安防技术详解及安防隐患杂谈
  2. 【opencv四】利用opencv读取显示视频
  3. 4.13 使用扇贝工具制作猥琐的老鼠 [Illustrator CC教程]
  4. 智华计算机终端无法卸载,智华天成V1.0计算机终端保密检查系统软件 国密装备目录**...
  5. 多态的概念,特点和优缺点
  6. 创建型模式——原型模型(Prototype Pattern)
  7. MapReduce系列之MapReduce的输出
  8. 我最爱用的一款 Redis 可视化管理工具——Another Redis Desktop Manager
  9. 迁移学习 MMD距离
  10. T3备份提示原先格式化该文件时所用扇区大小为512