算法模型---时间序列模型

article/2025/10/5 20:33:21

文章来源

时间序列

时间序列是时间间隔不变的情况下收集的不同时间点数据集合,这些集合被分析用来了解长期发展趋势及为了预测未来。
时间序列与常见的回归问题的不同点在于:
1、时间序列是跟时间有关的;而线性回归模型的假设:观察结果是独立的在这种情况下是不成立的。
2、随着上升或者下降的趋势,更多的时间序列出现季节性趋势的形式;

常用的时间序列模型有AR模型(Autoregressive model:自回归模型)、MA模型(moving average model:滑动平均模型)、ARMA模型(Auto-Regressive and Moving Average Model:自回归滑动平均模型)和ARIMA模型(Autoregressive Integrated Moving Average Model:自回归积分滑动平均模型)等。

时间序列的预处理(使数据平稳化和随机化)

拿到一个观察值序列之后,首先要对它的平稳性和纯随机性进行检验,这两个重要的检验称为序列的预处理。根据检验的结果可以将序列分为不同的类型,对不同类型的序列我们会采用不同的分析方法。

平稳化处理

平稳 就是围绕着一个常数上下波动且波动范围有限,即有常数均值和常数方差。如果有明显的趋势或周期性,那它通常不是平稳序列。序列平稳不平稳,一般采用三种方法检验:

时序图检验

这里写图片描述

看看上面这个图,很明显的增长趋势,不平稳。

利用自相关系数和偏相关系数

自相关系数和偏相关系数的概念可参考《算法模型— 概率论基础—相关系数相关》
下面是不平稳数据的自相关和偏相关系数的一种情形。
这里写图片描述
左边第一个为自相关图(Autocorrelation),第二个偏相关图(Partial Correlation)。
平稳的序列的自相关图和偏相关图要么拖尾,要么是截尾。截尾就是在某阶之后,系数都为 0 。怎么理解呢,看上面偏相关的图,当阶数为 1 的时候,系数值还是很大, 0.914;二阶长的时候突然就变成了 0.050. 后面的值都很小,认为是趋于 0 ,这种状况就是截尾。什么是拖尾,拖尾就是有一个缓慢衰减的趋势,但是不都为 0 。
自相关图既不是拖尾也不是截尾。以上的图的自相关是一个三角对称的形式,这种趋势是单调趋势的典型图形,说明这个序列不是平稳序列。
平稳序列的自相关系数会快速衰减。

单位根检验

单位根检验是指检验序列中是否存在单位根,如果存在单位根就是非平稳时间序列。
单位根检验:ADF是一种常用的单位根检验方法,他的原假设为序列具有单位根,即非平稳,对于一个平稳的时序数据,就需要在给定的置信水平上显著,拒绝原假设。ADF只是单位根检验的方法之一,如果想采用其他检验方法,可以安装第三方包arch,里面提供了更加全面的单位根检验方法,个人还是比较钟情ADF检验。以下为检验结果,其p值大于0.99,说明并不能拒绝原假设。

利用差分将序列数据转换为平衡序列

差分可以将数据转换为平稳序列。
一阶差分指原序列值相距一期的两个序列值之间的减法运算;k阶差分就是相距k期的两个序列值之间相减。如果一个时间序列经过差分运算后具有平稳性,则该序列为差分平稳序列,可以使用ARIMA模型进行分析。
确定不平稳后,依次进行1阶、2阶、3阶…差分,直到平稳为止。

随机化处理

对于纯随机序列,又称白噪声序列,序列的各项数值之间没有任何相关关系,序列在进行完全无序的随机波动,可以终止对该序列的分析。白噪声序列是没有信息可提取的平稳序列。对于平稳非白噪声序列,它的均值和方差是常数。通常是建立一个线性模型来拟合该序的发展,借此提取该序列的有用信息。ARMA模型是最常用的平稳序列拟合模型。

平稳时间序列建模

某个时间序列经过预处理,被判定为平稳非白噪声序列,就可以进行时间序列建模。
建模步骤:
(1)计算出该序列的自相关系数(ACF)和偏相关系数(PACF);
(2)模型识别,也称模型定阶。根据系数情况从AR§模型、MA(q)模型、ARMA(p,q)模型、ARIMA(p,d,q)模型中选择合适模型,其中p为自回归项,d为差分阶数,q为移动平均项数。
若平稳序列的偏相关函数是截尾的,而自相关函数是拖尾的,可断定序列适合AR模型;若平稳序列的偏相关函数是拖尾的,而自相关函数是截尾的,则可断定序列适合MA模型;若平稳序列的偏相关函数和自相关函数均是拖尾的,则序列适合ARMA模型。(截尾是指时间序列的自相关函数(ACF)或偏自相关函数(PACF)在某阶后均为0的性质(比如AR的PACF);拖尾是ACF或PACF并不在某阶后均为0的性质(比如AR的ACF)。)
(3)估计模型中的未知参数的值并对参数进行检验;
(4)模型检验;
(5)模型优化;
(6)模型应用:进行短期预测。

混合自回归移动平均过程(公式表达)

差分方程
所谓差分方程即将变量 y t y_t yt与它的滞后期联系起来的表达式。
研究变量在第t期的值记为 y t y_t yt。假定给出的动态方程将变量y第t期的值与另外的变量 w t w_t wt以及y的前一期联系起来:
y t = ϕ y t − 1 + w t y_t=ϕy_{t−1}+w_t yt=ϕyt1+wt
上述称为一阶差分方程是因为仅仅只有变量的一阶滞后 ( y t − 1 ) (y_t−1) (yt1)出现在方程中。
移动平均
“移动平均”的含义源于 Y t Y_t Yt是最近两期的 ϵ \epsilon ϵ的加权平均。
ϵ t {\epsilon_t} ϵt是一个白噪声序列。
Y t = μ + ϵ t + θ ϵ t − 1 Y_t=μ+\epsilon_t+θ\epsilon_{t−1} Yt=μ+ϵt+θϵt1
其中μ和θ可以是任意的常数。这个时间序列称为一阶移动平均过程,记为 M A ( 1 ) MA(1) MA(1)
自回归过程
一阶自回归过程
一个一阶自回归,记作 A R ( 1 ) AR(1) AR(1)满足下面的差分方程
Y t = c + ϕ Y t − 1 + ϵ t Y_t=c+ϕY_{t−1}+\epsilon_t Yt=c+ϕYt1+ϵt
ϵ t {\epsilon_t} ϵt是一个白噪声序列。
p阶自回归过程
一个p阶自回归,记作 A R ( p ) AR(p) AR(p)满足下式
Y t = c + ϕ 1 Y t − 1 + ϕ 2 Y t − 2 + . . . + ϕ p Y t − p + ϵ t Y_t=c+ϕ_1Y_{t−1}+ϕ_2Y_{t−2}+...+ϕ_pY{t−p}+\epsilon_t Yt=c+ϕ1Yt1+ϕ2Yt2+...+ϕpYtp+ϵt
混合自回归移动平均过程
一个 A R M A ( p , q ) ARMA(p,q) ARMA(p,q)过程包括自回归和移动平均项:
Y t = c + ϕ 1 Y t − 1 + ϕ 2 Y t − 2 + . . . + ϕ p Y t − p + ϵ t + θ 1 ϵ t − 1 + θ 2 ϵ t − 2 + . . . + θ q ϵ t − q Y_t=c+ϕ_1Y_{t−1}+ϕ_2Y_{t−2}+...+ϕ_pY{t−p}+\epsilon_t+θ_1ϵ_{t−1}+θ_2ϵ{t−2}+...+θ_qϵ_{t−q} Yt=c+ϕ1Yt1+ϕ2Yt2+...+ϕpYtp+ϵt+θ1ϵt1+θ2ϵt2+...+θqϵtq

利用statsmodels库实现时间序列的分析处理

Time Series analysis tsa
statsmodels.tsa.arima_model.ARIMA
AR(I)MA时间序列建模过程——步骤和python代码
Seasonal ARIMA with Python
Python 3中使用ARIMA进行时间序列预测的指南
Python_Statsmodels包_时间序列分析_ARIMA模型
时间序列实战(一)
How to Make Predictions for Time Series Forecasting with Python
How to Use and Remove Trend Information from Time Series Data in Python
时间序列分析之ARIMA上手-Python
[python] 时间序列分析之ARIMA

python中有专门的库statsmodels可以用来作时间序列分析,但spark中则没有现成的。

#-*- coding: utf-8 -*-
import matplotlib.pyplot as plt
import pandas as pd
data=pd.read_csv('./HIS_MONTH.csv')
b=data['fData']
plt.plot(data['fData'])
plt.show()

数据结构如下
这里写图片描述

#自相关图
from statsmodels.graphics.tsaplots import plot_acf
plot_acf(data['fData']).show()

如下所示
这里写图片描述
从图上可以自相关系数基本是拖尾的,稍做调整就可以使用。

#偏自相关图
from statsmodels.graphics.tsaplots import plot_pacf
plot_pacf(data['fData']).show()

如下图所示
这里写图片描述
偏相关系数也基本符合拖尾。

#平稳性检测
from statsmodels.tsa.stattools import adfuller as ADF
print('原始序列的ADF检验结果为:')
print(ADF(data['fData']))
#返回值依次为adf、pvalue、usedlag、nobs、critical values、icbest、regresults、resstore

如下所示

原始序列的ADF检验结果为:
(-6.561077625309946, 8.378411469638636e-09, 0L, 47L, {'5%': -2.925338105429433, '1%': -3.5778480370438146, '10%': -2.6007735310095064}, 273.5266547319719)

p值远小于0.05,拒绝原假设(原假设认为存在单位根),所以该序列为平衡时间序列。

#白噪声检验
from statsmodels.stats.diagnostic import acorr_ljungbox
print('差分序列的白噪声检验结果为:')
print(acorr_ljungbox(data['fValueData'], lags=1))

结果如下

差分序列的白噪声检验结果为:
(array([0.05198092]), array([0.81965149]))

P=0.81965149,统计量的P值大于显著性水平0.05,则接受原假设(原假设认为为白噪声序列)。

下面对原序列做一阶差分运算

#差分后的结果
D_data = data['fValueData'].diff().dropna()
D_data.columns = ['fValueData']
#时序图
D_data.plot()

结果如下:
这里写图片描述
从图上看,一阶差分后,感觉数据分布更对称为随机了。

#自相关图
plot_acf(D_data).show()
plt.show()

结果如下
这里写图片描述
从图上看,一阶差分对数据有改善,振荡衰减更明显

#偏自相关图
plot_pacf(D_data).show()

结果如下
这里写图片描述
从图上看,偏相关系数虽然没有自相关系数好,但基本能满足平稳序列的要求。

#平稳性检测
print('差分序列的ADF检验结果为:')
print( ADF(D_data))

结果如下

差分序列的ADF检验结果为:
(-4.595500765524432, 0.0001316587309452837, 10L, 36L, {'5%': -2.9459512825788754, '1%': -3.626651907578875, '10%': -2.6116707716049383}, 270.35268975914374)

p值远小于0.05,拒绝原假设(原假设认为存在单位根),所以该序列为平衡时间序列。

#白噪声检验
from statsmodels.stats.diagnostic import acorr_ljungbox
#返回统计量和p值
print('差分序列的白噪声检验结果为:')
print(acorr_ljungbox(D_data, lags=1))

结果如下:

差分序列的白噪声检验结果为:
(array([12.35619393]), array([0.00043953]))

P=0.00043953,统计量的P值小于显著性水平0.05,则拒绝原假设(原假设认为为白噪声序列),所以一阶差分后该序列为非白噪声序列,有进一步分析的价值。

Holt-Winters模型原理及python实现

本部分来源,也可以参考该文

原理分析

公式前面也写过,这里再表述一下,有时间再来整理
假设随机时间序列为:
x t ( t = 1 , 2 , … , N , N = n ) x_t(t=1,2,\ldots,N,N=n) xt(t=1,2,,N,N=n)
时间序列数据一般有以下几种特点:1.趋势(Trend) 2. 季节性(Seasonality)。
趋势描述的是时间序列的整体走势,比如总体上升或者总体下降。下图所示的时间序列是总体上升的:
这里写图片描述
季节性描述的是数据的周期性波动,比如以年或者周为周期,如下图:
这里写图片描述
三次指数平滑算法可以对同时含有趋势和季节性的时间序列进行预测,该算法是基于一次指数平滑和二次指数平滑算法的。

移动平均(The simple moving average (MA))

直观上,最简单的平滑时间序列的方法是实现一个无权重的移动平均,目前已知的方法是用窗口函数,平滑统计量 S t S_t St就是最近k个观察值的均值。公式如下:

s t = 1 k ∑ n = 0 k − 1 x t − n = x t + x t − 1 + … + x t − k + 1 k = s t − 1 + x t − x t − k k s_t=\frac{1}{k} \sum_{n=0}^{k-1} x_{t-n}=\frac{x_t+x_{t-1}+\ldots + x_{t-k+1}}{k}=s_{t-1}+\frac{x_t -x_{t-k}}{k} st=k1n=0k1xtn=kxt+xt1++xtk+1=st1+kxtxtk

这样的方法存在明显的缺陷,当k比较小时,预测的数据平滑效果不明显,而且突出反映了数据最近的变化;当k较大时,虽然有较好的平滑效果,但是预测的数据存在延迟。而且最少需要k个值(窗口有限)。

加权移动平均

一种稍微复杂的方法是先选择一组权重因子来计算加权移动平均
ω 1 , ω 2 , … , ω k , 满 足 ∑ n = 1 k ω n = 1 {\omega_1,\omega_2,\ldots,\omega_k},满足\sum_{n=1}^{k}\omega_n=1 ω1,ω2,,ωk,n=1kωn=1
然后用这些权重来计算这些平滑统计量:
s t = ∑ n = 1 k ω n x t − n + 1 = ω 1 x t + ω 2 x t − 1 + … + ω k x t − k + 1 s_t=\sum_{n=1}^{k}\omega_n x_{t-n+1}=\omega_1x_t+\omega_2 x_{t-1}+\ldots+\omega_{k}x_{t-k+1} st=n=1kωnxtn+1=ω1xt+ω2xt1++ωkxtk+1
在实践中,通常在选择权重因子时,赋予时间序列中的最新数据更大的权重,并减少对旧数据的权重。这个方法也需要最少k个值,并且计算复杂。

简单指数平滑法

幸运地是有一种方法可以避免上述问题,它叫做指数平滑法。最简单的指数平滑法如下:
s i = α x i + ( 1 − α ) s i − 1 s_i = \alpha x_i + (1-\alpha)s_{i-1} si=αxi+(1α)si1
其中 α \alpha α是平滑因子, 0 < α < 1 0 < \alpha < 1 0<α<1 s i s_i si是当前时刻的平滑值。换句话说,平滑统计值 S i S_i Si是当前统计值 X t X_t Xt与上一时间平滑值 S i − 1 S_{i-1} Si1加权平均。这个简单指数平滑是很容易被应用的,因为只要有两个观察值就能计算了。这里α的选取,我们可以采用最小二乘来决定 α \alpha α(最小化 ( s t − x t ) 2 (s_t-x_t)^2 (stxt)2)。
一次指数平滑算法进行预测的公式为:
x i + h = s i x_{i+h}=s_i xi+h=si
其中i为当前最后的一个数据记录的坐标,亦即预测的时间序列为一条直线,不能反映时间序列的趋势和季节性。

为什么被称为“指数”平滑法
从它的递推公式就能发现:

简单指数平滑法适用于没有总体趋势的时间序列。如果用来处理有总体趋势的序列,平滑值将往往滞后于原始数据,除非α的值接近1,但这样一来就会造成不够平滑。

二次指数平滑(HoltWinters-无季节趋势)

为了解决上述问题,于是引出了二次指数平滑,能够保留总体趋势信息。因为将指数平滑应用了两次,所以被称为二次指数平滑。与简单指数平滑相比,二次指数平滑加入了时间趋势统计量 t i t_i ti,公式如下:
s i = α x i + ( 1 − α ) ( s i − 1 + t i − 1 ) t i = β ( s i − s i − 1 ) + ( 1 − β ) t i − 1 s_i=\alpha x_i + (1-\alpha)(s_{i-1}+t_{i-1})\\ t_i=\beta (s_i-s_{i-1}) + (1-\beta)t_{i-1} si=αxi+(1α)(si1+ti1)ti=β(sisi1)+(1β)ti1
s i s_i si添加了与一次指数平滑相比,添加了一个新的趋势项 t i t_i ti;而 t i t_i ti的表达式与一次指数平滑形式上是一样的,只不过用将 x i x_i xi换成 ( s i − s i − 1 ) (s_i-s_{i-1}) (sisi1),趋势可以想像成增量,就是在此刻与上一刻的差值,趋势当然应该用平滑后的数据的差值;同时将一次平滑中的 s i − 1 s_{i-1} si1换成 t i − 1 t_{i-1} ti1
二次指数平滑的预测公式为
x i + h = s i + h t i x_{i+h}=s_i+h \ t_i xi+h=si+h ti
二次指数平滑的预测结果是一条斜的直线

三次指数平滑

三次指数平滑将时间序列的季节性这一特征也考虑进去了。
季节性被定义为时间序列数据的趋势,它表现出每一个周期重复自身的行为,就像任何周期函数一样。“季节”这个词用来表示行为每隔时间段L就开始自我重复。在自然界中有不同类型的季节性“累加性”(additive)和“累乘性“(multiplicative),就像加法和乘法是数学的基本运算。
如果每个12月都比每个11月多卖出1000套公寓,我们就说这样的季节趋势是“累加性”的。可以用绝对增⻓来表示。如果我们在夏季比冬季多卖出10%的公寓,那么季节趋势在自然中是“累乘性”的。
累乘性公式如下:
下面的式子中 k k k表示季节频率,这个还需要查资料进行理解
s i = α x i p i − k + ( 1 − α ) ( s i − 1 + t i − 1 ) t i = β ( s i − s i − 1 ) + ( 1 − β ) t i − 1 p i = γ x i s i + ( 1 − γ ) p t − k s_i=\alpha \frac{x_i }{p_{i-k}} +(1-\alpha)(s_{i-1}+t_{i-1})\\ t_i=\beta (s_i-s_{i-1}) + (1-\beta)t_{i-1}\\ p_i=\gamma \frac{x_i}{s_i} + (1-\gamma)p_{t-k}\\ si=αpikxi+(1α)(si1+ti1)ti=β(sisi1)+(1β)ti1pi=γsixi+(1γ)ptk
上式中k为周期, 累乘三次指数平滑的预测公式为:
x i + h = ( s i + h t i ) p i − k + ( h m o d k ) x_{i+h}=(s_i+h\ t_i)p_i-k+(h\ mod\ k) xi+h=(si+h ti)pik+(h mod k)
或者
x i + h = ( s i + h t i ) p i − k + 1 + ( h − 1 ) m o d k x_{i+h}=(s_i+h\ t_i)p_{i-k+1+(h-1) \ mod \ k} xi+h=(si+h ti)pik+1+(h1) mod k
两个公式还需要确认下
累乘性公式初始值的计算
s k = 1 k ( s 1 + s 2 + ⋯ + s k ) t k = 1 k [ x k + 1 − x 1 k + x k + 2 − x 2 k + ⋯ + x k + k − x k k ] p 1 = x 1 s k , p 2 = x 2 s k , ⋯ , p k = x k s k s_k=\frac{1}{k} (s_1+s_2+\cdots+s_k)\\ t_k=\frac{1}{k}\left[ \frac{x_{k+1}-x_1}{k}+\frac{x_{k+2}-x_2}{k}+\cdots+\frac{x_{k+k}-x_k}{k} \right]\\ p_1=\frac{x_1}{s_k},p_2=\frac{x_2}{s_k},\cdots,p_k=\frac{x_k}{s_k} sk=k1(s1+s2++sk)tk=k1[kxk+1x1+kxk+2x2++kxk+kxk]p1=skx1,p2=skx2,,pk=skxk

累加性公式如下:
s i = α ( x i − p i − k ) + ( 1 − α ) ( s i − 1 + t i − 1 ) t i = β ( s i − s i − 1 ) + ( 1 − β ) t i − 1 p i = γ ( x i − s i ) + ( 1 − γ ) p i − k x i + h = s i + h b i + p i − k + h m o d k s_i=\alpha (x_i-p_{i-k} )+(1-\alpha)(s_{i-1}+t_{i-1})\\ t_i=\beta (s_i-s_{i-1}) + (1-\beta)t_{i-1}\\ p_i=\gamma (x_i-s_i) + (1-\gamma)p_{i-k}\\ x_{i+h}=s_i+hb_i + p_{i-k+h \ mod \ k} si=α(xipik)+(1α)(si1+ti1)ti=β(sisi1)+(1β)ti1pi=γ(xisi)+(1γ)pikxi+h=si+hbi+pik+h mod k
或者
x i + h = s i + h b i + p i − k + 1 + ( h − 1 ) m o d k x_{i+h}=s_i+hb_i + p_{i-k+1+(h-1) \ mod \ k} xi+h=si+hbi+pik+1+(h1) mod k
两个公式还需要确认下
累加性公式初始值的计算
s k = 1 k ( s 1 + s 2 + ⋯ + s k ) t k = 1 k [ x k + 1 − x 1 k + x k + 2 − x 2 k + ⋯ + x k + k − x k k ] p 1 = x 1 − s k , p 2 = x 2 − s k , ⋯ , p k = x k − s k s_k=\frac{1}{k} (s_1+s_2+\cdots+s_k)\\ t_k=\frac{1}{k}\left[ \frac{x_{k+1}-x_1}{k}+\frac{x_{k+2}-x_2}{k}+\cdots+\frac{x_{k+k}-x_k}{k} \right]\\ p_1=x_1-s_k,p_2=x_2-s_k,\cdots,p_k=x_k-s_k sk=k1(s1+s2++sk)tk=k1[kxk+1x1+kxk+2x2++kxk+kxk]p1=x1sk,p2=x2sk,,pk=xksk
其中 α \alpha α是数据平滑因子, 0 < α < 1 0 < \alpha < 1 0<α<1; β \beta β是趋势平滑因子, 0 < β < 1 0 < \beta < 1 0<β<1; γ \gamma γ是季节改变平滑因子 0 < γ < 1 0 < \gamma < 1 0<γ<1
α , β , γ \alpha,\beta,\gamma αβγ的值都位于[0,1]之间,可以多试验几次以达到最佳效果。

s , t , p s,t,p s,t,p初始值的选取对于算法整体的影响不是特别大,通常的取值为 s 0 = x 0 , t 0 = x 1 − x 0 s_0=x_0,t_0=x_1-x_0 s0=x0,t0=x1x0,累加时 p = 0 p=0 p=0,累乘时 p = 1 p=1 p=1.
对三次指数平滑法而言,我们必须初始化一个完整的“季节” p i p_i pi的值,不过我们可以简单地设置为全1(针对累乘式)或全0(针对累加式)。只有当序列的⻓度较短时,我们才需要慎重考虑初始值的选取。
我们这里讲的Holt-Winters模型就是三次指数平滑法。哇,终于切入正题了。
所有的指数平滑法都要更新上一时间步⻓的计算结果,并使用当前时间步⻓的数据中包含的新信息。它们通过“混合”新信息和旧信息来实现,而相关的新旧信息的权重由一个可调整的拌和参数来控制。各种方法的不同之处在于它们跟踪的量的个数和对应的拌和参数的个数。三次指数平滑法,功能最强大,既能体现趋势性又能体现季节性,所以三次指数平滑法的参数最多,有三个。
下图为使用累加三次指数平滑进行预测的效果:其中红色为源时间序列,蓝色为预测的时间序列, α , β , γ \alpha,\beta,\gamma αβγ的取值为0.45,0.2,0.95:

下图为累乘三次指数平滑进行预测的效果, α , β , γ \alpha,\beta,\gamma αβγ的取值为0.4,0.05,0.9:

可以看到三次指数平滑算法可以很好的保存时间序列数据的趋势和季节性信息,在International Airline Passengers数据集上累乘平滑指数算法的效果更好。

python代码实现

我们知道HoltWinters模型有三个可调参数,我们的目的就是训练出有效的α,β, γ
。我们有两种方法,一种就是自己取值来试试,一种就是采用数值优化的思想,比如
前面我们提到的最小二乘来最小化误差来求参数(注意不一定能全局收敛!这个问题
实在是让人头痛。。。)我们就采用最小二乘法(L-BFGS)。

RMSE的实现

statsmodels中的holtwinters

statsmodels.tsa模块
statsmodels.tsa.holtwinters源码
statsmodels.tsa.holtwinters.ExponentialSmoothing
ExponentialSmoothing - 指数平滑算法

基于SVM作短期时间序列的预测

传统的做法是提取1、2、3、4、5、7、9、13个单位时间的数据作为特征进行预测;
举个例子进行分析,比如每天都有口香糖的销量,那么如何通过几周的数据预测明天的数据,
就可以选择前1、2、3、4、5、7、14天的数据作为特征,从而预测明天的数据,
通过构建特征,再选择核函数进行预测,其中调参的参数尽量要进行最优化,
参考方法:如果选择RBF核函数,那么其中就会有三个参数,固定两个,然后不停的优化另外一个,直到得到最优解。

具体应用的例子:

(1)SVM预测风场:http://wenku.baidu.com/link?url=SCCIJJe8tXLbTjLMZ81x5Qy6elsceAKIOwtkZ0QxfSCQQ4KaWKwo8Biepjs3Ss2LJ2ewhisNR0ixrDY4kV1Rd7BcqWRenuTaG85K80E-30y
(2)SVM预测股票指数:基于SVM修正的模糊时间序列模型在沪指预测中的应用
(3)SVM预测时间序列其他方面:http://www.docin.com/p-233353900.html

LSTM模型分析及对时序数据预测的具体实现(python实现)

来源:2017年09月30日 10:28:08

如何用LSTM自编码器进行极端事件预测?(含Python代码)

时间序列的并行实现

spark里面的库是没有时间序列算法的,但是国外有人已经写好了相应的算法。其github网址是:https://github.com/sryza/spark-timeseries
sryza/spark-timeseries
Spark-TimeSeries使用方法
A New Library for Analyzing Time-Series Data with Apache Spark
【Spark Summit East 2017】使用Spark进行时间序列分析

基于小波变换的时间序列预测,Python实现,来自雪球

清华AIOps算法:KPI聚类

其他资料

时间序列挖掘-预测算法-三次指数平滑法(Holt-Winters)
Holt-Winters原理和初始值的确定
时间序列模型Prophet使用详细讲解

NeuralProphet:基于神经网络的时间序列建模库


http://chatgpt.dhexx.cn/article/E5mWAFbI.shtml

相关文章

ADF单位根检验三种形式_[STATA] 时间序列模型 ARIMA检验

___ ____ ____ ____ ____ (R) /__ / ____/ / ____/___/ / /___/ / /___/ 13.1 Statistics/Data Analysis 此次系列文章的主题是通过Stata软件来分析时间序列的平稳和非平稳关系,以及如何通过Stata软件来进行不同时间序列模型的预测性分析。…

机器学习——时间序列模型

文章目录 1. 基本概念1.1 自相关函数ACF&#xff08;autocorrelation function&#xff09;1.2 偏自相关函数PACF&#xff08;partial autocorrelation function&#xff09; 2. 常见模型2.1 自回归模型&#xff08;AR&#xff09;2.2 移动平均模型&#xff08;MA&#xff09;2…

时间序列模型算法 - ARIMA (一)

时间序列模型 1.时间序列模型概述1.1 时间序列的不同分类1.2 确定性时间序列分析方法概述1.3 三种时间序列模型 2.指标平滑ES2.1 一次指数平滑法 3.ACF与PACF4.AR5.MA6.ARMA7.ARIMA7.1 差分 8. ARIMA实践8.1 读取数据8.2 画图&#xff0c;观察数据是否非平稳8.3 差分&#xff0…

Office 2016 定制安装工具 v1.0 | Office 2016 自定义安装组件

软件简介 以往Office的安装包都采用的是MSI安装器&#xff0c;允许用户在安装时选择安装的组件&#xff0c;但是微软发布的Office2016安装包只提供了C2R&#xff08;ClickToRun&#xff09;方式&#xff0c;因此默认情况下用户无法选择安装组件&#xff0c;默认会安装所有。大…

office2016激活后还显示激活页面的解决办法

win10系统的office16通过Office激活工具激活之后&#xff0c;但是打开之后还会出现提示“让我们开始吧”的激活的页面&#xff0c; 1.office2016激活后还显示激活页面的解决办法 以后激活之后&#xff0c;每次试用Word或者Excel的时候&#xff0c;都会出现上图的激活提示页面…

运维 office2016自定义安装

office2016自定义安装组件简明教程 引言 以往Office的安装包都采用的是MSI安装器&#xff0c;允许用户在安装时选择安装的组件&#xff0c; 但是微软发布的Office 2016安装包只提供了C2R&#xff08;ClickToRun&#xff09;方式&#xff0c;因此默认情况下用户无法选择安装组…

安装Office的一些工具

1.可以下载各个版本的office&#xff1a;https://msdn.itellyou.cn/ 这个站点经常装系统的朋友应该都知道&#xff0c;一个老站了。 2.部署工具Office Tool Plus&#xff1a;https://otp.landian.vip/zh-cn/ 这个工具挺强大的&#xff0c;可以下载&#xff0c;可以部署&…

office2016 使用KMS破解无法连接服务器

最后发现是wmi服务异常。 修复完成后就正常 注册了

使用office tool plus清除office激活状态

如何清除office激活状态 大多数问题直接更改许可证就行&#xff0c;只有更改许可证无反应才需要使用&#xff0c;本文只是使软件变成未激活&#xff0c;但是激活仍需你已购买许可证 1下载office tool plus 2解压下载好的压缩包 3运行office too lplus.exe 4关闭所有office软件…

OFFICE激活报错0X80080005

点击工具箱->修复Office无法正常激活->修复&#xff0c;看到修复成功&#xff0c;再用Office Tool Plus激活就可以了

Office2016软件安装教程

关注公众号&#xff0c;免费获取资料 ​ 解压压缩文件 点击office 2013 专业增强版 64位文件夹(根据自身系统选择位数)&#xff0c;右击setup - >以管理员的身份运行 3.勾选接收&#xff0c;继续 4.选择自定义安装&#xff0c; 5.点击浏览&#xff0c;选在office 安装位置&…

office2016专业增强版

链接: https://pan.baidu.com/s/1XBEwwkdwhfSDVpIrBm0cFg 密码: nkv2 Microsoft office 2016官方版是针对Windows 10环境从零全新开发的通用应用(Universal App)。office2016正式版中的Word将会增加“Insights for Office”、“Read Mode”等新功能,powerpoint增加了“Prese…

office2016 + visio2016

在电脑已经安装好了office20016增强版后&#xff0c;如果安装visio2016软件来画图&#xff0c;会弹出了如下提示框&#xff1a; cn_office_professional_plus_2016_x86_x64_dvd_6969182.iso和cn_visio_professional_2016_x86_x64_dvd_6970929.iso虽然镜像名称不同&#xff0c;但…

安装office2016专业增强版

安利2个工具 1.Office 2013-2019 C2R Install Main Window Install Office 为安装&#xff0c;这里无需提前下好镜像文件或安装包但要保持有网的状态&#xff0c;如果显示有别的版本则使用强力卸载&#xff0c;卸载干净之后再安装。右边界面为自定义安装选项&#xff0c;选择版…

激活office2016遇:The Software Licensing Service reported that the product SKU is not found.

今天把办公电脑系统重装了&#xff0c;之前的已经用了3年多了&#xff0c;win10还是不错了&#xff01;&#xff01;哈哈 打开巨硬的下载地址&#xff1a;https://www.microsoft.com/zh-cn/software-download/windows10 上面的立即更新&#xff0c;可以更新当前win10系统到最…

windows安装office2016

注意 多个不同版本的Microsoft Office不能共存在一个Windows系统中。 电脑上安装的可能有买电脑时候安装的office&#xff0c;是正版的office。 有可能安装的就是office2016 如果安装office时候提示 需要先卸载电脑上其他版本的office&#xff0c; 微软卸载教程&工具 …

office 2016下载安装

office 2016 下载安装 好几天啦我的office2010一直提示我激活(可能是之前网上找的激活码不管用啦),对于强迫症的我来说实在受不了,所以就索性卸载2010. 下面是获取office2016以及安装步骤 1. 步骤1 &#xff1a; 百度:mdsn 点击第一个&#xff1a;在应用程序中获取你需要的…

office2016显示已经激活,但每次打开都跳出激活页面

问题描述&#xff1a; Office反复提示在新PC上激活 问题原因&#xff1a; 这种情况是因为在新PC上安装Office Standard或Office Professional Plus的批量许可版本时&#xff0c;在安装Office的批量许可版本之前未在新PC上卸载预装版本的Office。 解决方法&#xff1a; 要停止…

KMS工具激活office2016报错0x80080005的解决记录

参考博客记录 | KMS工具激活Office报错 Error Code: 0x80080005的方法&#xff0c;亲测有效。不过为了不出错我把要删除的注册表在删除前备份了一下。

Office2016 mac版本下载安装教程

Office2016 mac版本是一款稳定易用的办公软件&#xff0c;也是Office所有版本中最常用的版本微软不仅在自己的Windows系统中销售多个版本&#xff0c;还在竞争对手苹果公司销售相应的版本的Mac系统&#xff1b; 今天我就给有Macbook电脑的朋友介绍一下这个软件的安装和详细的激…