備忘録

勉強や読書の記録

ISLR: Chapter 7 Moving Beyond Linearity

 これまで扱ってきた線形モデルは解釈や推論のしやすさという面では他のモデルよりも優れているが,代わりに予測性能には限界がある.本章では線形仮定を緩和しつつ,できるだけ解釈のしやすいモデルを紹介する.

7.1 Polynomial Regression

 多項式回帰. \displaystyle
\begin{align}
y_i=\beta_0+\beta_1x_i+\beta_2x_i^{2}+\beta_3x_i^{3}+\ldots+\beta_dx_i^{d}+\epsilon_i
\end{align}
3, 4以上の次数はあまり使わないらしい.

 推定値\hat{f}(x_0)の分散Var[\hat{f}(x_0)]は,例えば,\hat{C}5 \times 5の共分散行列とし,\ell_0^{T}=(1,x_0,x_0^{2},x_0^{3},x_0^{4})とした時,Var[\hat{f}(x_0)]=\ell_0^{T}\hat{C}\ell_0で与えられる.

7.2 Step Functions

 Xをbinsに分割することを考える.これにより,連続値を順序付きのカテゴリカルな変数に変換することができる.まず, \displaystyle
C_0(X)=I(X \lt c_1), \
C_1(X)=I(c_1 \leq X \lt c_2), \
C_2(X)=I(c_2 \leq X \lt c_3),
\cdots,\\
C_{K-1}(X)=I(c_{K-1} \leq X \lt c_K), \
C_K(X)=I(c_K \leq X)
K+1個の区間に分割する.ここでI(\cdot)は条件が真の時に1,そうでない時に0を与える指示関数(ダミー変数とも呼ばれる).ゆえに,任意の値Xについて,C_0(X)+C_1(X)+\ldots+C_K(X)=1になる,C_1(X),C_2(X),\ldots,C_K(X)を説明変数とする線形モデル \displaystyle
\begin{align}
y_i=\beta_0+\beta_1C_1(x_i)+\beta_2C_2(x_i)+\ldots+\beta_KC_K(x_i)+\epsilon_i
\end{align}
に最小二乗法を適用すると,C_1(X),C_2(X),\ldots,C_K(X)のうち多くても1つの係数がnon-zeroになる.もしX\lt c_1なら全ての係数は0になる.そういうわけで,\beta_0X \lt c_1の時のYの平均値として解釈できる.また\beta_0+\beta_jに対するレスポンスを考えると,\beta_jは,c_j\leq X \lt c_{j+1}であるようなXについての,X\lt c_1と比較した時の,レスポンスにおける平均的な増加量を表している.

7.3 Basis Functions

 上で扱った多項式回帰やpiecewise-constant regressionは以下のbasis function approachの特殊な場合. \displaystyle
\begin{align}
y_i=\beta_0+\beta_1b_1(x_i)+\beta_2b_2(x_i)+\ldots+\beta_Kb_K(x_i)+\epsilon_i
\end{align}
ここでb(\cdot)は何かの関数もしくはtransformation.

7.4 Regression Splines

7.4.1 Piecewise Polynomials

 区間ごとに異なる多項式回帰 \displaystyle
\begin{align}
y_i=\beta_0+\beta_1x_i+\beta_2x_i^{2}+\ldots+\beta_Kx_i^{K}+\epsilon_i
\end{align}
を適用する.区間の切れ目となる点はknotと呼ぶ.つまり,点cをknotとする場合は, \displaystyle
\begin{align}
y_i=
\begin{cases}
\beta_{01}+\beta_{11}x_i+\beta_{21}x_i^{2}+\ldots+\beta_{K1}x_i^{K}+\epsilon_i \ \ \ \ \mbox{if } x_i \lt c\\
\beta_{02}+\beta_{12}x_i+\beta_{22}x_i^{2}+\ldots+\beta_{K2}x_i^{K}+\epsilon_i  \ \ \ \ \mbox{if } x_i \geq c
\end{cases}
\end{align}
となる.

 もちろん,関数が不連続だったり,変な形になったりする.

7.4.2 Constraints and Splines

7.4.3 The Spline Basis Regression

7.4.4 Choosing the Number and Locations of the Knots

7.4.5 Comparing to Polynomial Regression

7.5 Smoothing Splines

7.5.1 An Overview of Smoothing Splines

7.5.2 Choosing the Smoothing Parameter \lambda

7.6 Local Regression

7.7 Generalized Additive Model

7.7.1 GAMs for Regression Problems

 GAMの一例を以下に示す. \displaystyle
\begin{align}
y_i=\beta_0+\sum_{j=1}^{p}f_j(x_{ij})+\epsilon_i
\end{align}
additive modelと呼ばれる理由は,X_jそれぞれに対してf_jを計算し,和を取っているため.

Pros and Cons of GAMs

 メリットデメリットの検討.

  • GAM非線形関係のモデリングが可能.ゆえに各変数について様々な変換を試したりしなくてよい.
  • 一般に非線形でのフィッティングの方が正確に予測できる.
  • モデルには加法性があるため,他の変数を固定した状態で変数X_jを動かした時のYへの影響を把握できる.なので推論とかしたい場合,GAMは有効.
  • 変数X_jに対する関数f_jの滑らかさは,自由度で決まる.
  • GAMは加法性に強く縛られているので,相乗効果みたいなのは扱えない.が,f_{jk}(X_j,X_k)のような相乗項を入れてしまえばOK.

7.7.2 GAMs for Classification Problems

 予測が質的データでもGAMを適用可能.