Keras 实现 LSTM时间序列预测
- 2019 年 10 月 28 日
- 筆記
本文将介绍如何用 keras 深度学习的框架搭建 LSTM 模型对时间序列做预测。
1 项目简单介绍
1.1 背景介绍
本项目的目标是建立内部与外部特征结合的多时序协同预测系统。数据集采用来自业界多组相关时间序列(约40组)与外部特征时间序列(约5组)。课题通过进行数据探索,特征工程,传统时序模型探索,机器学习模型探索,深度学习模型探索(RNN,LSTM等),算法结合,结果分析等步骤来学习时序预测问题的分析方法与实战流程。
1.2 数据集说明
** 训练数据有8列:**
– 日期 – 年: int – 日期 – 月: int – 日期 – 日: int, 时间跨度为2015年2月1日 – 2016年8月31日 – 当日最高气温 – 摄氏度(下同): float – 当日最低气温: float – 当日平均气温: float – 当日平均湿度: float – 输出 – float 预测数据没有输出部分,其他与预测一样。时间跨度为2016年9月1日 – 2016年11月30日 训练与预测都各自包含46组数据,每组数据代表不同数据源,组之间的温度与湿度信息一样而输出不同.
2 导入库并读取查看数据
3 数据预处理
3.1 时间序列数据转化为监督问题数据
3.2 数据集划分及规整
4 建立模型并训练
5 模型预测并可视化
蓝色曲线为真实输出
绿色曲线为训练数据的预测输出
黄色曲线为验证数据集的预测输出
红色曲线为测试数据的预测输出(能看出来模型预测效果还是比较好的)