ARMA模型

🎯 ARMA模型公式详解

ARMA模型是AR模型和MA模型的结合,能够描述更复杂的信号特性。


📐 ARMA模型的基本公式

时域公式

x(n)=−a1⋅x(n−1)−a2⋅x(n−2)−...−ap⋅x(n−p)+w(n)+b1⋅w(n−1)+b2⋅w(n−2)+...+bq⋅w(n−q) x(n) = -a₁·x(n-1) - a₂·x(n-2) - ... - aₚ·x(n-p) + w(n) + b₁·w(n-1) + b₂·w(n-2) + ... + b_q·w(n-q)

或者写成更标准的形式:
x(n)+a1⋅x(n−1)+a2⋅x(n−2)+...+ap⋅x(n−p)=w(n)+b1⋅w(n−1)+b2⋅w(n−2)+...+bq⋅w(n−q) x(n) + a₁·x(n-1) + a₂·x(n-2) + ... + aₚ·x(n-p) = w(n) + b₁·w(n-1) + b₂·w(n-2) + ... + b_q·w(n-q)

其中:

  • x(n):当前时刻的信号值

  • x(n-1), x(n-2), ..., x(n-p):过去p个信号值

  • w(n):当前时刻的白噪声

  • w(n-1), w(n-2), ..., w(n-q):过去q个噪声值

  • a₁, a₂, ..., aₚ:自回归系数(AR部分)

  • b₁, b₂, ..., b_q:滑动平均系数(MA部分)

  • p:AR阶数,q:MA阶数


🔧 系统函数表示

Z域公式

对时域公式两边进行Z变换:

X(z)+a1⋅z−1X(z)+a2⋅z−2X(z)+...+ap⋅z−pX(z)=W(z)+b1⋅z−1W(z)+b2⋅z−2W(z)+...+bq⋅z−pW(z) X(z) + a₁·z⁻¹X(z) + a₂·z⁻²X(z) + ... + aₚ·z⁻ᵖX(z) = W(z) + b₁·z⁻¹W(z) + b₂·z⁻²W(z) + ... + b_q·z⁻ᵖW(z)

提取公因式:
X(z)[1+a1⋅z−1+a2⋅z−2+...+ap⋅z−p]=W(z)[1+b1⋅z−1+b2⋅z−2+...+bq⋅z−p] X(z)[1 + a₁·z⁻¹ + a₂·z⁻² + ... + aₚ·z⁻ᵖ] = W(z)[1 + b₁·z⁻¹ + b₂·z⁻² + ... + b_q·z⁻ᵖ]

系统函数 H(z)

H(z)=X(z)/W(z)=[1+b1⋅z−1+b2⋅z−2+...+bq⋅z−p]/[1+a1⋅z−1+a2⋅z−2+...+ap⋅z−p] H(z) = X(z)/W(z) = [1 + b₁·z⁻¹ + b₂·z⁻² + ... + b_q·z⁻ᵖ] / [1 + a₁·z⁻¹ + a₂·z⁻² + ... + aₚ·z⁻ᵖ]

简化表示:
H(z)=B(z)/A(z) H(z) = B(z) / A(z)
其中:

  • A(z) = 1 + a₁·z⁻¹ + a₂·z⁻² + ... + aₚ·z⁻ᵖ(AR多项式)

  • B(z) = 1 + b₁·z⁻¹ + b₂·z⁻² + ... + b_q·z⁻ᵖ(MA多项式)


🎛️ 功率谱密度公式

理论功率谱

Pxx(ω)=σw2⋅∣H(ejω)∣2=σw2⋅∣B(ejω)∣2/∣A(ejω)∣2 Pₓₓ(ω) = σ_w² · |H(e^{jω})|² = σ_w² · |B(e^{jω})|² / |A(e^{jω})|²

展开形式:
Pxx(ω)=σw2⋅∣1+b1⋅e−jω+b2⋅e−j2ω+...+bq⋅e−jqω∣2/∣1+a1⋅e−jω+a2⋅e−j2ω+...+ap⋅e−jpω∣2 Pₓₓ(ω) = σ_w² · |1 + b₁·e^{-jω} + b₂·e^{-j2ω} + ... + b_q·e^{-jqω}|² / |1 + a₁·e^{-jω} + a₂·e^{-j2ω} + ... + aₚ·e^{-jpω}|²


🔬 物理意义解读

AR部分的作用

x(n)=−∑ai⋅x(n−i)+... x(n) = -∑aᵢ·x(n-i) + ...

  • 描述系统的"记忆性"和"惯性"

  • 极点由A(z)=0的解决定

  • 产生频谱的峰值(共振频率)

MA部分的作用

...+∑bj⋅w(n−j) ... + ∑bⱼ·w(n-j)

  • 描述系统的"短期响应"

  • 零点由B(z)=0的解决定

  • 产生频谱的凹陷(反共振)

ARMA的协同作用

  • AR部分:捕捉长期趋势和周期性

  • MA部分:捕捉短期波动和噪声特性

  • 结合效果:既能描述共振峰,又能描述频谱凹陷


📊 特殊情形

当q=0时:AR模型

H(z)=1/A(z)(全极点模型) H(z) = 1 / A(z) (全极点模型)
只有频谱峰值,没有凹陷

当p=0时:MA模型

H(z)=B(z)(全零点模型) H(z) = B(z) (全零点模型)
只有频谱凹陷,没有峰值

当p>0且q>0时:ARMA模型

H(z)=B(z)/A(z)(零极点模型) H(z) = B(z) / A(z) (零极点模型)
既有峰值又有凹陷


🎯 参数意义总结

参数 影响系统 物理意义 频谱表现
aᵢ 极点位置 系统惯性/记忆性 峰值位置和尖锐度
bⱼ 零点位置 短期响应特性 凹陷位置和深度
p AR阶数 记忆长度 峰值数量
q MA阶数 噪声影响长度 凹陷数量
σ_w² 噪声功率 激励强度 整体功率水平

💡 关键要点

  1. ARMA(p,q) 需要估计 p+q+1 个参数(包括噪声方差)

  2. 稳定性要求:A(z)=0的所有根在单位圆内

  3. 可逆性要求:B(z)=0的所有根在单位圆内

  4. 功率谱 = 噪声功率 × |系统函数|²

ARMA模型通过极点和零点的配合,能够精确描述各种复杂的频谱形状,是参数化谱估计中最灵活的模型!