顾名思义,时间序列数据是一种随时间变化的数据类型。例如,24小时内的温度,一个月内各种产品的价格,一年中特定公司的股票价格。
去年,我们为一位客户进行了短暂的咨询工作,他正在构建一个主要基于时间序列预测的分析应用程序。诸如长期短期记忆网络(LSTM)之类的高级深度学习模型能够捕获时间序列数据中的模式,因此可用于对数据的未来趋势进行预测。在本文中,您将看到如何使用LSTM算法使用时间序列数据进行将来的预测。
LSTM神经网络架构和原理及其在Python中的预测应用
让我们先导入所需的库,然后再导入数据集:
-
- import matplotlib.pyplot as plt
让我们将数据集加载到我们的程序中
data.head()
输出:
该数据集有三列:year
,month
,和passengers
。passengers
列包含指定月份旅行旅客的总数。让我们输出数据集的维度:
data.shape
输出:
(144, 3)
您可以看到数据集中有144行和3列,这意味着数据集包含12年的乘客旅行记录。
任务是根据前132个月来预测最近12个月内旅行的乘客人数。请记住,我们有144个月的记录,这意味着前132个月的数据将用于训练我们的LSTM模型,而模型性能将使用最近12个月的值进行评估。
让我们绘制每月乘客的出行频率。 接下来的脚本绘制了每月乘客人数的频率:
- plt.grid(True)
- plt.autoscale(axis='x',tight=True)
- plt.plot(data['passengers'])
输出: