logoUNEJ UNEJ PONSTAT
Laboratorium Statistika, FMIPA Universitas Jember Jalan Kalimantan 27 Jember 68121

Pengantar GAM

Data dengan Hubungan Nonlinier

Ide Utama Penanganan Hubungan Nonlinier

Secara umum dalam menangani hubungan variabel yang tidak linier ada beberapa cara diantaranya
  1. Mengabaikan hubungan nonlinier yang tidak terlalu serius (tetap memberlakukan sebagai regresi linier)
  2. Data dipecah menjadi beberapa segmen ( piecewise regression) dan pada tiap segmen interval dianggap cukup logis menggunakan regresi linier
  3. Data dipecah menjadi beberapa segmen ( piecewise regression) tetapi pada tiap segmen interval diberlakukan regresi polinomial derajat 2 atau lebih
  4. Menggunakan regresi nonlinier parametrik (polinomial) dan logistik atau log pada GLM (Pendekatan ini masih dianggap linier karena, prediktor dan parameternya bersama-sama membentuk kombinasi linier, sedangkan log, logit, probit dan sejenisnya merupakan fungsi link)
  5. Menggunakan regresi dengan penghalus nonparametrik baik dengan spline maupun loess pada GAM. Pendekatan terakhir yang biasa disebut sebagai regresi noninear (semi parametrik).
Secara umum setiap pendekatan yang dilakukan akan menghasilkan error yang berbeda yang dapat dilihat dari besarnya MSE (Mean Square Error), akan tetapi efektivitas secara keseluruhan harus diukur berdasarkan kritera GOF (Goodness of Fit) yang selain mengukur MSE yang minimal juga mengukur efek akibat penambahan/pengurangan parameter. Berikut adalah contoh ilustrasi hubungan data nonlinier, serta visualisasi berbagai pendekatan yang dapat dilakukan

Gambar 1. Contoh Diagram Pencar dengan berbagai Smoother
Segmen linier: Segmen polinom: GLM: Spline: Loess:

Pendekatan Model Statistika Aditif Terampat

Bentuk Umum dan Asumsi

Ada beberapa alasan sehingga model nonlinier biasa (termasuk prediktor linier dengan invers link), tidak bisa diaplikasikan, diantaranya (lihat Everitt & Hothorn, 2010):
  1. secara emperik terindikasi bentuk hubungan agak kompleks tidak cukup didekati dengan nonlinier biasa;
  2. secara teoritis tidak ada pengalaman yang menunjukkan bentuk nonlinier yang sesuai;
  3. ingin kondisi data yang bersangkutan memilih model yang sesuai.
Salah satu yang bisa diberlakukan untuk kondisi seperti di atas adalah dengan mencoba penghalusan lokal menggunakan pendekatan model aditif terampat. Misalkan ada suatu peubah respon $Y$ yang bergantung pada sejumlah peubah bebas $X_j,\; j=1,\cdots,p.$ Secara umum dengan menggunakan pendekatan aditif terampat, hubungan diatas dapat dituliskan dalam bentuk umum seperti: $$ g(\mu_Y) = \eta(X) + e $$ dengan $g$ adalah fungsi link yang kontinu dan diferensiabel, $\eta(X)$ sebagai prediktor aditif yang memiliki bentuk umum: $$ \eta(X)=\alpha + \sum\limits_{j = 1}^p {f_j } \left( {{\rm X}_j } \right) $$ Peubah $Y$ adalah respon yang memiliki sebaran keluarga eksponensial, yaitu: \[ f_Y \left( {y;\theta ;\phi } \right) = \exp \left\{ {\frac{{y\theta - b\left( \theta \right)}} {{a\left( \phi \right)}} + c\left( {y,\phi } \right)} \right\}; \] $X_j$ adalah sejumlah peubah bebas atau prediktor, dan $f_j$ adalah fungsi umum yang dapat merupakan fungsi aljabar (linier non linier) dan dapat juga merupakan fungsi penghalus nonparametrik $s_j$. Beberapa bentuk khusus dari prediktor aditif $\eta(X)$ adalah:
  1. $\eta(X)$ menjadi prediktor linier, jika semua fungsi $f_j$ adalah fungsi linier sehingga dapat dituliskan sebagai: \[ \eta(X_j)=\alpha+\sum_{j=1}^p\beta_jX_j \]
  2. $\eta(X)$ menjadi prediktor nonparametrik jika semua fungsi $f_j$ merupakan fungsi penghalus nonparametrik \[ \eta(X_j)=s_o+\sum_{j=1}^ps\left(X_j\right) \]
  3. $\eta(X)$ menjadi prediktor aditif atau semi parametrik jika sebagian fungsi $f_j$ merupakan fungsi penghalus parametrik dan sebagian lagi merupakan fungsi parametrik (misalnya linier, nonlinier atau linier yang dikomposisi dengan invers fungsi link, $g^{-1}=h$, misalnya $h \left(\alpha+\sum_{j=1}^p\beta_jX_j\right),$ sehingga menghasilkan bentuk kombinasi: \begin{equation} g(\mu)= \eta \left( {\rm X}, t \right) = \alpha+\sum\beta_jX_j + \gamma(t) ) \end{equation} atau \begin{equation} \mu=\eta \left( {\rm X}, t \right) = h \left(\alpha+\sum\beta_jX_j + \gamma(t) \right) \end{equation} dengan suku pertama sebagai bagian parametriknya sedangkan suku kedua merupakan bagian nonparametriknya. Karena merupakan campuran antara parametrik dengan nonparametrik, maka disebut semiparametrik dan karena bentuknya merupakan bentuk adifif, maka disebut juga prediktor aditif. Apabila prediktor aditif ini bergabung dengan galat yang memiliki sebaran dari keuarga eksponensial, maka model yang dihasilkan disebut model aditif terampat (GAM, Generalized Aditive Model\/).
Jadi bisa dipahami bahwa model aditif terampat merupakan generalisasi model linier terampat, dengan memperluas prediktor linier dengan prediktor aditif. Seperti pada model linier terampat, model aditif terampat juga memuat komponen acak ($e$), komponen tetap, yakni prediktor aditif dan fungsi link yang menghubungkan komponen acak dengan prediktor aditif tersebut. Galat sebagai komponen acaknya diasumsikan memiliki fungsi kepadatan keluarga eksponensial

Penghalus lokal

Hastie & Tibshirani (1991), membahas berbagai macam penghalus, salah satu dari penghalus tersebut adalah penghalus spline yang merupakan solusi yang meminimumkan \begin{equation} S(x)=\sum\limits_{i = 1}^n {(y_i - f(x_i ))^2 } ^{} + \lambda \int\limits_a^b {f^{\prime\prime} (x)^2 } dx \label{eq:spline} \end{equation} dengan $\lambda $ adalah parameter penghalus dalam interval $0 < \lambda $. Nilai $\lambda$ yang besar akan menghasilkan kurva yang mulus, sedangkan $\lambda$ kecil akan menghasilkan gambar kurva yang kasar. Suku pertama pada persamaan \eqref{eq:spline} di atas digunakan untuk mengukur kerapatan data, dan tidak lain merupakan bentuk kuadrat, sedangkan suku keduanya memperlihatkan kurva suatu fungsi, yang dianggap penalti dari suku pertama. Jika $f(x_i)=\hat{\mu_i}$, maka bentuk \eqref{eq:spline} disebut juga PRSS\index[subjek]{PRSS} ( Penalized Residual Sum Square\/). Salah satu penghalus spline adalah spline kubik dengan titik perubahan yang terjadi di dalam suatu kurva disebut dengan titik knot. Model spline kubik, dengan $k$ titik knot ($t_i,\;i=1,\cdots,k$) dapat dituliskan sebagai berikut (Budiantara dan Subanar, 1997}: \begin{equation} S(x) = \sum\limits_{j = 0}^3 {\beta _{0j} } {\rm X}^j _{} + \sum\limits_{i = 1}^k {\beta _i } ({\rm X} - t_i )_ + ^3 \label{eq:kb.spline} \end{equation} dengan
  1. $\displaystyle({\rm X} - t_i )_ + ^3 = \left\{ \begin{gathered} ({\rm X} - t_i )^3 ,\text{jika }{\rm X} - t_i \geqslant 0 \\ 0,\text{jika }{\rm X} - t_i < 0 \\ \end{gathered} \right. $
  2. $t_i$ adalah titik knot, yaitu pertemuan dua kurva yang berdekatan dan
  3. $k$ adalah banyaknya titik knot.
Berikut adalah salah satu contoh bentuk model aditif dengan respon $Y$ dimodel linier untuk peubah bebas $X_1$ dan dimodel spline kubik dengan tiga titik knot untuk peubah bebas $X_2$, sehingga dari persamaan \eqref{eq:kb.spline} dihasilkan persamaan \eqref{eq:kb.spline2g}. Persamaan \eqref{eq:kb.spline2g} merupakan model penghalus parametrik karena koefisien/parameter tiap-tiap komponen penghalus dapat dimunculkan secara eksplisit. \begin{align} \label{eq:kb.spline2g} Y =&\; \beta _{00} + \beta _{11} {\rm X}_1 + \sum\limits_{j = 1}^3 {\beta _{2j} } {\rm X}_2^j + \sum\limits_{i = 1}^3 {\beta _{2i} } ({\rm X}_2 - t_i )_ + ^3 \\ = &\; \beta _{00} {{\rm X}_1 {\rm X}_2 } + \beta _{11} {\rm X}_1 + \nonumber\\ &\;\beta _{21} {\rm X}_2 + \beta _{22} {\rm X}_2^2 + \beta _{23} {\rm X}_2^3 + \nonumber\\ &\; \beta _{24} \left( {{\rm X}_2 - t_1 } \right)_ + ^3 + \beta _{25} \left( {{\rm X}_2 - t_2 } \right)_ + ^3 + \beta _{26} \left( {{\rm X}_2 - t_3 } \right)_ + ^3 \end{align} Everitt & Hothorn (2010) menyatakan bahwa salah satu bentuk regresi linier terpatah ( piecewise linear regression\/) merupakan pemulusan spline linier yang dapat dinyataan dalam bentuk persamaan \eqref{eq:kb.spline.linier} berikut. \begin{equation} S(x) = \sum\limits_{j = 0}^1 {\beta _{0j} } {\rm X}^j _{} + \sum\limits_{i = 1}^k {\beta _i } ({\rm X} - t_i )_ + \label{eq:kb.spline.linier} \end{equation}

Pengepasan GAM

Ada tiga algoritma penting untuk mengistimasi parameter pada GAM (Hastie 1997), seperti diuraikan berikut ini. Uraian lengkap ketiga algoritma tersebut dapat dilihat pada Hastie & Tibshirani (1990).
  1. Penghalus diagram pencar ( scatterplot smoother\/) dengan memperhatikan ketepatan penghalusan dengan melihat grafik diagram pencarnya. Penghalus yang bisa dipilih diantaranya adalah penghalus spline. Algoritma ini yang diterapkan pada paket \verb|gam|.
  2. algoritma backfitting (inner loop)\/. Algoritma backfitting merupakan algoritma yang dapat digunakan untuk mengestimasi model aditif dengan menggunakan beberapa tipe regresi penghalus, diantaranya adalah penghalus spline. Didefinisikan sejumlah residu parsial ke- $j$ sebagai berikut \[ R_j = \Upsilon - s_0 - \sum\limits_{k \ne j} {s_k } ({\rm X}_k ) \] dengan \[ {\rm E}(R_j |{\rm X}_j ) = s_j ({\rm X}_j ) \]
  3. algoritma local scoring (outer loop). Algiritma lokal skoring ini merupakan perluasan algoritma IWLS ( Iterated Weighted Least Square), algoritma ini diterapkan pada fungsi gam pada paket mgcv.
Dalam analisis data dengan menggunakan pendekatan pemulusan, seperti telah disampaikan, pada dasarnya kita mencari kurva mulus yang mendekati data dengan baik. Banyaknya puncak/belokan kurva menunjukkan tingkat kemulusan dan kekasaran kurva. Semakin banyak liku-liku kurva berarti semakin banyak titik knot yang dipakai dan kurva semakin {\it wiggly} atau kurang mulus. Dalam kondisi seperti ini, sering terjadi pengepasan yang berlebihan ({\it over fitting\/}), yaitu kurvanya terlalu kompleks (terlalu {\it wiggly}, terlalu banyak belak-belok). Model yang demikian memuat lebih banyak parameter dari yang sesungguhnya diperlukan, juga jika dibanding dengan banyaknya data. Model yang berlebihan seperti ini kurang baik untuk prediksi karena secara berlebihan mengukur dampak dari suatu perubahan yang kecil pada peubah bebas. Untuk menghindari hal ini selain menggunakan kriteria AIC, dalam GAM biasa juga digunakan perhitungan CV( Cross Validation) dan GCV ( Generalized Cross Validation) untuk menghitung banyaknya dan posisi titik-titik knot yang optimal. Definisi masing-masing diberikan pada persamaan berikut. \begin{equation} CV(\lambda ) = \frac{1} {n}\sum\limits_{i = 1}^n {(y_i } - \hat \eta _\lambda ^{ - 1} (x_i ))^2 \end{equation} dengan \[ \hat \eta (x) = \mathbf{A}(\lambda )\mathbf{Y} \] untuk suatu matriks $\mathbf{A}$. \begin{equation} GCV(\lambda ) = \frac{{\sum\limits_{i = 1}^n {(y_i - \hat \eta _\lambda (x_i ))^2 } }} {{(n - tr(A(\lambda )))^2 }} \end{equation} \begin{equation} AIC = \frac{1} {n}\sum\limits_{i = 1}^n {D(y_i ;\hat \mu )} + 2tr(A(\lambda ))\phi/ n \end{equation}

Visualisasi Smoother dengan R

Untuk visualisasi ini anda dapat memilih data berikut sebagai ilustrasi.
Pilih data:

Ekplorasi Data

Ringkasan Data:


Variabel yang dipilih:

Eksplorasi Grafik Smoothing Spline serempak dengan SPM

Kita dapat memvisualisasikan hubungan variabel secara serempak menggunakan penghalus spline. Beberapa parameter yang bisa diatur diantaranya adalah seperti berikut ini.
Grafik Diagonal: Opsi Spline: Jenis Spline Jenis Distribusi: Jenis Link: Banyaknya Knots: .
Gambar 2. Matriks Diagram Pencar dengan Smoother Spline

Eksplorasi Smoothing dengan Loess dengan SPM

Opsi Loess
Ukuran Span c(0,1) . Degree . Grafik diagonal
Gambar 3. Matriks Diagram Pencar dengan Smoother Loess

Detail Eksplorasi Smoothing dengan ggplot

Variabel yang dipilih:


Gambar Standar Error:

Pemulus NAM (Piecewise Regression)

OPSI NAM Jenis NAM
Derajat kebebasan NAM (Terkait banyaknya titik belok) .
Derajat kebebasan POLINOM (Terkait banyaknya titik belok) .
Derajat POLINOM (Terkait kemulusan kurva, 1=linier) .

Gambar 4. Matriks Diagram Pencar dengan Smoother NAM


Pemulus GLM dengan Link Kanonik

OPSI GLM


Gambar 5. Matriks Diagram Pencar dengan Smoother GLM

Pemulus GAM

OPSI GAM Distribusi Jenis Spline Titik Knot .


Gambar 6. Matriks Diagram Pencar dengan Smoother GAM (Spline)


Pemulus Loess

OPSI LOESS
Span . Degree .


Gambar 7. Matriks Diagram Pencar dengan Smoother GAM (LOess)

Dalam Konstruksi: Contoh Luaran masing-masing pilihan smoother

Dalam sisa tahun 2016 & 2017 akan dilengkapi narasi untuk masing-masing pilihan smmother. Naskah sebenarnya sudah tersedia di laman lain secara terpisah