用python实现ARIMA时间序列预测实例,python时间序列预测的方法

  用python实现ARIMA时间序列预测实例,python时间序列预测的方法

  原文链接:http://tecdat.cn/? P=23544原文来源:拓端数据部落微信官方账号

  下面是一个关于如何使用长期和短期记忆网络(LSTM)来拟合不稳定时间序列的例子。

  年降雨量数据可能很不稳定。与温度不同,温度通常在四季中表现出明显的趋势,而降雨量作为一个时间序列可能相当不稳定。夏天的降雨量和冬天一样多是很常见的。

  以下是2020年11月某地区降雨量的图解。

  作为一个连续的神经网络,LSTM模型在解释时间序列的波动性方面具有优势。

  使用Ljung-Box检验,P值小于0.05表明该时间序列的残差呈现随机模式,表明波动性明显。

  Sm。统计数据。一个Corr _ Ljungbox (Res. Resid,LAGS=[10]) L Jung-box检验

  迪基-富勒试验

  数据操作和模型配置

  这个数据集由722个月的降雨数据组成。

  选取712个数据点进行训练和验证,即建立LSTM模型。然后,将过去10个月的数据作为检验数据,并与LSTM模型的预测结果进行比较。

  以下是数据集的片段。

  然后形成数据集矩阵,用过去的值对时间序列进行回归。

  #形成I in range的数据集矩阵(len(df)-previous-1):a=df[I:(I previous),0] datax。追加数据。append (df [I previous,0])然后用MinMaxScaler标准化数据。

  将前面的参数设置为120,将建立训练和验证数据集。作为参考,previous=120表示模型使用t-120到t-1的过去值来预测时间t的降雨量值。

  前一个参数的选择必须经过测试,但选择了120个时间段,以确保可以识别时间序列的波动性或极值。

  #训练与验证数据的划分train _ size=int(len(df)* 0.8)val _ size=len(df)-train _ size train,val=df [0: train _ size,),df [train _ size: len (df),] #上期数prev

  #将输入转换为[样本、时间步长、特征]。NP。reshape (x _ train,(shape [0],1,shape [1]))模型训练和预测该模型以100个持续时间进行训练,指定712个批次的大小(等于训练和验证集中的数据点数)。

  #生成LSTM网络模型=tf.keras.Sequential()#列出历史打印中的所有数据(history.history.keys())#汇总精度变化PLT . plot(history . history[ loss ])。下面是训练集和验证集的模型损失关系。

  还生成了预测降雨量和实际降雨量之间的关系。

  #绘制所有预测图表plt.plot(valpredPlot)

  将预测结果与基于平均方向精度(MDA)、平均平方根误差(RMSE)和平均预测误差(MFE)的验证集进行比较。

  mda(Y_val,预测)0.909090909090909091 MSE=mean _ squared _ error(Y _ val,预测)RMSE=sqrt(MSE)forecast _ error mean _ forecast _ error=NP . mean(forecast _ error)

  MDA:0.909RMSE:48.5MFE:-1.77测试数据预测

  尽管验证集的结果相当可观,但只有通过将模型预测与测试(或未看到的)数据进行比较,我们才能对LSTM模型的预测能力有合理的信心。

  如前所述,过去10个月的降雨量数据被用作测试集。然后,利用LSTM模型对未来10个月的情况进行预测,并将预测结果与实际值进行比较。

  t-120之前的值用于预测时间t的值

  #测试(未知)预测NP . array([tseries . iloct series . iloc,t)并获得以下结果

  MDA:0.8RMSE:49.57MFE:-6.94近10个月平均降雨量为148.93mm,预测精度表现出与验证集相近的性能,与整个测试集计算的平均降雨量相比误差很低。

  结论在本例中,您看到了:

  如何为LSTM模型准备数据,如何建立LSTM模型,如何检验LSTM预测的准确性,使用LSTM对不稳定时间序列建模的优势

  最流行的观点

  1.用于NLP的Python:使用Keras的多标签文本LSTM神经网络分类

  2.使用长期和短期记忆模型LSTM在2。Python用于预测和分析时间序列——预测功耗数据

  3.python使用Keras中的LSTM来解决序列问题

  4.Python使用PyTorch机器学习分类预测银行客户流失的模型。

  5.r语言多元Copula GARCH模型时间序列预测

  6.用R语言的GAM(广义可加模型)分析电力负荷时间序列。

  R语言的ARMA、ARIMA(Box-Jenkins)、SARIMA和ARIMAX模型用于预测时间序列的个数。

  8.R语言估计时变VAR模型时间序列的实证研究与案例分析

  9.广义加性模型GAM用于时间序列分析。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • ,,Python中利用LSTM模型进行时间序列预测分析的实现
  • 时间序列adf检验怎么判断平稳性,
  • python时间序列模型,python时间序列预测代码
  • python时间序列分析模块,用python实现ARIMA时间序列预测实例
  • 时间序列模型用于哪种预测,时间序列预测模型实验报告
  • 时间序列分析难不难,时间序列分析问题
  • python最简单的时间序列预测,python 时间序列模型
  • 基于lstm的时间序列预测,基于cnn的时间序列预测模型
  • Eviews时间序列模型,时间序列回归模型步骤
  • 时间序列分析基于r期末考试,时间序列分析选择题
  • 时间序列预测的基本前提,简述常用的几种时间序列预测方法
  • 时间序列的多元线性回归模型,时间序列的经典线性回归模型的基本假定是什么
  • adf检验 python,如果时间序列zt经过adf检验
  • stata时间序列数据处理,时间序列数据怎么用stata做回归分析
  • 时间序列分析及其应用-基于R语言实例(原书第4版),时间序列分析r语言答案
  • 留言与评论(共有 条评论)
       
    验证码: