精华内容
下载资源
问答
  • 自协方差函数
    2022-05-24 19:33:25

    0 简介

    自相关(autocorrelation),也称为串行相关(serial correlation),是信号与自身的延迟副本之间的相关关系,它是延迟的函数。 非正式地,这是观察之间的相似性,是它们之间时间滞后的函数。

    自相关分析是一种数学工具,可用于查找重复模式,例如是否存在被噪声掩盖的周期性信号,或在其谐波频率所隐含的信号中识别缺少的基频。 它通常用于信号处理中,以分析功能或一系列值,例如时域信号。 不同的研究领域对自相关的定义不同,并且并非所有这些定义都是等效的。 在某些领域,该术语可与自协方差(autocovariance)互换使用。 单位根过程,趋势平稳过程,自回归过程和移动平均过程是具有自相关过程的特定形式。

    1 随机过程中的自相关

    • 数学定义

    在统计中,实数或复数随机过程的自相关是两个不同时间序列或者时滞长度(两个时间序列的差)的函数的皮尔逊相关性。假设 { X t } \{X_{t}\} {Xt}是随机过程,而 t t t是任何时间点( t t t 可以是离散时间过程的整数,或者连续时间过程的实数)。然后 X t X_{t} Xt是在时间 t t t时刻给定过程中所产生的值。假设对于每个时刻 t t t,过程都具有均值和方差。那么,时间 t 1 t_{1} t1 t 2 t_{2} t2之间的自相关函数的定义为:

    R ⁡ X X ( t 1 , t 2 ) = E ⁡ [ X t 1 X ‾ t 2 ] \operatorname {R} _{XX}(t_{1},t_{2})=\operatorname {E} \left[X_{t_{1}}\overline {X}_{t_{2}}\right] RXX(t1,t2)=E[Xt1Xt2]

    其中E是期望值运算符, − - 表示复数的共轭。请注意,期望可能没有很好地定义。在相乘前减去平均值会在时间 t 1 t_{1} t1 t 2 t_{2} t2之间产生自协方差函数:

    K ⁡ X X ( t 1 , t 2 ) = E ⁡ [ ( X t 1 − μ t 1 ) ( X t 2 − μ t 2 ) ‾ ] = E ⁡ [ X t 1 X ‾ t 2 ] − μ t 1 μ ‾ t 2 \operatorname {K} _{XX}(t_{1},t_{2})=\operatorname {E} \left[(X_{t_{1}}-\mu _{t_{1}}){\overline {(X_{t_{2}}-\mu _{t_{2}})}}\right]=\operatorname {E} \left[X_{t_{1}}{\overline {X}}_{t_{2}}\right]-\mu _{t_{1}}{\overline {\mu }}_{t_{2}} KXX(t1,t2)=E[(Xt1μt1)(Xt2μt2)]=E[Xt1Xt2]μt1μt2

    请注意,这个表达式并不适用于所有时间序列或过程,因为均值可能不存在,或者方差可能为零(对于恒定过程)或无限(对于分布缺少行为良好的矩的过程,例如某些类型的幂定律)。

    • 广义平稳随机过程( wide-sense stationary stochastic process)的定义

    如果 { X t } \{X_{t}\} {Xt}是广义平稳过程,则均值和方差与时间无关,此外,自协方差函数(autocovariance)仅取决于 t 1 t_{1} t1 t 2 t_{2} t2之间的时差:自协方差仅取决于时间距离在两个值之间,而不是绝对时间。这个结论的前提是随机过程是一个广义平稳随机过程。这进一步暗示可以将自协方差和自相关表示为时滞的函数,并且这将是时滞的偶数函数。这给出了更为我们熟悉的自相关函数(auto-correlation function)的形式:

    R ⁡ X X ( τ ) = E ⁡ [ X t + τ X ‾ t ] \operatorname {R} _{XX}(\tau )=\operatorname {E} \left[X_{t+\tau }{\overline {X}}_{t}\right] RXX(τ)=E[Xt+τXt]

    和自协方差函数(auto-covariance function):

    K ⁡ X X ( τ ) = E ⁡ [ ( X t + τ − μ ) ( X t − μ ) ‾ ] = E ⁡ [ X t + τ X ‾ t ] − μ μ ‾ \operatorname {K} _{XX}(\tau )=\operatorname {E} \left[(X_{t+\tau }-\mu ){\overline {(X_{t}-\mu )}}\right]=\operatorname {E} \left[X_{t+\tau }{\overline {X}}_{t}\right]-\mu {\overline{\mu}} KXX(τ)=E[(Xt+τμ)(Xtμ)]=E[Xt+τXt]μμ

    这个形式其实是统计物理中我们所用到的所谓自关联函数,或者自相关函数(这种称呼的前提一般是假定实过程均值为0),而实际的称呼应该为自协方差函数

    • 归一化形式

    在不同学科的实际应用中,经常会通过归一化自协方差函数从而得到与时间有关的皮尔逊相关系数(Pearson correlation coefficient)。然而,在其他学科(例如工程学)中,通常不使用归一化,并且术语“自相关”和“自协方差”可互换使用。

    随机过程的自相关系数(auto-correlation coefficient)的定义为:

    ρ X X ( t 1 , t 2 ) = K ⁡ X X ( t 1 , t 2 ) σ t 1 σ t 2 = E ⁡ [ ( X t 1 − μ t 1 ) ( X t 2 − μ t 2 ) ‾ ] σ t 1 σ t 2 \rho _{XX}(t_{1},t_{2})={\frac {\operatorname {K} _{XX}(t_{1},t_{2})}{\sigma _{t_{1}}\sigma _{t_{2}}}}={\frac {\operatorname {E} \left[(X_{t_{1}}-\mu _{t_{1}}){\overline {(X_{t_{2}}-\mu _{t_{2}})}}\right]}{\sigma _{t_{1}}\sigma _{t_{2}}}} ρXX(t1,t2)=σt1σt2KXX(t1,t2)=σt1σt2E[(Xt1μt1)(Xt2μt2)]

    如果函数 ρ X X \rho_{XX} ρXX定义明确,则其值必须在[ -1,1]之中,其中1表示完全相关,而-1表示完全负相关。

    对于弱平稳过程(weak-sense stationarity process)和广义平稳过程(wide-sense stationarity process),定义为:

    ρ X X ( τ ) = K ⁡ X X ( τ ) σ 2 = E ⁡ [ ( X t + τ − μ ) ( X t − μ ) ‾ ] σ 2 \rho _{XX}(\tau )={\frac {\operatorname {K} _{XX}(\tau )}{\sigma ^{2}}}={\frac {\operatorname {E} \left[(X_{t+\tau }-\mu ){\overline {(X_{t}-\mu )}}\right]}{\sigma ^{2}}} ρXX(τ)=σ2KXX(τ)=σ2E[(Xt+τμ)(Xtμ)]

    其中:

    K ⁡ X X ( 0 ) = σ 2 \operatorname {K} _{XX}(0)=\sigma ^{2} KXX(0)=σ2

    归一化很重要,因为自相关的解释为相关性提供了对统计依赖强度的无标度度量,并且归一化会对所估计的自相关统计特性产生影响。

    • 自相关函数属性

    对称性

    自相关函数 R ⁡ X X \operatorname{R}_{XX} RXX是一个偶函数:

    R ⁡ X X ( t 1 , t 2 ) = R ⁡ X X ( t 2 , t 1 ) ‾ \operatorname {R} _{XX}(t_{1},t_{2})={\overline {\operatorname {R} _{XX}(t_{2},t_{1})}} RXX(t1,t2)=RXX(t2,t1)

    在弱平稳过程中(WSS):

    R ⁡ X X ( τ ) = R ⁡ X X ( − τ ) ‾ \operatorname {R} _{XX}(\tau )={\overline {\operatorname {R} _{XX}(-\tau )}} RXX(τ)=RXX(τ)

    零点取最大值

    对于WSS过程:

    ∣ R ⁡ X X ( τ ) ∣ ≤ R ⁡ X X ( 0 ) \left|\operatorname {R} _{XX}(\tau )\right|\leq \operatorname {R} _{XX}(0) RXX(τ)RXX(0)

    注意 R ⁡ X X ( 0 ) \operatorname {R} _{XX}(0) RXX(0)恒为实数。

    柯西-施瓦茨不等式(Cauchy-Schwarz inequality)

    ∣ R ⁡ X X ( t 1 , t 2 ) ∣ 2 ≤ E ⁡ [ ∣ X t 1 ∣ 2 ] E ⁡ [ ∣ X t 2 ∣ 2 ] \left|\operatorname {R} _{XX}(t_{1},t_{2})\right|^{2}\leq \operatorname {E} \left[|X_{t_{1}}|^{2}\right]\operatorname {E} \left[|X_{t_{2}}|^{2}\right] RXX(t1,t2)2E[Xt12]E[Xt22]

    维纳-辛钦定理(Wiener-Khinchin Theorem)

    R ⁡ X X ( τ ) = ∫ − ∞ ∞ S X X ( f ) e i 2 π f τ d f S X X ( f ) = ∫ − ∞ ∞ R ⁡ X X ( τ ) e − i 2 π f τ   d τ \begin{aligned} \operatorname {R} _{XX}(\tau )&=\int _{-\infty }^{\infty }S_{XX}(f)e^{i2\pi f\tau }{\rm {d}}f\\ S_{XX}(f)&=\int _{-\infty }^{\infty }\operatorname {R} _{XX}(\tau )e^{-i2\pi f\tau }\,{\rm {d}}\tau \end{aligned} RXX(τ)SXX(f)=SXX(f)ei2πfτdf=RXX(τ)ei2πfτdτ

    对于一个实过程,其自相关函数有一个实对称的变换,上述公式可以简化为:

    R ⁡ X X ( τ ) = ∫ − ∞ ∞ S X X ( f ) cos ⁡ ( 2 π f τ ) d f S X X ( f ) = ∫ − ∞ ∞ R ⁡ X X ( τ ) cos ⁡ ( 2 π f τ ) d τ \begin{aligned} \operatorname {R} _{XX}(\tau )&=\int _{-\infty }^{\infty }S_{XX}(f)\cos(2\pi f\tau ){\rm {d}}f\\ S_{XX}(f)&=\int _{-\infty }^{\infty }\operatorname {R} _{XX}(\tau )\cos(2\pi f\tau ){\rm {d}}\tau \end{aligned} RXX(τ)SXX(f)=SXX(f)cos(2πfτ)df=RXX(τ)cos(2πfτ)dτ

    2 确定信号下的自相关函数

    在信号处理中,上面的定义经常不经归一化使用,即不减去均值并除以方差。当通过均值和方差对自相关函数进行归一化时,有时将其称为自相关系数或自协方差函数。

    连续时间信号的自相关
    给定信号 f ( t ) f(t) f(t)的情况下,连续自相关函数 R ⁡ f f ( τ ) \operatorname{R}_{ff}(\tau) Rff(τ)通常定义为在时滞 τ \tau τ下对 f ( t ) f(t) f(t)的互关联函数(cross-correlation)的连续积分:

    R f f ( τ ) = ∫ − ∞ ∞ f ( t + τ ) f ( t ) ‾   d t = ∫ − ∞ ∞ f ( t ) f ( t − τ ) ‾   d t R_{ff}(\tau )=\int _{-\infty }^{\infty }f(t+\tau ){\overline {f(t)}}\,{\rm {d}}t=\int _{-\infty }^{\infty }f(t){\overline {f(t-\tau )}}\,{\rm {d}}t Rff(τ)=f(t+τ)f(t)dt=f(t)f(tτ)dt

    其中 f ( t ) ‾ \overline{f(t)} f(t)表示 f ( t ) f(t) f(t)的共轭。请注意,积分中的参数 t t t是一个虚拟变量(dummy variable),仅在计算积分时才需要。它没有特定的含义。

    • 离散时间信号的自相关

    给定离散时间信号 y ( n ) y(n) y(n),时滞 ℓ \ell 下的离散自相关 R R R为:

    R y y ( ℓ ) = ∑ n ∈ Z y ( n )   y ( n − ℓ ) ‾ R_{yy}(\ell )=\sum _{n\in Z}y(n)\,{\overline {y(n-\ell )}} Ryy()=nZy(n)y(n)

    上面的定义适用于平方可积或者具有有限平方和的信号,即具有有限的能量。相反,“永远持续”的信号被视为随机过程,在这种情况下,需要基于期望值给出不同的定义。对于广义平稳随机过程,自相关定义为:

    R f f ( τ ) = E ⁡ [ f ( t ) f ( t − τ ) ‾ ] R y y ( ℓ ) = E ⁡ [ y ( n )   y ( n − ℓ ) ‾ ] \begin{aligned} R_{ff}(\tau )&=\operatorname {E} \left[f(t){\overline {f(t-\tau )}}\right]\\ R_{yy}(\ell )&=\operatorname {E} \left[y(n)\,{\overline {y(n-\ell )}}\right] \end{aligned} Rff(τ)Ryy()=E[f(t)f(tτ)]=E[y(n)y(n)]

    对于一个非平稳的过程,上述为 t t t n n n的函数。

    如果这个过程具有遍历性(ergodic),则其期望E可以被时间上的平均所代替。对于一个具有遍历性的过程,其自相关还可以定义为:

    R f f ( τ ) = lim ⁡ T → ∞ 1 T ∫ 0 T f ( t + τ ) f ( t ) ‾   d t R y y ( ℓ ) = lim ⁡ N → ∞ 1 N ∑ n = 0 N − 1 y ( n )   y ( n − ℓ ) ‾ \begin{aligned} R_{ff}(\tau )&=\lim _{T\rightarrow \infty }{\frac {1}{T}}\int _{0}^{T}f(t+\tau ){\overline {f(t)}}\,{\rm {d}}t\\ R_{yy}(\ell )&=\lim _{N\rightarrow \infty }{\frac {1}{N}}\sum _{n=0}^{N-1}y(n)\,{\overline {y(n-\ell )}} \end{aligned} Rff(τ)Ryy()=TlimT10Tf(t+τ)f(t)dt=NlimN1n=0N1y(n)y(n)

    这些定义的优点是,即使周期函数不是平稳的遍历过程的输出,它们也可以为周期函数提供合理的,定义明确的单参数结果。

    注意上述内容即是统计物理里面的自相关定义,及由于遍历性导致的自相关在某个点上的平均等价于在时间序列上的平均。这种等价的前提是信号本身具有平方不可积\求和的特点。

    显然根据上述的定义orign软件中使用的公式是错误的,即其没有对总时间T或总个数N求和。这是非常注意的一点,当然这种错误只差一个系数,而不对定性产生影响,但会对量级产生影响

    另外,可以使用有限时间积分通过短时自相关函数分析来处理无穷长信号。

    • 周期信号的定义

    如果 f f f是一个周期为 T T T的连续周期函数,则其 ( − ∞ , ∞ ) (-\infty,\infty) (,)内的积分可以被替换为 [ t 0 , t 0 + T ] [t_{0},t_{0}+T] [t0,t0+T]的积分:

    R f f ( τ ) ≜ ∫ t 0 t 0 + T f ( t + τ ) f ( t ) ‾   d t R_{ff}(\tau )\triangleq \int _{t_{0}}^{t_{0}+T}f(t+\tau ){\overline {f(t)}}\,dt Rff(τ)t0t0+Tf(t+τ)f(t)dt

    上式等价于:

    R f f ( τ ) ≜ ∫ t 0 t 0 + T f ( t ) f ( t − τ ) ‾   d t R_{ff}(\tau )\triangleq \int _{t_{0}}^{t_{0}+T}f(t){\overline {f(t-\tau )}}\,dt Rff(τ)t0t0+Tf(t)f(tτ)dt

    其中 ≜ \triangleq 意为“记作”、“定义为”、“等价于”。

    • 属性

    下面,我们将仅描述一维自相关的属性,因为大多数属性很容易从一维情况转移到多维情况。这些特性适用于广义的平稳过程。

    1)自相关的基本属性是对称, R f f ( τ ) = R f f ( − τ ) R_{ff}(\tau)=R_{ff}(-\tau) Rff(τ)=Rff(τ),这很容易从定义中得到证明。在连续情况下,当 f f f是实函数时,自相关为偶函数:

    R f f ( − τ ) = R f f ( τ ) R_{ff}(-\tau)=R_{ff}(\tau) Rff(τ)=Rff(τ)

    f f f为复数函数时,自相关函数为厄米函数(Hermitian function):

    R f f ( − τ ) = R f f ∗ ( τ ) R_{ff}(-\tau)=R_{ff}^{*}(\tau) Rff(τ)=Rff(τ)

    2)连续自相关函数在原点达到峰值,在此取绝对值,即对于任何 τ \tau τ有:

    ∣ R f f ( τ ) ∣ ≤ R f f ( 0 ) |R_{ff}(\tau )|\leq R_{ff}(0) Rff(τ)Rff(0)

    这是重排不等式(rearrangement inequality)的结果。在离散情况下,结果相同。

    3)周期函数的自相关本身就是具有相同周期的周期。

    4)两个完全不相关的函数之和的自相关(对所有的互相关为零)是每个函数的自相关的和。

    5)由于自相关是互相关(cross-correlation)的一种特定类型,因此它保留了互相关的所有属性。

    6)通过使用符号 ∗ * 来表示卷积,而 g − 1 g_{-1} g1是处理 f f f的函数,并定义为:

    g − 1 ( f ) ( t ) = f ( − t ) g_{-1}(f)(t)=f(-t) g1(f)(t)=f(t)

    R f f ( τ ) R_{ff}(\tau) Rff(τ)可以表示为:

    R f f ( τ ) = ( f ∗ g − 1 ( f ‾ ) ) ( τ ) R_{ff}(\tau)=(f*g_{-1}(\overline{f}))(\tau) Rff(τ)=(fg1(f))(τ)

    更多相关内容
  • 自协方差函数的Matlab实现

    千次阅读 2022-03-20 19:58:07
    自协方差函数的计算机实现,得益于计算机对矩阵并行运算的优化.我们可以采用数组化编程思想,利用矩阵运算,轻松且快速的计算出自协方差矩阵.

    自协方差函数的Matlab实现

    自协方差函数简介

    对于满足均值遍历性和二阶矩遍历性的平稳时间序列一次具体观测值 { x t , t = 1 , 2 , ⋯   , N } \left\{x_{t}, t=1,2, \cdots, N\right\} {xt,t=1,2,,N}, 总体平均可转化为时间平均. 因此, 样本自协方差函数也通常可由下面两种方式计算得到:
    { γ ^ k = 1 N ∑ t = 1 N − k ( x t − μ ^ ) ( x t + k − μ ^ ) , 0 ⩽ k ⩽ N − 1 γ ^ k = γ ^ − k , 1 − N ⩽ k ⩽ − 1 , (1) \begin{cases}\hat{\gamma}_{k}=\frac{1}{N} \sum_{t=1}^{N-k}\left(x_{t}-\hat{\mu}\right)\left(x_{t+k}-\hat{\mu}\right), & 0 \leqslant k \leqslant N-1 \\ \hat{\gamma}_{k}=\hat{\gamma}_{-k}, & 1-N \leqslant k \leqslant-1,\end{cases}\tag{1} {γ^k=N1t=1Nk(xtμ^)(xt+kμ^),γ^k=γ^k,0kN11Nk1,(1)

    { γ ^ k = 1 N − k ∑ t = 1 N − k ( x t − μ ^ ) ( x t + k − μ ^ ) , 0 ⩽ k ⩽ N − 1 γ ^ k = γ ^ − k , 1 − N ⩽ k ⩽ − 1 (2) \begin{cases}\hat{\gamma}_{k}=\frac{1}{N-k} \sum_{t=1}^{N-k}\left(x_{t}-\hat{\mu}\right)\left(x_{t+k}-\hat{\mu}\right), & 0 \leqslant k \leqslant N-1 \\ \hat{\gamma}_{k}=\hat{\gamma}_{-k}, & 1-N \leqslant k \leqslant-1\end{cases}\tag{2} {γ^k=Nk1t=1Nk(xtμ^)(xt+kμ^),γ^k=γ^k,0kN11Nk1(2)
    其中, μ ^ \hat{\mu} μ^ 为平稳序列的均值的估计值. 在实际应用中, 样本自协方差函数的计算通常采用第一种形式.

    其原因在于, 利用 ( 1 ) (1) (1) 式定义的样本自协方差函数能使得 N N N 阶的样本自协方差矩阵
    Γ ^ N = ( γ ^ k − j ) , k , j = 1 , 2 , ⋯   , N \hat{\boldsymbol{\Gamma}}_{N}=\left(\hat{\gamma}_{k-j}\right), k, j=1,2, \cdots, N Γ^N=(γ^kj),k,j=1,2,,N
    正定.

    为了计算自协方差矩阵(ACM),一种最直接的方式是利用两层循环嵌套结构计算,但此方式过于“原始”,对于长期序列计算速度相对比较慢.

    注意到, 只要
    y j = x j − μ ^ , j = 1 , 2 , ⋯   , N y_{j}=x_{j}-\hat{\mu}, \quad j=1,2, \cdots, N yj=xjμ^,j=1,2,,N
    不全为零, 矩阵
    A = ( 0 ⋯ 0 y 1 y 2 ⋯ y N − 1 y N 0 ⋯ y 1 y 2 y 3 ⋯ y N 0 ⋮ ⋮ ⋮ ⋮ ⋮ ⋮ y 1 ⋯ y N − 1 y N 0 ⋯ 0 0 ) N × ( 2 N − 1 ) \boldsymbol{A}=\left(\begin{array}{cccccccc} 0 & \cdots & 0 & y_{1} & y_{2} & \cdots & y_{N-1} & y_{N} \\ 0 & \cdots & y_{1} & y_{2} & y_{3} & \cdots & y_{N} & 0 \\ \vdots & & \vdots & \vdots & \vdots & & \vdots & \vdots \\ y_{1} & \cdots & y_{N-1} & y_{N} & 0 & \cdots & 0 & 0 \end{array}\right)_{N \times(2 N-1)} A=00y10y1yN1y1y2yNy2y30yN1yN0yN00N×(2N1)
    是行满秩的. 样本自协方差矩阵可表示为
    Γ ^ N = ( γ ^ 0 γ ^ 1 ⋯ γ ^ N − 1 γ ^ 1 γ ^ 0 ⋯ γ ^ N − 2 ⋮ ⋮ ⋮ γ ^ N − 1 γ ^ N − 2 ⋯ γ ^ 0 ) = 1 2 A A T \hat{\boldsymbol{\Gamma}}_{N}=\left(\begin{array}{cccc} \hat{\gamma}_{0} & \hat{\gamma}_{1} & \cdots & \hat{\gamma}_{N-1} \\ \hat{\gamma}_{1} & \hat{\gamma}_{0} & \cdots & \hat{\gamma}_{N-2} \\ \vdots & \vdots & & \vdots \\ \hat{\gamma}_{N-1} & \hat{\gamma}_{N-2} & \cdots & \hat{\gamma}_{0} \end{array}\right)=\frac{1}{2} \boldsymbol{A} \boldsymbol{A}^{\mathrm{T}} Γ^N=γ^0γ^1γ^N1γ^1γ^0γ^N2γ^N1γ^N2γ^0=21AAT

    于是,得益于计算机对矩阵并行运算的优化.我们可以采用数组化编程思想,利用矩阵运算,轻松且快速的计算出自协方差矩阵.

    上机实验报告

    数据集

    为了感受不同时间序列的统计性质,选用以下两种数据集分别建模.

    • 洗发水销售数据集:shampoo.csv
    • 上证指数数据集:SH600031.csv

    实验过程

    洗发水销售数据集

    该数据集描述了每月洗发水的销售量

    单位是销售计数,有36个观察值.

    分布图

    程序源代码

    filename='shampoo.csv';
    data = readmatrix(filename, 'OutputType', 'single');
    x=data(1:36,2);
    y=x-mean(x);
    A=zeros(length(y),2*length(y)-1);
    for i=1:length(y)
        A(i,length(y)-i+1:length(y)-i+length(y))=y;
    end
    ACM=1/length(y).*A*A';
    

    运行结果分析:
    每月销售量时序图

    自协方差函数

    自协方差函数最大值:2.156610448813604e+04

    自协方差函数最小值:-6.896521602231956e+03

    从图像及数据可以发现:洗发水月销售量具有较明显的子相关性.

    股票信息数据集

    该数据集描述了上证指数每日的开盘,最高,最低,收盘,成交量,成交额.
    取连续365天的开盘价进行建模.

    分布图

    程序源代码

    filename='SH600031.csv';
    data = readmatrix(filename, 'OutputType', 'single');
    x=data(1:365,3);
    y=x-mean(x);
    A=zeros(length(y),2*length(y)-1);
    for i=1:length(y)
        A(i,length(y)-i+1:length(y)-i+length(y))=y;
    end
    ACM=1/length(y).*A*A';
    

    运行结果分析:
    每日上证指数开盘价时序图

    自协方差函数图

    自协方差函数最大值:0.031476924974325

    自协方差函数最小值:-0.013756630793134

    从图像及数据可以发现:股市的开盘价没有明显的自相关性.


    从时序图及自协方差函数图都能明显看出以上两个时间序列均为非平稳时间序列.

    参考文献

    周永道,王会琦,吕王勇.时间序列分析及应用.北京:高等教育出版社,2015.

    数据集:

    SH600031.csv

    shampoo.csv


    本人非统计专业,若有不妥之处, 恳请批评指正.

    作者:图灵的猫

    作者邮箱: turingscat@126.com

    展开全文
  • 自协方差函数(Autocovariance function)自协方差函数是描述随机信号X(t)在任意两个不同时刻t1,t2,的取值之间的二阶混合中心矩,用来描述X(t)在两个时刻取值的起伏变化(相对与均值)的相关程度,也称为中心化的...

    1.自相关函数(Autocorrelation function)

    自相关函数是描述随机信号X(t)在任意两个不同时刻t1,t2,的取值之间的相关程度

    0818b9ca8b590ca3270a3433284dd417.png

    2. 自协方差函数(Autocovariance function)

    自协方差函数是描述随机信号X(t)在任意两个不同时刻t1,t2,的取值之间的二阶混合中心矩,用来描述X(t)在两个时刻取值的起伏变化(相对与均值)的相关程度,也称为中心化的自相关函数。

    0818b9ca8b590ca3270a3433284dd417.png

    0818b9ca8b590ca3270a3433284dd417.png时, 

    0818b9ca8b590ca3270a3433284dd417.png

    显然,自协方差函数和自相关函数描述的特性基本相同。

    3. 协方差矩阵

    0818b9ca8b590ca3270a3433284dd417.png

    记住,X、Y是一个列向量,它表示了每种情况下每个样本可能出现的数。比如给定

    0818b9ca8b590ca3270a3433284dd417.png

    由于数据是二维的,所以协方差矩阵是一个2*2的矩阵,矩阵的每个元素为:元素(i,j) = (第 i 维所有元素 - 第 i 维的均值) * (第 j 维所有元素 - 第 j 维的均值) 。

    其中「*」代表向量内积符号,即两个向量求内积,对应元素相乘之后再累加。

    我们首先列出第一维:D1: (1,3,4,5) 均值:3.25

    D2: (2,6,2,2) 均值:3

    下面计算协方差矩阵第(1,2)个元素:

    元素(1,2)=(1-3.25,3-3.25,4-3.25,5-3.25)*(2-3,6-3,2-3,2-3)=-1

    类似的,我们可以把2*2个元素都计算出来:

    0818b9ca8b590ca3270a3433284dd417.png

    这个题目的最终结果就是:

    用matlab计算这个例子

    z=[1,2;3,6;4,2;5,2]

    cov(z)

    ans =

    2.9167   -0.3333

    -0.3333    4.0000

    可以看出,matlab计算协方差过程中还将元素统一缩小了3倍。所以,协方差的matlab计算公式为:

    协方差(i,j)=(第i列所有元素-第i列均值)*(第j列所有元素-第j列均值)/(样本数-1)

    参考:

    [1] http://en.wikipedia.org/wiki/Covariance_matrix

    [2] http://www.cnblogs.com/cvlabs/archive/2010/05/08/1730319.html

    [3]http://blog.csdn.net/ybdesire/article/details/6270328

    [4] http://202.117.122.42:9001/xhxt/xhyxt/xuexi/chart9/c_9_2_3_001.htm

    展开全文
  • 由于时间序列通常具有较强的相关性,我们通常使用自协方差函数相关函数(ACF)来描述时间序列。当时间序列具有宽平稳的性质时,可以使用样本数据来估计它们,下面介绍ACF(k)的计算方法。 假设时序   共有...

    这篇博客主要记录人大出版《应用时间序列分析》第一章的笔记。

    时间序列数据

    数据类型

    数据分析中的数据大致分为三类:时间序列数据、横截面数据、面板数据。下面分别介绍这三类数据。

    时间序列数据:在不同时间点搜集到的数据,这些数据通常会随时间的变化而变化。比如股票价格、每日温度等

    横截面数据:在相同或近似相同时间点搜集到的数据。比如绝大多数通过问卷调查搜集到的数据、人口普查数据

    面板数据:针对不同对象在一段时间中搜集到的数据,可以理解为横截面随时间变化的数据,综合了时序数据与横截面数据的特点。比如所有股票在2018年的收盘价,数据结构如下表所示:

    日期贵州茅台上海汽车中国软件...通达信
    2018-01-01     
    2018-01-02     
    ...     
    2018-12-31     

    上表中每一行都是横截面数据,每一列都是是时序数据,是最简单的面板数据示例。上表仅展示了收盘价一个变量,多个变量的面板数据无法在一个二维表中展示,可以将这些二维表堆叠成为三维表。

    时间序列数据与横截面数据的不同

    为什么要区分数据类型呢?为什么要专门针对时序数据开发算法呢?这是因为时间序列数据与横截面数据的性质不同。横截面数据的样本采自同一总体,用于估计同一个随机变量;而时序数据的样本点采集自不同的时间,属于不同的随机变量。横截面数据的样本之间一般没有相关性;而时序数据则存在较强的自相关性。

    举个例子,用户对CSDN的满意度是一个随机变量,为了探究这一随机变量我们做一次满意度调查,这些调查的数据均是这一随机变量的样本。而北京市在夏天与冬天的温度显然是不同的随机变量。用表来表示的话如下:

    随机变量X1X2X3Xt
    样本x1x2x3xt

    X1, X2, X3, Xt是每个时间点上的随机变量,x1, x2, x3, xt是每个时间点上的观测值。我们可以得出时间序列的第一个特点:不同的时间点对应着不同的随机变量,每个时点上的随机变量仅有一个观测值。这也是时间序列数据与横截面数据最大的不同。

    众所周知,统计学需要基于大样本,否则得出的结论是不靠谱的。而时间序列数据中每个随机变量仅有一个观测值,这使得无法直接使用横截面数据的算法来分析时间序列数据。

    时间序列数据通常是以上一个时点为基础来变化的,比如股票的涨跌幅均是在前一日的收盘价基础上计算。即使不是以上一个时点为基础来变化,也会由于惯性或者向均值回归而与之前的数据产生这样或者那样的联系。所以时间序列数据往往具有较强的自相关性。

    平稳性

    之所以要提出平稳性这个概念,是由于不同的时间点对应着不同的随机变量,每个时点上的随机变量仅有一个观测值。而当样本容量为1时,所有的统计学方法全都失效。那么我们就无法分析时间序列数据了。

    解决样本容量过少问题的最直观方法就是增大样本量,这在横截面数据的分析中可行,但是时间具有单向一维性,不可重来,我们无法重新观测已经发生过的事件。平稳性就是为了解决样本容量为1的问题。

    平稳性分为严平稳与宽平稳,由于严平稳的时序十分罕见,下面仅仅介绍宽平稳的定义:

    宽平稳时序是指一阶矩与二阶矩均平稳的时间序列。简单来说,就是任取t,有 EX_{t}Var(X_{t}) 是常数,当k固定时,Cov(X_{t}, X_{t + k}) 也是常数。即宽平稳时间序列中所有随机变量的均值、方差存在且为常数,协方差仅仅与时间间隔有关

    我们把 Cov(X_{t}, X_{t + k}) 称作自协方差函数,简记为 \gamma (t, t + k) 。

    可以看出,如果时序具有宽平稳性,均值、方差与自协方差均不会随着时间的改变而改变,可以使用横截面数据的分析方法进行区间估计与假设检验。值得注意的是,宽平稳时间序列仅仅在二阶矩的范围内平稳,这意味着我们不能将宽平稳时间序列直接当作横截面数据进行处理,否则会出现一些问题。比如,如果将具有强自相关性的宽平稳时间序列进行线性回归建模依然会导致虚假回归的问题。(关于虚假回归的问题会在后续博客中介绍)

    那么对于非平稳时序如何进行分析呢?我们通常会使用差分等操作将非平稳时序转化为平稳时序后再进行操作。

    自协方差函数与自相关函数

    由于时间序列通常具有较强的自相关性,我们通常使用自协方差函数与自相关函数(ACF)来描述时间序列。当时间序列具有宽平稳的性质时,可以使用样本数据来估计它们,下面介绍ACF(k)的计算方法。

    假设时序 {X_{t}} 共有T期观测值,我们可以构建出 T - k 个数组(x_{i}, x_{i + k})。计算这T - k 个数组组成的dataframe的样本协方差,将协方差除以时序方差的点估计即可以得到自相关函数的点估计。

    单纯计算ACF值是没有意义的,我们还需要对 ACF(k) 进行显著性检验,这通常使用ACF图来进行检验,在Python中画ACF图的代码如下:

    from statsmodels.graphics.tsaplots import plot_acf
    import matplotlib.pyplot as plt
    plot_acf([0, 1, 2, 3, 4, 5, 6, 7, 8, 9], lags=9, alpha=0.05)
    plt.show()

    结果如下:

    纵轴是ACF(k),横轴是k,蓝色区域是95%置信区间。plot_acf模型中的lags是图中显示的最大k数,alpha是显著性水平。

    当铅垂线端点在蓝色区域外时,我们认为该ACF(k)显著。如果在k之后没有ACF(k)显著,则称该时间序列ACF k 阶截尾。如果一直有ACF(k)显著,则称该时间序列ACF 拖尾。

    问题1:为什么ACF(0) = 1?

    问题2:  为什么lags越大置信区间越宽?

    思考一下,下面给答案:

    答案1:ACF(0)即自己与自己的相关系数,恒为1

    答案2:用样本估计ACF(k)时共使用了T - k 个样本。k越大则样本量越小,相同置信水平下的置信区间越大

    误区

    1. 将时序数据直接当作横截面数据处理!!比如直接估计均值与方差,直接进行回归等。正确的做法是使用专门的时序模型进行分析。
    2. 在检验时序的平稳性通过后就把时序数据直接引入回归方程!!ADF检验与PP检验均是检验时序的宽平稳性质,针对宽平稳时序也只能进行二阶矩以内的数据分析方法,直接引入回归方程依然有可能会导致虚假回归的问题!正确的做法是使用ARIMAX模型。
    3. 在使用ACF图定阶之前不检验时序的平稳性!!只有平稳时序的ACF才是常数,才能够使用样本估计,理论上讲仅有平稳时序的ACF图才是有意义的。如果一定要针对非平稳时序画ACF图,则ACF图的显著性检验失效。

     

    展开全文
  • 本文主要介绍了AR(p)序列的自协方差函数与谱密度函数,以及两者之间的关系。
  • 稳定性 与自协方差函数

    千次阅读 2018-10-03 22:26:19
    二、自协方差函数(时间序列) (1)目标 a,记录各类随机变量,并且找出两个随机变量之间的协方差 b, 明确,时间序列描述为一系列随机过程的实现 c, 定义自协方差函数 (2)什么是协方差 X,Y 是两个随机变量,协方差则是...
  • 任给一组数据,通过函数求解样本均值z1、样本自协方差函数r、样本相关函数p(SACF)和样本偏相关函数q(SPACF)
  • 鉴于防止上篇文章太长,于是单独放一篇时间序列相关的重点概念理解。 另一部分内容????《【时序】思维导图、逻辑、解题步骤》 目录 1.时间序列分析 2. 平稳 (1)平稳性是什么含义?...3. 自协方差函数 1...
  • 本程序有matlab编写,程序适用于随机信号的相关函数、协方差函数的实现
  • 相关函数和自协方差函数

    万次阅读 2012-05-31 21:03:23
    9.2.3相关函数和自协方差函数  上面介绍的均值、均方值和方差描述的是一维随机变量的统计特性,不能反映不同时刻各数值之间的相互关系。例如,随机信号X(t)分别在t1,t2时刻的随机取值X(t1),X(t2)之间的关联...
  • 自相关函数 互相关函数自协方差矩阵 互协方差矩阵的区别联系 [3]: https://mermaidjs.github.io/ [4]: http://adrai.github.io/flowchart.js/
  • MA模型自协方差证明

    千次阅读 2021-10-27 15:03:50
    MA模型的自协方差函数证明 ∵E(εt)=0∴ cov(Xt,Xt−k)=cov(εt−θ1εt−1−⋯−θqεt−q,εt−k−θ1εt−k−1−⋯−θqεt−k−q)=∑i=0q∑j=0qθiθjcov(εt−i,εt−k−j)=∑i=0q∑j=0qθiθjE(εt−i,ε...
  • 协方差函数 在平稳 AR(p)AR(p)AR(p)模型两边同乘 xt−k,∀k>1x_{t-k}, \forall k > 1xt−k​,∀k>1, 再求期望 对于中心化的AR模型, 其均值为0, 则有cov(xt,xs)=E(xt)E...
  • 设ARMA(1,1)模型为Xt+ϕ1Xt−1=εt...根据Green函数的递推公式,有:G0=1G1=ϕ1G0−θ1G2=ϕ1G1…Gj=ϕ1Gj−1G_0=1 \\ G_1=\phi_1G_0-\theta_1\\ G_2=\phi_1G_1\\ \dots\\ G_j=\phi_1G_{j-1}G0​=1G1​=ϕ1​G0​−θ1
  • lag= 时间序列的样本自协方差函数 (ACVF)定义为: 样本相关函数 (ACF) 定义为 402 Payment Required 以下链接中找到有助于理解协方差和相关函数的交互式示例。 ...
  • 随机信号也称为随机过程、随机函数或随机序列。 确定性信号:如果序列{s(t)}在每个时刻的取值不是随机的,而是服从某种固定函数的关系,则称之为确定性信号。如阶跃信号、符号信号或矩形脉冲等。 随机信号:若序列{...
  • clc; clear all; Signal_1=rand(1,2000);%产生随机信号 Signal_1 Signal_2=...%将画布分为 2行2列,在第1行第1列画Signal_1_R相关函数,并写上标题Signal_1相关函数 plot(Signal_1_R);title('Signal_1相关函数');
  • lag= 时间序列的样本自协方差函数 (ACVF)定义为: 402 Payment Required 样本相关函数 (ACF) 定义为 402 Payment Required 以下链接中找到有助于理解协方差和相关函数的交互式示例。 ...
  • lag= 时间序列的样本自协方差函数 (ACVF)定义为: 样本相关函数 (ACF) 定义为 以下链接中找到有助于理解协方差和相关函数的交互式示例。 ...
  • 协方差函数CX(t1,t2)=E((Xt1−E(Xt1))(Xt2−E(Xt2)))协方差函数就是同一个随机过程在两个时间点的协方差协方差函数C_X(t_1,t_2)=E((X_{t_1}-E{(X_{t_1})})(X_{t_2}-E{(X_{t_2})}))\\ 协方差函数就是同一个随机过程在...
  • 根据离散信号的方差系数的标准估计,其可表示为:…其中x(i)是给定信号(即特定的1D向量),k表示x(i)信号通过k样本的移位,N是x(i)信号的长度,并且:……这是简单的平均值,我们可以写:'''Calculate the ...
  • 它还包含一些协方差函数: - 1: 母 3/2 - 2: 母 5/2 - 3:神经网络- 4:定期- 5:平方指数。 - 6: Matern + 平方指数- 7: Matern 3/2 + 神经网络高斯过程回归先验知识是 U、观测值 F、协方差(数字)COV、评估变量 ...
  • 协方差函数

    2014-03-31 19:37:59
    C 协方差 数值代数 原创 开发技术 代码 函数可以直接调用的
  • 这个世界上最聪明的人就是会敲代码的,天呐,我死磕只能把自己搞坏了,有没有聪明的帮帮忙
  • 文章目录期望方差协方差协方差矩阵相关系数协方差协方差函数 / 核函数期望函数 期望   对离散型随机变量X,其概率分布函数(probability density function,PMF)为P(X)P(X)P(X),则: E(X)=μ=∑i=1nXiP(Xi)E(X...
  • Arima模型的一些函数,不全,仅供参考,m语言帮助文档里的,我自己也不怎么会,所以还请见谅
  • 由于许多人(大多数是学生)需要以toeplitz矩阵形式的自协方差,因此此函数可以以矩阵形式快速生成输出。 如果需要相关,则可以简单地用函数内部的xcorr替换xcov命令。
  • 在给出自相关函数定义之前先介绍自协方差函数概念。随机过程 { xt } 中的每一个元素 xt , t  = 1, 2, … 都是随机变量。对于平稳的随机过程,其期望为常数。这里用 m 表示,即   E( xt ) = m ,  t  = 1,...
  • 今天同学上课要对一段信号,添加噪声,然后对函数进行相关分析。我写了个如下代码 close all; x = 0:2*pi/299:2*pi; k = sin(x); subplot(2,4,1),plot(x,k),title( ' 原函数 ' ); 把原函数设置为sinx` 然后添加0·1...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 37,475
精华内容 14,990
关键字:

自协方差函数

友情链接: SIFT.rar