主要内容

时间序列预测快速入门

此示例说明如何使用Time Series Modeler创建一个简单的长短期记忆 (LSTM) 网络来对时间序列数据进行建模。

时间序列预测涉及根据随时间收集的先前观测数据点来预测未来值。您可以使用循环神经网络(例如,LSTM 或 GRU 网络)或前馈网络(例如,多层感知器或卷积神经网络)等架构来训练用于时间序列预测的深度学习模型。

Time Series Modeler app. The app shows the predictions generated by a trained LSTM model against the true values.

加载数据

当您训练时间序列模型时,可以使用两种类型的输入数据。

  • 响应:您想要预测的时间序列。

  • 预测变量:这些是影响响应但您不希望对其进行预测的外部(外生)时间序列。预测变量是可选输入,您可以仅使用响应来训练自回归模型。

加载示例发动机数据。模型学习使用四个预测变量(节气门位置、废气旁通阀面积、发动机转速和点火正时)来预测单个响应(发动机扭矩)的值。

load SIEngineData

打开时间序列建模器。在 App 库中,点击时间序列建模器

要将数据导入 App,请点击新建。系统将打开导入数据对话框。在该对话框中,选择要从不同变量导入响应和预测变量数据。选择要作为 responses 变量的响应。对于预测变量,选择 predictors 变量。将 20% 的数据用于验证,80% 用于训练。

点击导入

Import data dialog box

App 会显示数据集的摘要,以及训练和验证数据中单个观测值的预览,包括响应和预测变量。您可以选择要作为训练数据或验证数据的数据源,也可以选择要预览的观测值。

Data set summary and observation preview

选择模型

模型库中选择一个深度学习模型。您应选择的模型取决于您的任务。对于此示例,请选择 LSTM (小)。默认情况下,该网络具有四层。您可以使用 App 更改网络的深度和可学习参数(隐藏单元)的数量。

Diagram of small LSTM network

训练模型

要训练模型,请点击训练。在训练期间,App 会显示训练信息、均值绝对误差 (MAE) 和损失 (RMSE) 图,以及训练诊断信息。

Plot of the MAE and the loss against the interation. The MAE and loss both decrease as the number of iterations increases. The right panel shows information about the training, such as the elapsed time, iteration number, and learning rate.

测试模型

要使用模型来预测值,请点击预测。对于选定的观测值,App 会显示真实值和预测值。您还可以查看已训练模型的 RMSE 值。该值指示模型在验证数据方面的表现。

Plot of the responses against the predictions for each time step. The panel on the right shows the observation number, the number of time steps to predict, the RMSE, and the approximate prediction time.

导出模型

当您对已训练模型的性能满意时,可以导出模型并将其用于新的测试数据。要导出模型并生成用于为测试数据预测新值的代码,请点击导出

另请参阅

| | | |

主题