分散安定化のための変換

Rで学ぶ予測入門

Rob J. Hyndman

Professor of Statistics at Monash University

分散の安定化

  • 系列の水準が上がるほど変動が大きくなる場合、変換が有効

  • $y_1,...,y_n$: 元の観測値,$w_1,...,w_n$: 変換後の観測値

平方根 $w_t = \sqrt{y_t}$ $\downarrow$
立方根 $w_t = \sqrt[3]{y_t}$ 増加
対数 $w_t = \text{log}(y_t)$ 強さ
逆数 $w_t = -1/y_t$ $\downarrow$
Rで学ぶ予測入門

分散の安定化

autoplot(usmelec) +
  xlab("Year") + ylab("") +
  ggtitle("US monthly net electricity generation")

米国の月次純発電量

Rで学ぶ予測入門

分散の安定化

autoplot(usmelec^0.5) +
  xlab("Year") + ylab("") +
  ggtitle("Square root electricity generation")

平方根変換後の発電量

Rで学ぶ予測入門

分散の安定化

autoplot(usmelec^0.33333) +
  xlab("Year") + ylab("") +
  ggtitle("Cube root electricity generation")

立方根変換後の発電量

Rで学ぶ予測入門

分散の安定化

autoplot(log(usmelec)) +
  xlab("Year") + ylab("") +
  ggtitle("Log electricity generation")

対数変換後の発電量

Rで学ぶ予測入門

分散の安定化

autoplot(-1/usmelec) +
  xlab("Year") + ylab("") +
  ggtitle("Inverse electricity generation")

逆数変換後の発電量

Rで学ぶ予測入門

Box-Cox 変換

  • これらの変換は、Box-Cox 変換族に近い

$$w_t = \begin{cases} log(y_t) & \lambda = 0 \\ (y_t^\lambda - 1)/\lambda & \lambda \neq 0 \end{cases}$$

  • $\lambda = 1 \ $: 実質的な変換なし
  • $\lambda = \frac{1}{2} \ $: 平方根+線形変換
  • $\lambda = \frac{1}{3} \ $: 立方根+線形変換
  • $\lambda = 0 \ $: 自然対数変換
  • $\lambda = -1 \ $: 逆数変換
Rで学ぶ予測入門

Box-Cox 変換

BoxCox.lambda(usmelec)
-0.5738331
Rで学ぶ予測入門

逆変換

usmelec %>%
  ets(lambda = -0.57) %>%
  forecast(h = 60) %>%
  autoplot()

逆変換後の予測

Rで学ぶ予測入門

演習に進みましょう!

Rで学ぶ予測入門

Preparing Video For Download...