机器学习与统计建模 —— 时间序列
时间序列的定义
所谓时间序列就是按照时间的顺序记录的一列有序数据。对时间序列进行观察、研究、找寻他发展变化的规律,预测他将来的走势就是时间序列分析,时间序列分析方法只适用于近期与短期的预测。
相关特征统计量:
均值函数序列:反映的是时间序列每时每刻的平均水平
方差函数序列:反映的是时间序列围绕其均值做随机波动时平均的波动程度
协方差函数和相关系数度量的是两个不同的事件彼此之间的相互影响程序。而自协方差函数和自相关系数(ACF)度量的是同一事件在不同时期之间的相关程度,形象地讲就是度量自己过去的行为对自己现在的影响
偏自相关系数:在剔除了中间个随机变量的干扰后,影响的相关变量。
时间序列常用模型:
- 长期趋势:是时间序列在长时期内呈现出来的持续向上或持续向下的变动。
- 季节变动:是时间序列在一年内重复出现的周期性波动。
- 循环波动:是时间序列呈现出得非固定长度的周期性变动。循环波动的周期可能会持续一段时间,但与趋势不同,它不是朝着单一方向的持续变动,而是涨落相同的交替波动。
- 不规则波动:是时间序列中除去趋势、季节变动和周期波动之后的随机波动。不规则波动通常总是夹杂在时间序列中,致使时间序列产生一种波浪形或震荡式的变动。只含有随机波动的序列也称为平稳序列
时间序列分析方法
1、移动平均法
缺点:预测值总是停留在过去的水平上而无法预计会导致将来更高或更低的波动
N越大,修匀的程度也越大,起伏也越小,有利于消除不规则变动的影响,但同时周期变动难于反映出来。一般N值的取值范围:5<=N<=200。当历史序列的基本变化不大且序列中随机变动成分较多时,N的取值应该大一些,否则N的取值应该小一些。选择N值的一个有效方法是,比较若干模型的预测误差,预测误差最小者为好。
一次移动平均法
使用最近N期序列值的平均值作为未来各期的预测结果,每期数据求平均时的作用是一样的
适用范围:适用于发展趋势变化不大的情况
计算公式为:
预测标准误差为:
加权移动平均法
考虑各期数据的重要性,对近期数据给予较大的权重。
需要计算总的平均相对误差,修正预测值
适用范围:适用于发展趋势变化不大的情况
计算公式为:
二次移动平均法
利用移动平均的滞后偏差的规律来建立直线趋势的预测模型,是一种既能反映趋势变化,又可以有效分离出周期变化的方法。
适用范围:适用于具有线性趋势的情况
计算公式为:
2、指数平滑法
指数平滑法实际上是一种特殊的加权移动平均法。预测值是以前观测值的加权和,且对不同的数据给予不同的权,新数据给较大的权,旧数据给较小的权。
缺点:难以确定指数平滑系数,受主观影响较大
一次指数平滑法
- 适用范围:适用于发展趋势变化不大的情况
计算公式为:
即:最新预测值=前一期预测值+前期预测值产生的误差的修正值。
平滑系数的确定:
- 平滑系数a起到一个调节器的作用。a值选取得越大,预测值受近期影响越大;a值选取得越小,预测值受远期影响越大。
- 如果时间序列波动不大,比较平稳,则a应取小一点(如0.1~0.5),以减少修正幅度,使预测模型能包含较长时间序列的信息
- 如果时间序列具有迅速且明显的变动倾向,则a应取大一点,如(0.6~0.8)
初始值的确定:
- 当时间序列的数据较多时,取第一期的实际值为初值
- 当时间序列的数据较少时,取最初几期的平均值为初值
二次指数平滑法
- 适用范围:适用于具有线性趋势的情况
计算公式为:
平稳时间序列
一个时间序列,如果均值没有系统的变化(无趋势)、方差没有系统变化,且严格消除了周期性变化,就称之是平稳的。
根据限制条件的严格程度,平稳时间序列可以分为以下两种类型
严平稳时间序列:只有当序列的所有统计特征都不会随时间而变化时才能被称为严平稳。是对序列联合分布的要求,以保证序列所有的统计特征都相同
宽平稳时间序列:只要求序列二阶平稳,对于高于二阶的维度没有任何要求
平稳时间序列有以下两个统计性质
常数均值
自协方差函数和自相关函数只依赖于时间的平移长度而与时间的起止点无关
时间序列的预处理
对序列进行纯随机值和平稳性的检验
1、平稳性的检验
对序列的平稳性有两种检验方法,一种是根据时序图和自相关图显示的特征做出判断的图检验方法;一种是构造检验统计量进行假设检验的方法。图检验方法操作简便,但其主观性较强,最好能用假设检验的方法进行辅助判断。
时序图检验
根据平稳时间序列方差和均值为常数的特点,平稳序列的时序图应该显示出该序列始终在一个常数值附近随机波动,并且波动的范围由界的特点。
如果观察序列的时序图显示出该序列有明显的趋势性或周期性,那它通常不是平稳序列。
如图所示,销量有明显的上升趋势,所以它一定不是平稳序列。
自相关图检验
自相关图的一个坐标轴表示延迟时间数,另一个坐标轴表示自相关系数
平稳序列通常具有短期自相关性:随着延迟期数的增加,平稳序列的自相关性会很快衰减到0。反之,非平稳序列的自相关系数衰减向0的速度会比较慢。
三角对称性:具有单调趋势的非平稳序列
长期位于零轴的一边:具有单调趋势的非平稳序列
正弦波动规律:具有周期变化规律的非平稳序列
在零轴附近波动:随机性强的平稳时间序列(很快衰减到0)
单位根检验
如果该统计量的P值小于a时,则可以以1-a的置信水平拒绝原假设,认为该序列为平稳序列;否则,接受原假设,认为该序列为非平稳序列。假设a为0.05,此时p值显著大于0.05,则该序列为非平稳序列。
2、纯随机性的检验
纯随机序列又称为白噪声序列。如果序列值之间没有任何的相关性,这种序列我们称为白噪声序列。白噪声序列没有任何分析的价值
- 非平稳序列一定不是白噪声序列
- 平稳序列如果显示出显著的短期相关性,那么该序列一定不是白噪声序列,否则要对其进行纯随机性检验。
如果该统计量的P值小于a时,则可以以1-a的置信水平拒绝原假设,认为该序列为非白噪声序列;否则,接受原假设,认为该序列为纯随机序列。假设a为0.05,此时p值显著小于0.05,则该序列为非白噪声序列。
平稳时间序列分析
某个时间序列经过预处理,被判定为平稳非白噪声序列,就可以利用ARMA模型进行建模
建模步骤:
非平稳时间序列分析
ARIMA模型的实质就是差分运算与ARMA模型的组合。
差分运算:
建模步骤: