操作指南
生成特征
利用 StatsForecast 模型创建特征
有些模型会创建序列的内部表示,这些表示可作为其他模型的输入。一个例子是 MSTL
模型,它将序列分解为趋势和季节性分量。本指南向您展示如何使用 mstl_decomposition
函数提取这些特征用于训练,然后使用它们的未来值进行推理。
unique_id | ds | y | |
---|---|---|---|
0 | H1 | 1 | 605.0 |
1 | H1 | 2 | 586.0 |
2 | H1 | 3 | 586.0 |
3 | H1 | 4 | 559.0 |
4 | H1 | 5 | 511.0 |
假设您想使用 ARIMA 模型预测您的序列,但希望将 MSTL 模型的趋势和季节性分量作为外部回归变量纳入。您可以定义要使用的 MSTL 模型,然后将其提供给 mstl_decomposition 函数。
这将生成我们应该用于训练的数据框(已添加趋势和季节性列),以及我们应该用于预测的数据框。
unique_id | ds | y | 趋势 | 季节性 | |
---|---|---|---|---|---|
0 | H1 | 1 | 605.0 | 502.872910 | 131.419934 |
1 | H1 | 2 | 586.0 | 507.873456 | 93.100015 |
2 | H1 | 3 | 586.0 | 512.822533 | 82.155386 |
3 | H1 | 4 | 559.0 | 517.717481 | 42.412749 |
4 | H1 | 5 | 511.0 | 522.555849 | -11.401890 |
unique_id | ds | 趋势 | 季节性 | |
---|---|---|---|---|
0 | H1 | 701 | 643.801348 | -29.189627 |
1 | H1 | 702 | 644.328207 | -99.680432 |
2 | H1 | 703 | 644.749693 | -141.169014 |
3 | H1 | 704 | 645.086883 | -173.325625 |
4 | H1 | 705 | 645.356634 | -195.862530 |
现在我们可以训练我们的 ARIMA 模型并计算预测结果。
unique_id | ds | ARIMA | |
---|---|---|---|
0 | H1 | 701 | 612.737668 |
1 | H1 | 702 | 542.851796 |
2 | H1 | 703 | 501.931839 |
3 | H1 | 704 | 470.248289 |
4 | H1 | 705 | 448.115839 |
现在我们可以评估性能。
并将其与仅使用序列值进行比较。