深度学习

2020 时序分析(15)

2020-06-20  本文已影响0人  zidea
machine_learning.jpg

最近在做时序预测,时序预测的模型可能相对于图像识别这边模型要简单的多,而且更多会使用到数据统计模型和分析工具,用到机器学习模型也就是回归模型、随机森林,深度学习用到 LSTM 这样循环神经网来做时序分析,主要还是使用一些为时序模型量身定制模型例如 ARMA 简单点有 MA EWMA 模型等。

非平稳序列的确定性分析

确定性因素分解

对时间序列长期观察和分析,虽然时间序列难于预测和把握,因为时间序列千变万化,但是可将这些时间序列分解为四类因素,也就是影响序列波动的因素有哪些

这些因素仅从字面上,就可以了解其含义。但是大家可能和我一样对与季节性变动因素和循环波动因素如何区分会有一些疑问。因为他们都属于周期因素,如何区分,不同点就是季节性变动因素周期是固定的,而循环波动因素周期是可长可短。

这种将时间序列分解为一些确定因素和不确定因素组合方法就是因素分解方法,也是一种时间序列分析的方法。

时间序列分解模型

如果用x_t表示序列,那x_t会受 (T,S,C,I) 的影响,所以我们写成函数表达式
x_t = f(T_t,S_t,C_t,I_t)

加法模型为

x_t = T_t + S_t + C_t + I_t

乘法模型为

x_t = T_t \times S_t \times C_t \times I_t

伪加法模型为

x_t = T_t \times (S_t + C_t + I_t - 1)

对数加法模型为

\ln x_t = \ln T_t + \ln S_t + \ln C_t + \ln I_t

这里使用不同模型,也就是不同方式将各种因素进行叠加组合为我们想要时间序列。其中对数加法模型就是通过对两边 log 将乘法模型转换为加法模型。其中伪加法模型可能是大家第一次见到过的,其他应该比较好理解。

确定性时序分析的目的

趋势分析

把时间作为自变量,相应的序列观察值作为因变量,建立序列值随时间变化的回归模型的方法。
分类的方法分为线性拟合和非线性拟合。

能转换成线性模型的都转换成线性模型,用线性最小二乘法进行参数估计

模型 变换 变换后模型 参数估计方法
T_t = a + bt + ct^2 t_2 = t^2 T_t = a + bt + ct_2 最小二乘法
T_t = a bt + ct^2 t_2 = t^2 T_t = a + bt + ct_2 最小二乘法

拟合模型
\begin{cases} x_t = a + bt + I_t, t=1,2, \cdots , 40 \\ E(I_t) = 0,\, Var(I_t) = \sigma^2 \end{cases}

确定性因素分解方法

移动平均法

1870 年由法国数学家 De forest 提出,19世纪晚期,已经被广泛用于商业和保险精算等行业。这个算法看起来有点简单,还是那句话简单不等于效果不好,越复杂就越难于控制和预测。前面说到商业会用到移动平均方法,英文为 Moving Average 简记为 MA。移动平均方法用于消除随机波动和季节性影响。从而得到商品价格变动趋势。我们对价格进行估计。在股市中说到的 5 日均线、10 日均线等指标实际上都是移动平均估计值。

移动平均的基本思想

假定在一个比较短的时间间隔里,序列值之间的差异主要是由随机波动造成的。根据这种假定,可以用一定时间间隔内的平均值作为某一期的估计值。如果不同时刻的值是因随机因素造成的不确定。

n 期中心移动平均

\hat{x}_t \begin{cases} \frac{1}{n}(x_{t - \frac{n-1}{2}} + x_{t - \frac{n-1}{2} +1} + \dots + x_t + \dots + x_{t + \frac{n-1}{2} -1} + x_{t + \frac{n-1}{2}}) \\ \frac{1}{n}(x_{t - \frac{n}{2}} + x_{t - \frac{n}{2} +1} + \dots + x_t + \dots + x_{t + \frac{n}{2} -1} + x_{t + \frac{n}{2}}) \end{cases}

n 期移动平均

\hat{x}_t = \frac{1}{n}(x_t + x_{t-1} + \dots + x_{t-n-1})

上一篇 下一篇

猜你喜欢

热点阅读