时间序列分类
逻辑回归分析二元目标变量与其预测变量之间的关系,以估计因变量取值1的概率。在存在时间数据的情况下,随着时间的推移,观测值不是独立的,模型的误差会随着时间产生相关性,而引入自回归特征或滞后项可以捕捉时间依赖性并增强逻辑回归的预测能力。
NHITS 的输入包括静态外部变量 、历史外部变量 、预测时可用的外部变量 和自回归特征 ,其中每个输入都进一步分解为分类变量和连续变量。该网络使用多分位数回归来模拟以下条件概率:
在本 Notebook 中,我们将展示如何使用 NeuralForecast 方法进行二元序列回归。我们将: - 安装 NeuralForecast。- 加载二元序列数据。- 拟合和预测时间分类器。- 绘制和评估预测结果。
您可以使用 Google Colab 的 GPU 运行这些实验。
1. 安装 NeuralForecast
2. 加载二元序列数据
core.NeuralForecast
类包含共享的 fit
、predict
和其他方法,它们接受列为 ['unique_id', 'ds', 'y']
的 pandas DataFrames 作为输入,其中 unique_id
标识数据集中的各个时间序列,ds
是日期,而 y
是目标二元变量。
在此示例中,我们将 8x8 数字图像转换为 64 长度的序列,并定义一个分类问题,以识别像素何时超过特定阈值。我们声明一个长格式的 pandas dataframe,以匹配 NeuralForecast 的输入。
unique_id | ds | y | pixels | |
---|---|---|---|---|
0 | 0 | 1910 | 0 | 0.0 |
1 | 0 | 1911 | 0 | 0.0 |
2 | 0 | 1912 | 0 | 5.0 |
3 | 0 | 1913 | 1 | 13.0 |
4 | 0 | 1914 | 0 | 9.0 |
… | … | … | … | … |
6395 | 99 | 1969 | 1 | 14.0 |
6396 | 99 | 1970 | 1 | 16.0 |
6397 | 99 | 1971 | 0 | 3.0 |
6398 | 99 | 1972 | 0 | 0.0 |
6399 | 99 | 1973 | 0 | 0.0 |
3. 拟合和预测时间分类器
拟合模型
使用 NeuralForecast.fit
方法,您可以根据数据集训练一组模型。您可以定义预测 horizon
(本例中为 12),并修改模型的超参数。例如,对于 NHITS
,我们更改了编码器和解码器的默认隐藏大小。
警告
目前,基于循环的模型族尚不支持使用 Bernoulli 分布输出。这影响以下方法
LSTM
、GRU
、DilatedRNN
和TCN
。此功能正在开发中。
unique_id | ds | cutoff | MLP | MLP-median | MLP-lo-90 | MLP-lo-80 | MLP-hi-80 | MLP-hi-90 | NHITS | NHITS-median | NHITS-lo-90 | NHITS-lo-80 | NHITS-hi-80 | NHITS-hi-90 | y | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 1962 | 1961 | 0.173 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0.761 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0 |
1 | 0 | 1963 | 1961 | 0.784 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0.571 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 |
2 | 0 | 1964 | 1961 | 0.042 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.009 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
3 | 0 | 1965 | 1961 | 0.072 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.054 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0 |
4 | 0 | 1966 | 1961 | 0.059 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.000 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
… | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … |
1195 | 99 | 1969 | 1961 | 0.551 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0.697 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 |
1196 | 99 | 1970 | 1961 | 0.662 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0.465 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 |
1197 | 99 | 1971 | 1961 | 0.369 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0.382 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0 |
1198 | 99 | 1972 | 1961 | 0.056 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0.000 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
1199 | 99 | 1973 | 1961 | 0.000 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.000 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
unique_id | ds | cutoff | MLP | MLP-median | MLP-lo-90 | MLP-lo-80 | MLP-hi-80 | MLP-hi-90 | NHITS | NHITS-median | NHITS-lo-90 | NHITS-lo-80 | NHITS-hi-80 | NHITS-hi-90 | y | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | 0 | 1962 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0 |
1 | 0 | 1963 | 1961 | 1 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 |
2 | 0 | 1964 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
3 | 0 | 1965 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0 |
4 | 0 | 1966 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
… | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … | … |
1195 | 99 | 1969 | 1961 | 1 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 |
1196 | 99 | 1970 | 1961 | 1 | 1.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 1 |
1197 | 99 | 1971 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0 | 0.0 | 0.0 | 0.0 | 1.0 | 1.0 | 0 |
1198 | 99 | 1972 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 1.0 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
1199 | 99 | 1973 | 1961 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 | 0.0 | 0.0 | 0.0 | 0.0 | 0.0 | 0 |
4. 绘制和评估预测结果
最后,我们绘制了两个模型的预测结果与实际值的对比。并评估 MLP
和 NHITS
时间分类器的准确性。
参考文献
- Cox D. R. (1958). “The Regression Analysis of Binary Sequences.” Journal of the Royal Statistical Society B, 20(2), 215–242.
- Cristian Challu, Kin G. Olivares, Boris N. Oreshkin, Federico Garza, Max Mergenthaler-Canseco, Artur Dubrawski (2023). NHITS: Neural Hierarchical Interpolation for Time Series Forecasting. Accepted at AAAI 2023.