Additive Model & GAM
2021-1ํ๊ธฐ, ๋ํ์์ โํต๊ณ์ ๋ฐ์ดํฐ๋ง์ด๋โ ์์ ์ ๋ฃ๊ณ ๊ณต๋ถํ ๋ฐ๋ฅผ ์ ๋ฆฌํ ๊ธ์ ๋๋ค. ์ง์ ์ ์ธ์ ๋ ํ์์ ๋๋ค :)
Additive Model
Definition. Additive Model
The regression model
\[E (Y \mid X_1, \dots, X_p) = \alpha + f_1(X_1) + \cdots + f_p(X_p)\]is called an <additive model>.
It assumes that there is no interaction effect.
Therefore, it can effectively avoid โthe curve of dimensionalityโ.
โจ Goal: How can we estimate $f_i(x_i)$?
์ด๋ ์ฐ๋ ์ ๊ทผ๋ฒ์ด ๋ฐ๋ก <Backfitting Algorithm>์ด๋ค.
๋ณดํต ์ฐ๋ฆฌ๊ฐ $f_j$๋ฅผ ์ ์ธํ ๋๋จธ์ง $f_k$์ ๋ํ ํจ์๋ฅผ ์๊ณ ์์ ๋, $f_j$๋ฅผ ์ถ์ ํ๋ ๊ฒ์ ์์ฃผ ์ฝ๋ค. ๊ทธ๋ฅ 1์ฐจ์ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ๋ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ด๋ค!
์ด๋ ๊ฒ ๋ค๋ฅธ ํจ์๋ฅผ fix ์์ผ๋๊ณ , ํจ์ ํ๋๋ฅผ fitting ํ๋ ๊ธฐ๋ฒ์ <Backfitting Algorithm>์ด๋ผ๊ณ ํ๋ค.โ
Algorithm. Backfitting Algorithm
1. Initialize:
- $\hat{\alpha} = \bar{y}$
- for $\forall \, j$, $\hat{f}_j = 0$
2. Repeat until converge
find an estiamtor $\hat{f}_j$ based on \(\left\{ x_i, \; y_i - \hat{\alpha} - \displaystyle \sum_{k\ne j} \hat{f}_k(x_{ik}) \right\}^n_{i=1}\)
๐ฅ ์ด๋, 2๋ฒ์งธ ์คํ ์์ <smoothing spline>์ด๋ <kernel method> ๋ฑ์ ๋ค๋ฅธ non-parameteric method๋ค์ ์ ์ฉํด๋ณผ ์๋ ์๋ค.
<Backfitting Algorithm>์ Convex optimization๊ณผ ๋น์ทํ๋ค๊ณ ํ๋ฉฐ, ๊ต์ฅํ ๋น ๋ฅด๊ฒ ์๋ ดํ๋ค๊ณ ํ๋ค! ๐ฒ
GAM; Generalized Additive Model
<GAM; Generalized Additive Model>์ ๊ฐ๋ ฅํ๋ฉด์๋ ๊ฐ๋จํ ํต๊ณ์ ํ ํฌ๋ ์ค ํ๋์ด๋ค. 1986๋ , ESL์ ๊ณต๋์ ์์ธ โTrevor Hastieโ์ โRobert Tibshiraniโ์ ์ํด ๊ฐ๋ฐ๋ ๋ฐฉ๋ฒ์ด๋ค.
Relationships btw the individual predictors and the dependent variable follow smooth patterns that can be linear or non-linear.
์ฆ, GAM์ <Additive Model>์์ $f_j$๊ฐ smooth non-parametric์ธ ๋ชจ๋ธ์ด๋ค!
โDataCampโ์ ์ ํ๋ธ ์์์์๋ <GAM>์ด <Linear Model>๊ณผ <Bloack-BOX ML> ๋ชจ๋ธ์ ์ค๊ฐ ์ ๋์ ์์นํ๋ ๋ชจ๋ธ์ด๋ผ๊ณ ์๊ฐํ๋ค.
Image from โDataCampโ
ํต๊ณ์ ๋ชจ๋ธ์ <Interpretability>์ <Flexibility>์ trade-off๊ฐ ์๋๋ฐ, ์ผํธ๊ณผ ์ค๋ฅธํธ์ด ๊ฐ๊ฐ์ ์๋ฏธํ๋ค.
<GAM>์ ๋ฑ ์ค๊ฐ ์ ๋์ ์์นํ ๋ชจ๋ธ๋ก, ์ ๋นํ <Interpretability>์ ์ ๋นํ <Flexibility>๋ฅผ ์ ๊ณตํ๋ค.
Image from โDataCampโ
์์ ๊ทธ๋ฆผ์ <GAM>์์ ์ฌ์ฉ๋ <smooth basis function>๋ค์ ํํํ ๊ฒ์ด๋ค. ์ผ์ชฝ ๊ทธ๋ฆผ์ ๋ชจ๋ basis func.์ ๋์ผํ coeff.๋ฅผ ์ค ๊ทธ๋ฆผ์ด๊ณ , ์ค๋ฅธ์ชฝ ๊ทธ๋ฆผ์ ํ์ต์ ํตํด ๊ฐ basis func.์ ํ๋๋ coeff.๋ฅผ ์ค ๊ทธ๋ฆผ์ด๋ค.
โmultithreadedโ์ ๊ฒ์๋ ํฌ์คํธ์์๋ GAM์ ์ฅ์ ์ผ๋ก
(1) Interpretability
(2) Flexibility & Automation
(3) Regularization
์ ๊ผฝ๋๋ค.
์ด ์ค์์ ๋จผ์ โRegularizationโ๋ถํฐ ์ดํด๋ณด์. smooth function์ ์ถ์ ํ๋ GAM์ โsmoothnessโ๋ฅผ ์ปจํธ๋กค ํ๋ tuning parameter $\lambda$๊ฐ ์กด์ฌํ๋ค. ์ด๊ฒ์ ํตํด overfitting์ ๋ฐฉ์งํ๊ณ , ์ ์ฒด predictor๊ฐ wiggle ํด์ง๋ ๊ฒ์ ๋ฐฉ์งํ๋ค.
โDataCampโ์ ์ ํ๋ธ ์์์ ๋ฐ๋ฅด๋ฉด, <GAM>์ ์๋์ ์์์ ๋ฐ๋ผ ๋ชจ๋ธ์ Wiggliness๋ฅผ ์กฐ์ ํ๋ค๊ณ ํ๋ค.
\[\text{Fit} = \text{Likelihood} - \lambda \times \text{Wiggliness}\]Image from โDataCampโ
๋๋ basis func.์ ์๋ก๋ smoothness๋ฅผ ์กฐ์ ํ ์ ์๋ค.
Image from โDataCampโ
<GAM>์ input feature ์๊ฐ ์ฌ๋ฌ ๊ฐ์ผ ๋๋ ์ฌ์ฉํ ์ ์๋ค. ์ด๋, ๊ฐ input feature๊ฐ independent ํ๋ค๋ <additive model>์ ๊ฐ์ ์ ์ฌ์ฉํ๋ค!
์์ธํ ๋ด์ฉ์ โDataCampโ์ ์์์ ํตํด ์ดํด๋ณด์.
๐ [YouTube] R Tutorial: Multivariate GAMs