2.9 KiB
2.9 KiB
| title | sidebar_label |
|---|---|
| ARIMA | ARIMA |
本节讲述 ARIMA 算法模型的使用方法。
功能概述
ARIMA 即自回归移动平均模型(Autoregressive Integrated Moving Average, ARIMA),也记作 ARIMA(p,d,q),是统计模型中最常见的一种用来进行时间序列预测的模型。 ARIMA模型是一种自回归模型,只需要自变量即可预测后续的值。ARIMA模型要求时序数据是平稳,或经过差分处理后平稳,如果是不平稳的数据,无法获得正确的结果。
平稳的时间序列:其性质不随观测时间的变化而变化。具有趋势或季节性的时间序列不是平稳时间序列——趋势和季节性使得时间序列在不同时段呈现不同性质。
以下参数可以动态输入控制预测过程中生成 合适的 ARIMA 的模型。
- p= 自回归模型阶数
- d= 差分阶数
- q= 移动平均模型阶数
参数
分析平台中使用自动化的 ARIMA 模型进行计算,因此每次计算的时候会根据输入的数据自动拟合最合适的模型,然后根据该模型进行预测输出结果。
| 参数名称 | 说明 | 必填项 |
|---|---|---|
| period | 输入时间序列数据每个周期包含的数据点个数。如果不设置该参数或则该参数设置为 0, 将使用非季节性/周期性的 ARIMA 模型预测。 | 选填 |
| start_p | 自回归模型阶数的 起始值,0 开始的整数,不推荐大于 10 | 选填 |
| max_p | 自回归模型阶数的 结束值,0 开始的整数,不推荐大于 10 | 选填 |
| start_q | 移动平均模型阶数的起始值, 0 开始的整数,不推荐大于 10 | 选填 |
| max_q | 移动平均模型阶数的结束值, 0 开始的整数,不推荐大于 10 | 选填 |
| d | 差分阶数 | 选填 |
start_p、max_p start_q max_q 四个参数约束了模型在多大的范围内去搜寻合适的最优解。相同输入数据的条件下,参数范围越大,消耗的资源越多,系统响应的时间越长。
示例及结果
针对 i32 列进行数据预测,输入列 i32 每 10 个点是一个周期,start_p 起始是 1, 最大拟合是 5,start_q是1,最大值是5,预测结果中返回 95% 置信区间范围边界。
FORECAST(i32, "algo=arima,alpha=95,period=10, start_p=1, max_p=5, start_q=1, max_q=5")
{
"rows": fc_rows, // 预测结果的行数
"period": period, // 返回结果的周期性,同输入
"alpha": alpha, // 返回结果的置信区间,同输入
"algo": "arima", // 返回结果使用的算法
"mse":mse, // 拟合输入时序数据时候生成模型的最小均方误差(MSE)
"res": res // 列模式的结果
}