基于 GluonTS 后端的 PyTorch 基础的概率性时间序列预测框架
PyTorchTS 是一个 PyTorch 可能性时间序列预测框架,它通过利用 GluonTS 作为后端 API,以及用于加载、转换和回测时间序列数据集,提供最先进的 PyTorch 时间序列模型。
$ pip3 install pytorchts这里我们通过 GluonTS README 突出介绍了 API 的变化。
import matplotlib.pyplot as plt
import pandas as pd
import torch
from gluonts.dataset.common import ListDataset
from gluonts.dataset.util import to_pandas
from pts.model.deepar import DeepAREstimator
from pts import Trainer这个简单的示例说明了如何在某些数据上训练模型,然后使用它进行预测。首先,我们需要收集一些数据:在本示例中,我们将使用提及 AMZN 股票代码的推文数量。
url = "https://raw.githubusercontent.com/numenta/NAB/master/data/realTweets/Twitter_volume_AMZN.csv"
df = pd.read_csv(url, header=0, index_col=0, parse_dates=True)前 100 个数据点如下所示:
df[:100].plot(linewidth=2)
plt.grid(which='both')
plt.show()现在,我们可以为模型准备训练数据集。数据集本质上是可迭代的字典集合:每个字典表示一个时间序列,可能包含相关的特征。在本示例中,我们只有一个条目,由 "start" 字段指定,该字段表示第一个数据点的时间戳,而 "target" 字段包含时间序列数据。为了进行训练,我们将使用 2015 年 4 月 5 日午夜之前的数据。
预测模型是一个 预测器 对象。获得预测器的一种方法是训练对应的估计器。实例化估计器需要指定它将处理的时间序列的频率以及要预测的时间步数。在我们的示例中,我们使用 5 分钟的数据,因此 req="5min", 我们将训练一个模型来预测下一个
暂无开放 Issues,或尚未同步最近议题。