大拇指知识分享!欢迎光临!
我们一直在努力!

时间序列图怎么做(详解时间序列的自相关性)

目录

  • 时间序列分析——引言
    • 时间序列
    • 时间序列发展历程
    • 时间序列分析方法
    • 应用及局限
  • 时间序列分析——相关分析
    • 描述分析
    • 自相关
    • 互相关和互相关系数
    • 小结
  • 时间序列分析——回归分析
    • 回归分析方法
    • 线性回归
    • 非线性回归
    • 提升数据鲁棒性
    • 小结
  • 时间序列分析——自回归
    • 移动平均
    • 指数平均
    • 自回归分析

时间序列分析——相关分析

数据准备

在数据分析过程中,不同变量的关联往往是获得线索的第一步,比如说,通过月亮变化与潮汐周期的关系,即使没有万有引力的理论,也可以掌握潮水规律。其他的比如传统的二十四节气,也是总结出来的时间变化与气候的关联,即使没有天气预报,也能辅助农业生活。

相关分析是一种广泛应用于数据分析中的方法,其主要目的是衡量不同变量之间的相似程度。

对于时间序列,相关分析可以简单划分为自相关和互相关,分别用于分析数据自身的周期性和数据之间的关联。

首先我们拿到数据,会对其进行描述分析,最为直观的就是将其以图形的方式展示出来,这时我们就大致对数据有了一些了解,然后可以决定下一步的分析方向,产生一些定量的分析。在描述分析完成之后,我们需要一些定量的特征来表达数据的关联或者趋势,这时就会用到相关分析和回归分析的一些特征量。

接下来的文章中,我们使用一段随机生成的数据(包含网站访问量和广告点击量),开始时间序列分析的步骤介绍。

描述分析

时间序列随时间变化图

上面这一组数据,看似有些杂乱,但将其转换成图形之后,就变得比较明确了,访问量和广告点击量数据呈现高度相关的关系,并且波动上涨。

散点图

为了更清楚的展现访问量和点击量之间的关联,还可以使用散点图来直观的描述。散点图可以将不同的特征集中展现出来,同时排除其他变量的影响。比如说从上面的图中可以看出,网站访问量存在日常波动,但广告点击量和网站访问量之间的关联似乎不受到,这些波动的影响。我们可以尝试画出访问量和点击量之间的散点图,可以比较清晰的看出他们基本在一条直线上,呈现出高度正相关的关系。

既然相关性这么高,我们是不是能开发一个更平稳的特征量,来描述访问量和点击量之间的关系呢,于是尝试定义渗透率=广告点击量/网站访问量,来描述这两者之间的关联,可以看到,渗透率这一指标虽然也有随时间的波动,相对来说更平稳一点,可以看做是一个比较好的指标。

从图形中获取结论

通过画图,我们对上面的数据有了一些直观的认识,得到了一些有益的结论

  1. 网站访问量波动上涨
  2. 网站访问量和广告点击量呈现高度相关特性
  3. 渗透率相对平稳,单核点击量也有一定的相关性

那么接下来的内容里,我们尝试把上述结论形成一个定量的描述。首先我们利用自相关分析,寻找波动的周期是多少。然后再使用互相关,分析网站访问量,广告点击量和渗透率这几个变量之间的相关程度。

自相关分析

上面我们从图形中能看出数据是在波动的,那数据是否具有周期性呢,对于这种少量数据,我们可以通过数震荡峰值的间距的办法来得到数据的周期性,下图可以看出,峰值的位置在5,7,11,15,19,其最有可能的间隔是4。那么接下来通过自相关的方法,对这一观察结论进行定量描述。

通过自相关,可以分析数据的周期性,自相关系数的计算公式如下:

一个时间序列的自相关是延迟k的函数,从公式可以看出,当x_{t-k}与x_t越接近时,R越大,当k=0时,R=1,自相关最大。

在使用自相关进行分析之前,我们先看一看一般信号的自相关是什么样的。

首先第一个是生成的随机信号,随机信号按照预期,不同时刻的信号之间并不存在明细关系,因此它的自相关只有在延迟为0时是1,其他时候下降到较小值。

下图中展示了随机信号和它的自相关,从结果上来看基本上和想象中差不多,在延迟为0时是1,其他时候基本都在0.2之下。

另外一种典型的适用于自相关分析的信号是周期信号,信号的自相关本身就是寻找信号的周期性,因为假设信号延迟t之后跟自己相等,那么自相关也会是1。下图展示了一个周期信号与自相关的值,可以看出对于该周期信号,除了在延迟为0是自相关为1,在延迟为6和12时,也取得了较大的自相关值。

当然,在实际的数据场景中,信号既不是纯粹随机的也不是纯粹周期的,往往是不同因素叠加而成,比如周期性加随机性,其互相关也可能呈现出叠加的形式。比如周期的峰淹没在随机性之中等等。

接下来我们还是以上述网站访问量数据为例,来看从自相关能获取什么信息。计算上述网站访问量的自相关可得到如下结果,当延迟为4的时候,确实是互相关较大的一个位置,但是互相关的值并不大,说明信号的周期性不明显,可能只是一些随机波动。

因此可以初步得出结论,对于只有20天数据的网站访问量数据,可能存在周期为4天的周期性,但是并不太显著,为了得到更明确的结论,我们需要更多的数据,来对抗数据中的随机性因素,避免周期性淹没在随机性之中。

互相关和互相关系数

一般来说,两个信号的互相关定义如下

但实际使用过程中,这个公式很不好使,因为x,y可能是任意数值,随随便便就很大或者很小,没有横向对比的意义。因此归一化就很重要,归一化之后的信号互相关称为互相关系数

这一公式可以和前面自相关完全对应起来,将公式中的y替换成x_t就变成了自相关公式。

那么互相关作为一个可以归一化到0~1之间的数,一般是多少才算高或者低呢。

我们可以首先看一下随机数的互相关系数是多少,尝试了若干次随机生成20维数据,计算出的互相关系数在0~0.4之间,当随机数长度增加到200维之后,计算出的互相关系数就基本在0.1以下了。因此,对较少的数据,互相关系数有可能因为波动而偏高,但如果数据较多,随机波动则不容易影响互相关系数的结果。

在前面的描述分析中,我们已经发现,网站访问量和广告点击量存在较为明显的相关关系,可以计算出它们的相关系数为0.9830,已经非常高了。另外,我们还尝试使用渗透率的概念,来缓解数据的随机波动,试图提取一个较为稳定的特征量,可以看出渗透率大约是为0.04的一个常数,那么渗透率和网站访问量之间是否存在相关关系呢?通过前面的图形可以简单看出渗透率与访问量之间的相关关系变弱了,通过计算发现二者的相关系数依然高达0.9559。那这是否能够说明

广告点击量 = 0.04*网站访问量

这个结论不成立呢,其实不是的,因为残差已经比较小了,虽然残差依然与变量之间有一定的相关性,但我们依然可以将其当成噪声来处理。

这里我们得到一个公式:广告点击量 = 0.04*网站访问量,也就是一个非常直觉的线性回归模型,具体关于这个模型及其展开的一些分析方法,将在下一篇文章中给出。

小结

本文介绍了相关分析的介绍以及实例,其中自相关主要揭示信号自身的周期性,互相关主要用于判断信号之间的关联,当信号之间有时间差的话,互相关也可以用来计算时间差。

当然这些信号的特征可以帮我们对时间序列及不同序列之间的关系提供分析的基础,有时相关关系已经可以提供足够的结论。但如果需要更为深入的揭示信号的本质内涵,则可能用到后续更为丰富的回归分析或者建模。

赞(0)
未经允许不得转载:大拇指知识 » 时间序列图怎么做(详解时间序列的自相关性)
分享到: 更多 (0)

评论 抢沙发

4 + 1 =
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

大拇指知识!

联系我们联系我们