圓州率
🌐

Feature Image

時間序列介紹 (Time Series)

數學, 資料科學, 時間序列, 機器學習, 監督式學習
討論帶有時間相關性的資料、穩定時間序列和對應的估計量。

引言

常見的資料會假設資料是獨立且同分配的,但對於財經、金融或季節性資料,資料間帶有相關係數,即資料並非獨立的,若用過往的線性回歸 方式建模,會錯估 variance,導致後續的錯誤顯著性、過大/過小的信賴區間,等一系列的問題。

時間序列範例

給定一筆資料

$$ \begin{align*} Y_t = \alpha + \varepsilon_t \end{align*} $$

其中的誤差項與前一項帶有相關性,即

$$ \begin{align*} \varepsilon_t = a \varepsilon_{t - 1} + \delta_t \end{align*} $$

且 $|a| < 1$,$\left\lbrace \delta_t \right\rbrace$ 是獨立且同分配,滿足

$$ \begin{align*} E (\delta_t) = 0, \quad \sigma_\delta^2 = \sigma^2 (\delta_t) < \infty \end{align*} $$

$$ \begin{align*} E (\varepsilon_t) = 0, \quad \sigma_\varepsilon^2 = \frac{\sigma_\delta^2}{1 - a^2} > \sigma_\delta^2 \end{align*} $$

錯估 Variance

用 $\hat \alpha = \frac{1}{n} \sum_{t = 1}^{n} y_t$ 估計 $\alpha$,若忽略資料帶有相關性,則會誤認為

$$ \begin{align*} \var_{\text{wrong}} (\hat \alpha) = E \left[ \left( \frac{1}{n} \sum_{t = 1}^{n} \varepsilon_t \right)^2 \right] \overset{?}{=} \frac{1}{n} \sigma_\varepsilon^2 \end{align*} $$

由於資料並非獨立的,期望值中的平方項並不能直接化簡,而此問題真實的 variance 是

$$ \begin{align*} \var (\hat \alpha) \xrightarrow{n \to \infty} \frac{1}{n} \sigma_\varepsilon^2 \times \frac{1 - a}{1 + a} \end{align*} $$
  • 當 $a \in (0, 1)$,$\var (\hat \alpha) > \var_{\text{wrong}} (\hat \alpha)$,導致不顯著 $\alpha$ 認為顯著
  • 當 $a \in (-1, 0)$,$\var (\hat \alpha) < \var_{\text{wrong}} (\hat \alpha)$,導致顯著 $\alpha$ 認為不顯著

錯估預測誤差

現用 $\hat \alpha$ 估計 $y_{n + 1}$,若忽略資料帶有相關性,則會放大誤差

$$ \begin{align*} E [(y_{n + 1} - \hat \alpha)^2] = E \left[ \left( \varepsilon_{n + 1} - \frac{1}{n} \sum_{t = 1}^{n} \varepsilon_{t} \right)^2 \right] \xrightarrow{n \to \infty} \sigma_\varepsilon^2 > \sigma_\delta^2 \end{align*} $$

因此其中的目標是找到一個合理的方式 $\hat y_{n + 1}$,預測下一個時間資料 $y_{n + 1}$ 使得

$$ \begin{align*} E [(y_{n + 1} - \hat y_{n + 1})^2] = \sigma_\delta^2 \end{align*} $$

穩定時間序列 (Stationary)

為簡化問題與需考慮的參數數量,我們考慮一時間序列 $\\{ X_t \\}$ 是穩定的 (Stationary),其期望值與時間獨立,且共變異數與當下時間獨立,僅與差異時間有關,即

  1. $E (X_t) = \mu$,對任意 $t$
  2. $\cov (X_t, X_{t + k}) = \gamma_k$,對任意 $t$

換句話說,「任意時間點的期望值都相同,且兩時間的共變異數僅需考慮其時間差,而不考慮當下時間,例如第 1 期和第 3 期的共變異數與第 2 期和第 4 期的共變異數相同,因為他們都差了2期。」

因此本章的目標是在 stationary 條件下,找出相關係數的估計量、收斂性與假設檢定。

Autocovariance / Autocorrelation

autocovariance function 來評估相差 $k$ 期資料的共變異數 (covariance)

$$ \gamma_{k} = \cov (X_t, X_{t + k}) = E [ (X_t - \mu) (X_{t + k} - \mu) ] $$

autocorrelation function 來評估相差 $k$ 期資料的相關係數 (correlation)

$$ \rho_{k} = \corr (X_t, X_{t + k}) = \frac{\gamma_k}{\gamma_0} $$

而 Stationary autocovariance function 帶有下列性質

  1. $\gamma_0 \geq 0$
  2. $\gamma_0 \geq |\gamma_k|$
  3. $\gamma_k = \gamma_{-k}$

估計量

對於給定資料 $\\{ X_t \\}_{t = 1}^{n}$,有 3 個數值需要估計 mean $\mu$、autocovariance $\gamma_k$ 和 autocorrelation $\rho_k$,分別用以下的方式估計

$$ \begin{align*} \hat \mu & = \overline{X} = \frac{1}{n} \sum_{t = 1}^{n} X_t \newline \hat \gamma_k & = \frac{1}{n} \sum_{t = 1}^{n - k} (X_t - \overline{X}) (X_{t + k} - \overline{X}) \newline \hat \rho_k & = \hat \gamma_k / \hat \gamma_0 \end{align*} $$

收斂性

在大樣本理論下,上述估計量都能機率收斂到真實數值,即 $\hat \mu \xrightarrow{P} \mu$、$\hat \gamma_k \xrightarrow{P} \gamma_k$ 和 $\hat \rho_k \xrightarrow{P} \rho_k$,即用這些估計量是合理的方式。漸進分布分別是

$$ \begin{align*} \sqrt{n} (\hat \mu - \mu) & \xrightarrow{D} N \left( 0, \sum_{t = -\infty}^{\infty} \gamma_t \right), \newline \sqrt{n} (\hat \gamma_k - \gamma_k) & \xrightarrow{D} N \left( 0, \sum_{t = -\infty}^{\infty} \gamma_t^2 + \gamma_{t - k} \gamma_{t + k} \right), \newline \sqrt{n} (\hat \rho_k - \rho_k) & \xrightarrow{D} N \left( 0, \sum_{t = -\infty}^{\infty} \rho_t^2 + \rho_{t - k} \rho_{t + k} - 4 \rho_{t} \rho_{k} \rho_{t + k} + 2 \rho_t^2 \rho_k^2 \right) \end{align*} $$

其中 $\mu$ 的收斂需滿足 $\sum_{k = -\infty}^{\infty} |\gamma_k| < \infty$、$\gamma_k$ 的收斂需滿足 $\sum_{k = -\infty}^{\infty} \gamma_k^2 < \infty$,$\rho_k$ 的收斂條件好難,我們就假設他會成立吧(?)

假設檢定

建構一個相關係數均為零的假設檢定

$$ H: \rho_1 = \rho_2 = \cdots = 0 \quad \text{vs} \quad A: \text{ exists } \rho_k \ne 0 $$

在 $H$ 的假設下,$\sqrt{n} \hat \rho_k \xrightarrow{D} N (0, 1)$,在給定信心水準 $\alpha$ 下,其漸進檢定為

  • 若 $|\rho_k| \leq Z_{\alpha / 2} / \sqrt{n}$,推論 $H$
  • 若 $|\rho_k| > Z_{\alpha / 2} / \sqrt{n}$,推論 $A$

類似的相關係數均假設檢定

$$ H: \rho_k = \rho_{k + 1} = \cdots = 0 \quad \text{vs} \quad A: \text{ exists } \rho_k \ne 0 $$

在 $H$ 的假設下,$\sqrt{n} \hat \rho_k \xrightarrow{D} N (0, \sum_{i = -k + 1}^{k - 1} \rho_i^2)$,在給定信心水準 $\alpha$ 下,其漸進檢定為

  • 若 $|\rho_k| \leq Z_{\alpha / 2} \sqrt{\sum_{i = -k + 1}^{k - 1} \rho_i^2 / n}$,推論 $H$
  • 若 $|\rho_k| > Z_{\alpha / 2} \sqrt{\sum_{i = -k + 1}^{k - 1} \rho_i^2 / n}$,推論 $A$

ACF R 語言範例

給定一維度資料 $\\{X_t\\}_{t = 1}^{n}$,能透過 R 語言內建的函式 acf (autocorrelation function) 繪製出 $\hat \rho_k$,圖中的 Lag 就是 $\hat \rho_k$ 的下標 $k$。

能看出 Lag = 0 所對應的 ACF = 1,事實上所有的 ACF 圖都有此特徵,原因是 $\hat \rho_0 = \gamma_0 / \gamma_0 = 1$。

圖中的另一個特徵是藍色虛線,母體的 $\rho_1 = \rho_2 = \cdots = 0$,但採樣的 $\contiai{\hat \rho}$ 一般不會等於 $0$,而是會在 $0$ 附近徘徊,可以理解為「若 ACF 在 $0$ 附近徘迴且沒有特殊模式,則可以視為此資料的 $\rho = 0$。」

若發現資料帶有一定程度的 autocorrelation,則可以根據後續推論建立時間序列模型。

簡單時間序列模型

White Noise

白噪音(white noise) 假設資料間獨立且滿足 $E (\varepsilon) = 0$、$\var (\varepsilon) = E (\varepsilon^2) = \sigma^2$,寫作 $\\{ \varepsilon_t \\} \sim WN (0, \sigma^2)$,而

$$ \begin{align*} \gamma_k = \begin{cases} \sigma^2 & \text{if } k = 0 \newline 0 & \text{otherwise } \end{cases} \end{align*} $$

因此顯然的,白噪音是穩定的 (stationary)

Random Walk

隨機漫步 (random walk) 定義

$$ X_t = \sum_{i = 1}^{t} \varepsilon_t, \quad \\{ \varepsilon_t \\} \sim WN (0, \sigma^2) $$

則 $E (X_t) = 0$ 且 $\var (X_t) = t \sigma^2$;但 $\gamma (t, t + k) = t \sigma^2$ 並非 $t$ 獨立,因此 random walk 並非穩定的

Auto Regressive (AR)

AR 模型是指,資料受到過去期的觀測值影響,若僅受過去1期影響,則寫成 AR (1)

$$ \begin{align*} X_t = \phi X_{t - 1} + \varepsilon_t \end{align*} $$

其中 $\\{\varepsilon_t \\} \sim WN (0, \sigma^2)$ 且一般 $\phi \in (-1, 1)$,則 $E (X_t) = 0$、$E (X_t^2) = \sigma^2 / (1 - \phi^2)$ 且

$$ \begin{align*} \gamma_k = \frac{\sigma^2 \phi^{|k|}}{1 - \phi^2} \end{align*} $$

因此 AR (1) 模型是穩定的 (若 $|\phi| < 1$)。

Moving Average (MA)

MA 模型是指,資料受到過去期的誤差影響,若僅受過去1期影響,則寫成 MA (1)

$$ X_t = W_t + \theta W_{t - 1} \quad \\{ W_t \\} \sim WN (0, \sigma^2) $$

其中 $\\{\varepsilon_t \\} \sim WN (0, \sigma^2)$ 且一般 $\theta \in (-1, 1)$。則 $E (X_t) = 0$ 且

$$ \begin{align*} \gamma_k = \begin{cases} \sigma^2 (1 + \theta^2) & \text{if } k = 0 \newline \sigma^2 \theta & \text{if } k = \pm 1 \newline 0 & \text{otherwise } \end{cases} \end{align*} $$

因此 MA (1) 模型是穩定的 (若 $|\theta| < 1$)。

複合時間序列模型

Back Shift

Back Shift (後移) 表示向後移動過程。資料 $X_t$ 向後移動 (back-shift) 一個單位,即取 $X_{t - 1}$,寫成

$$ B X_t = X_{t - 1} $$

資料 $X_t$ 向後移動 $k$ 個單位,即取 $X_{t - k}$,寫成

$$ B^k X_t = X_{t - k} $$

注意:$B$ 是運算符號,不是常數。

ARMA

ARMA(p, q) 模型結合 AR(p) 與 MA(q),定義為

$$ X_t - \phi_1 X_{t - 1} - \cdots - \phi_p X_{t - p} = \varepsilon_t + \theta_1 \varepsilon_{t - 1} + \cdots + \theta_q \varepsilon_{t - q} $$

或者寫成

$$ \phi (B) X_t = \theta (B) \varepsilon_t $$

並假設 $\phi (B)$ 和 $\theta (B)$ 以多項式寫成後,不存在公因式

$$ \begin{align*} \phi (z) & = 1 - \phi_1 z - \cdots - \phi_p z^p \newline \theta (z) & = 1 + \theta_1 z + \cdots + \theta_q z^q \end{align*} $$

Causality and Invertibility

僅靠 stationary 不足以說明模型足夠好,因此引入 causality (因果關係) 和 Invertibility (可逆性),用以證明解的唯一性與存在性

Causality

因果關係 (causality) 指的是「$\\{ \varepsilon_t \\}$ (因) 的變化是否導致 $\\{ X_t \\}$ (果) 的變化」,若存在一個 causality 函數

$$ \begin{align*} \psi (B) = \sum_{j = 0}^{\infty} \psi_j B^j = \psi_0 + \psi_1 B + \psi_2 B^2 + \cdots \end{align*} $$

其中 $\sum_{j = 1}^{\infty} |\psi_j| < \infty$,使得

$$ \begin{align*} X_t = \psi (B) \varepsilon_t \end{align*} $$

Invertibility

可逆關係 (invertibility) 指的是「是否能根據過去誤差 $\\{ \varepsilon_t \\}$ 表示當前數值 $\\{ X_t \\}$」,若存在一個 invertibility 函數

$$ \begin{align*} \pi (B) = \sum_{j = 0}^{\infty} \pi_j B^j = \pi_0 + \pi_1 B + \pi_2 B^2 + \cdots \end{align*} $$

其中 $\sum_{j = 1}^{\infty} |\pi_j| < \infty$,使得

$$ \begin{align*} \varepsilon_t = \pi (B) X_t \end{align*} $$

解存在/唯一性

給定 ARMA(p, q) 模型 $\phi (B) X_t = \theta (B) \varepsilon_t$,若

$$ \phi (z) \ne 0, \quad |z| = 1 $$

則對應 ARMA(p, q) 存在解解唯一。此模型是 causal 等價於

$$ \phi (z) \ne 0, \quad |z| \leq 1 $$

此模型是 invertibe 等價於

$$ \theta (z) \ne 0, \quad |z| \leq 1 $$

PACF

ARMA 模型中有數個參數需要估計

  1. $p$: PACF
  2. $q$: ACF
  3. AR 的 $(\contia{\phi}{p})$: Yule-Walker
  4. MA 的 $(\contia{\theta}{q})$: Durbin-Lesion algorithm
  5. $\sigma^2$

ARIMA

ARMA 模型中有數個參數需要估計

  1. $p$: PACF
  2. $d$:
  3. $q$: ACF
  4. AR 的 $(\contia{\phi}{p})$: Yule-Walker
  5. MA 的 $(\contia{\theta}{q})$: Durbin-Lesion algorithm
  6. $\sigma^2$

參考資料

  1. 銀慶剛教授 Course: Analysis of Dependent Data