时间序列分析入门¶
一、时间序列是什么¶
时间序列就是按时间顺序排列的一组数据,就像你每天早上量的体重,从第一天到第一百天,这些体重数字按日期排成一排,这就是时间序列。它记录了事物在不同时间的状态,可以是股票价格、气温变化、产品销量等等。
二、时间序列的特点¶
1. 趋势(Trend)¶
就像你长个子一样,时间序列也有自己的“生长方向”。比如一家公司的销售额逐年增长,这就是向上趋势;而某款老旧手机的销量可能逐年下降,这是向下趋势。趋势是时间序列在长期内持续向上或向下的变化。
2. 季节性(Seasonality)¶
时间序列会随着季节变化而波动,就像冬天卖羽绒服多,夏天卖冰棍多。这种在一年内固定周期出现的规律性波动就是季节性。不仅是自然季节,像电商在“双十一”这样的购物节也会出现销售高峰,这也是一种季节性表现。
3. 周期性(Cyclical)¶
除了季节性,时间序列还有更长周期的波动,比如经济有繁荣和萧条的周期,可能几年繁荣,几年萧条,这种波动周期不固定,比季节性更复杂。
4. 随机性(Irregular)¶
除了这些规律,时间序列还有一些不可预测的随机波动,就像你某天因为感冒体重突然下降,或者股市因为突发事件大幅波动,这些是时间序列中的随机成分。
三、时间序列分析方法¶
1. 平滑法¶
平滑法就像给时间序列“磨平棱角”,让数据更平滑,便于发现趋势。简单移动平均就是取最近几个数据点的平均值,比如计算三天的平均气温来平滑气温曲线;指数平滑法则更注重近期数据,给它们更大的权重。
2. 分解法¶
分解法是把时间序列拆成趋势、季节性和随机性这几个部分,就像拆解机器一样。通过分解,我们可以清楚地看到每个部分对时间序列的影响,比如分析产品销量时,可以知道销量变化是因为整体市场趋势,还是因为季节因素,或是随机波动。
3. ARIMA模型¶
ARIMA模型是时间序列分析的“瑞士军刀”,它能处理各种时间序列数据。它通过综合考虑数据的自相关性和移动平均性来预测未来值。比如预测股票价格时,ARIMA模型会分析过去价格和误差项的关系,来预测下一期的价格。
4. 指数平滑法¶
指数平滑法是平滑法的升级版,它对不同时间的数据赋予不同的权重,越近的数据权重越大。这种方法不仅能平滑数据,还能进行预测,尤其适用于有趋势和季节性的数据,比如预测下季度的销售量。
四、时间序列分析的应用¶
时间序列分析在生活中无处不在,比如:
-
金融领域:预测股票价格、汇率走势,帮助投资者决策。
-
商业领域:预测产品销量,优化库存管理,避免缺货或积压。
-
气象领域:预测气温、降水量等气象数据,为农业生产、防灾减灾提供依据。
- 工业领域:监测生产设备的运行状态,预测设备故障,提前进行维护。¶
ARIMA模型理论¶
核心思想
d的含义:需要做几次差分才能消除趋势/季节性
公式:
$$ \Delta^d Y_t = \text{AR}(p) + \text{MA}(q) $$ (\(\Delta\) 表示差分,如 \(\Delta Y_t= Y_t - Y_{t-1}\)),\(\text{AR}(p)\):用过去\(p\)天的数据预测今天,\(\text{MA}(q)\):用过去\(q\)天的预测误差修正今天。
操作步骤
- ADF检验确认是否需要差分(若p值>0.05,则需差分)
- 观察ACF/PACF或自动定阶(如auto.arima)
- 模型诊断:残差是否为白噪声(Ljung-Box检验)
白噪声
&&
1. 信息准则(AIC、BIC)(确定模型参数用的!)¶
在选择时间序列模型时,我们不仅要看模型拟合的好坏,还要考虑模型的复杂性。
AIC(赤池信息量准则)和BIC(贝叶斯信息量准则)是两个常用的统计指标,它们帮助我们平衡模型的拟合效果与复杂度。
总结:小样本用AIC、大样本用BIC
AIC(赤池信息量准则)¶
- AIC(Akaike Information Criterion):AIC 是衡量模型拟合优度的标准,综合考虑模型的拟合程度(即残差平方和)和模型的复杂度。其公式如下:
$$ \text{AIC} = 2k - 2\ln(L) $$
- 参数解释:
- \( k \):模型中的参数个数
-
\( L \):模型的似然函数(描述模型拟合度的指标)
-
AIC 的意义:AIC 值越小,模型越好。它用于在多个候选模型中选择拟合效果最佳的模型,同时对过于复杂的模型进行惩罚。
BIC(贝叶斯信息量准则)¶
-
BIC(Bayesian Information Criterion):BIC 和 AIC 类似,也是用来衡量模型拟合优度的标准。与 AIC 相比,BIC 对于模型复杂度的惩罚力度更大。BIC 的公式如下:
-
\[ \text{BIC} = \ln(n)k - 2\ln(L) \]
-
参数解释:
- \( n \):样本大小
- \( k \):模型中的参数个数
-
\( L \):模型的似然函数
-
BIC 的意义:与 AIC 类似,BIC 值越小越好。但由于 BIC 对复杂度的惩罚更强,它更倾向于选择简单的模型。
2. 模型检验¶
理想情况下,残差的ACF,PACF应接近于零。
3. 预测误差评估(常用MAPE)¶
MAPE(平均绝对百分比误差,在15%以内模型都可以用)
MAPE 是基于误差的百分比的平均值,常用于衡量模型的相对误差,公式: $$ \text{MAPE} = \frac{1}{n} \sum_{t=1}^n \left| \frac{y_t - \hat{y}_t}{y_t} \right| \times 100\% $$
其中,( \(y_t\) ) 是实际值,( \(\hat{y}_t\) ) 是预测值,( \(n\) ) 是样本量。
特点
- MAPE 能够反映相对误差,适合用于不同量级数据的比较。
- 但当实际值接近 0 时,MAPE 可能出现较大波动。