其他分享
首页 > 其他分享> > IBM Machine Learning学习笔记——Time Series and Survival Analysis

IBM Machine Learning学习笔记——Time Series and Survival Analysis

作者:互联网

文章目录

参考文章:时间序列分析

一、时间序列介绍

1.时间序列分析介绍

时间序列:依照时间顺序组织的一组数据,数据通常是有规律的进行采集。

对于时间序列问题,存在以下特点:数据可能和时间相关; 通常是不稳定的(难以建模);需要大量数据。并且,对某一时间的预测会用在之后一段时间的预测,如果出错就会导致后续的一连串错误。因此,原始的回归方法对于时间序列模型无法进行有效的预测

在评估时间序列的预测结果方面也充满着挑战。例如在商业分析中对于销量的预测还要考虑成本等许多问题,在得到结果时也需要很长的时间。

预测问题的分类:

2.时间序列分解

时间序列数据可以被分解为几个部分:

大体上讲,如果我们能够首先移除已知来源的方差(例如趋势和季节性),模型能够表现的更好。

分解模型:

  1. 加法分解:value(观察值)=T(趋势)+S(季节性)+R(残差)
  2. 乘法分解,通过log变换可以将乘法分解转变为加法分解:value = T x S x R
  3. 混合分解:加法分解和乘法分解的结合

加法分解适用于季节性和趋势无关,乘法分解适用于季节性和趋势有关。混合分解则适用于时间序列中的一些值趋近或等于0。

分解时间序列的方法有很多,以下列举几个:

分解模型的python实现statsmodels.tsa.seasonal.seasonal_decompose

二、平稳性和时间序列平滑

1.稳定性和自相关

平稳性影响建模和预测的能力。一个平稳的序列有如下特征:稳定的均值;稳定的方差;没有阶段性成分(季节性变量);稳定的自相关结构(某一天的数值与之前的数据相关)。不平稳的序列很难建模,对于不平稳序列,处理方法如下:

  1. 识别不平稳的来源
  2. 转换序列使其变得平稳
  3. 通过平稳的序列进行建模

识别不平稳数据的方法:

将不平稳序列转换为平稳序列的方法:

2.时间序列平滑

平滑过程通常能够减少噪声的影响从而提升对序列的预测能力,平滑数据的方法有很多种,比如移动平均法、指数平均法等。

(1)移动平均法

移动平均法可以避免局部波动的敏感性,两种基本的方法分别是等权重移动平均和指数加权移动平均。

等权重移动平均:首先选择窗口的大小,这里假设为3,之后首先计算前三个数的平均值,之后将窗口向后滑动,得到第2-4个数的平均值,以此类推直到到达最后一个数。等权重移动平均法在处理存在趋势变化较大的数据时效果不好,因此可以采用指数加权移动平均法。

指数加权移动平均:首先选择窗口的大小,这里假设为3,之后不同于直接计算三个数的平均值,这里我们对这三个数进行指数加权,加权方法例如w+w^2+ w^3=1,这里可以算出w约等于0.543。因此和预测目标距离越近的数有更大的权重。

(2)指数平均法

一阶指数平均:
在这里插入图片描述
二阶指数平均:可以减小趋势的影响
在这里插入图片描述

三阶指数平均:可以减小趋势和季节性的影响
在这里插入图片描述

三、ARMA模型

1.ARMA模型

ARMA模型包括两个模型:AR(autoregression)和MA(moving average),该方法也叫做Box-Jenkins方法:

确定p和q的方法是可以通过自相关图和部分自相关图确定,也可以将其作为超参数用网格搜索的方式确实

使用ARMA模型需要注意的是:

判断季节性是否存在的几种方法:

选择模型的方法:
在这里插入图片描述

2.ARIMA和SARIMA模型

ARIMA

ARIMA模型是ARMA模型在整合时间序列(integrated time seires)上的扩展。

整合时间序列:由于将过去的值累加到一起形成的时间序列,例如股票价格。通过差分的方法可以将其转换成平稳序列。

ARIMA模型包含三个模型,每个模型都有对应的参数p、d、q:

SARIMA

SARIMA(Seasinal-ARIMA)是ARIMA在季节性方面的扩展。相比与ARIMA的参数,SARIMA多了三个参数(P、D、Q),这三个参数表示的含义和p、d、q相同,区别在于这三个参数只在某一个季节应用

四、深度学习和存活分析预测

1.用于预测的深度学习

利用RNN、LSTM等深度学习方法可以更有效的对时间序列问题进行预测

2.生存分析

参考文章:生存分析(Survival Analysis)、Cox风险比例回归模型(Cox proportional hazards model)及C-index【技术分享】生存回归

Kaplan-Meier曲线python实现:lifelines.KaplanMeierFitter

标签:IBM,Series,Survival,预测,分解,时间,序列,模型,季节性
来源: https://blog.csdn.net/weixin_45325331/article/details/111472847