Asumsi Statistik: Antara Benci & Butuh (Studi Kasus Regresi)


Ketika kita membaca teorema Pytagoras:
"Jika diberikan segitiga siku-siku maka kuadrat panjang sisi miringnya adalah penjumlahan kuadrat dua sisi lainnya"
maka kita akan mudah memahami bahwa akibat (syarat perlu/necessary condition) hanya bisa dipastikan kebenarannya jika asumsi (syarat cukup/sufficient condition) terpenuhi. Artinya kalau diberikan segitiga yang bukan siku-siku, maka tidak ada jaminan (yang diberikan oleh teorema Pytagoras) bahwa panjang kuadrat suatu sisinya merupakan penjumlahan dari kuadrat sisi lainnya (Gambar 1).
Gambar 1. Segitiga acute (tajam), right (siku), dan obtuse (tumpul) serta hubungan sisi-sisinya.
Dalam hal ini asumsi adalah syarat (requirement), namun apakah asumsi di Statistika (atau Data Science/Data Mining/Machine Learning) juga sama dengan contoh ini? Hhmm... iya dan tidak; sayangnya tidak sesederhana contoh diatas dan sedihnya cukup banyak yang memahami asumsi model² statistik hanya sebatas requirement saja. Walhasil sering kita temui orang² yang melakukan analisa data, tapi terasa seperti hafalan tahapan²/procedural saja (sangat kaku). Persis seperti orang yang baru belajar masak,  lalu mengikuti resep kata-per-kata. Kalau ndak ada salah satu bahan atau bumbu kurang sedikit, ia fikir masakannya bukan lagi sayur asem. Padahal (misal) pakai atau ndak pakai oncom, sayur asem tetap sayur asem kok .. :) .. Tapi sayur asem wajib pakai asem, karena kalau tidak masakannya tidak lagi bernama sayur asem. Nah, asumsi² di model statistik mirip seperti ini. Mari kita bahas lebih jauh. Tulisan ini akan dibagi menjadi beberapa bagian:
  1. Kenapa sih ada asumsi? Bolehkah kita hiraukan?
  2. Hubungan asumsi dan interpretasi dan bagaimana jika asumsi tidak terpenuhi?
  3. Kenapa banyak paper (terutama data mining & machine learning) tidak membahas tentang asumsi modelnya?
  4. Beberapa catatan penutup.

Kenapa sih ada asumsi?

Jawaban pertanyaan diatas bisa panjang, agar lebih singkat dan (semoga) mudah dipahami mari kita gunakan salah satu model yang paling  populer: Regresi Linear. Bentuk umum persamaan regresi adalah:
$$Y = \beta_0 + \beta X + \epsilon$$ Dimana  $Y$  adalah variabel tak bebas (dependent) bertipe numerik dan  $X$  adalah variabel bebas (independent) bertipe (misal) numerik juga.  $\beta_0$  dan  $\beta$  adalah parameter (~weights) model regresi yang akan kita cari. Sedangkan  $\epsilon$  adalah faktor ketidakpastian (error). Kebanyakan orang kemungkinan besar memahami persamaan regresi sebagai bentuk individual-nya dimana diberikan suatu nilai  $x_{i}$  maka kita bisa memprediksi nilai  $y_i$  dengan residual  $\epsilon_i$. Loh kok residual? apa bedanya dengan error? ... Residual adalah beda antara nilai pengamatan dan prediksi. Loh kalau gitu error apa dong? ... Error adalah beda antara nilai prediksi dengan nilai dari populasi (biasanya tidak diketahui/unknown, misal rata-rata Y yang sesungguhnya di populasi). Kenapa sih bahas error vs residual? emang penting?... Ya... karena nanti yang punya asumsi di regresi sebenarnya error (Walau implikasinya ke variabel X dan Y). 

Cara kedua untuk memahami persamaan regresi diatas adalah dengan memandang Y sebagai rata-rata (mean). Jadi diberikan suatu nilai X, persamaan regresi akan memprediksi rata-rata dari Y pada titik X. Pemahaman kedua ini yang akan memudahkan kita memahami asumsi di regresi. Kenapa? karena biasanya orang yang baru belajar regresi mikirnya X di suatu titik hanya akan memiliki satu nilai kemungkinan Y, padahal bisa jadi ada suatu faktor noise/acak (di pengukuran maupun populasi) yang mengakibatkan nilai Y tidak tetap. Inilah fungsi si error  $\epsilon$: untuk mengakomodir kemungkinan variasi nilai tersebut (hence probabilistik). Masih bingung? Silahkan lihat Gambar 2 berikut:
Gambar 2. Terdapat variasi nilai y yang mungkin untuk suatu nilai x [source].

Setelah memahami hal tersebut, mulailah kita membahas apa asumsi² yang muncul. Mari kita mulai dengan membahas bagaimana parameter $\beta$ dihitung. Salah satu cara dalam menghitung parameter  $\beta$  adalah dengan menggunakan metode Least Squares. Prosesnya relatif mudah, untuk yang tidak suka matematika (rumus²) jangan hawatir. Kita akan membahas filosofi (intuisi) rumusnya saja bukan proses matematisnya. Atau kalau ga bisa tahan juga skip ke kesimpulan di bawah penurunan rumusnya (tulisan biru). 

 Prosesnya diawali dengan menuliskan fungsi regresi diatas ke dalam bentuk eksplisit fungsi error, yaitu:   
$$\epsilon = Y - (\beta_0 + \beta X)$$  
atau jika kita gunakan pengamatan individualnya menjadi  
$$\epsilon_i = y_i - (\beta_0 + \beta_ix_i)$$  
Kalau semua error tersebut dijumlahkan, maka berubah menjadi: 
$$\sum_i \epsilon_i = \sum_i (y_i - \beta_0 - \beta_ix_i)$$ 
Orang Matematika suka dengan bentuk kuadrat (squares) alasannya karena nanti fungsinya mudah untuk diturunkan dan dicari nilai optimalnya. 

Nilai optimalnya dalam hal ini adalah minimum error. Persamaan terakhir berubah menjadi. 
$$\sum_i \epsilon_i^2 = \sum_i (y_i - \beta_0 - \beta_ix_i)^2$$ 
Nah kalau persamaan diatas diturunkan terhadap  $\beta_0$  dan  $\beta$  untuk meminimumkan error  $\epsilon$, maka didapat rumus untuk menghitung parameter regresi yang cukup tenar, yaitu: 
$$\beta=(X'X)^{-1}X'y$$  
Nah sekarang baru deh muncul asumsi. Perhatikan ada invers matriks di persamaan terakhir  $(X'X)^{-1}$ . Berarti kita harus mengasumsikan sesuatu agar kita yakin invers tersebut ada. Kalau tidak parameter persamaan regresi tidak dapat dihitung. 

Asumsi tersebut adalah: 
1. jumlah data > jumlah variabel     

2. Tidak ada kombinasi linear antar variabel (~multicollinearity) Asumsi 2 juga sebenarnya mengatakan "hampir" kombinasi linear-pun sebaiknya tidak ada (biasa disebut sebagai multicollinearity). Mengapa? Silahkan baca buku Komputasi Sains (scientific computing) tentang matrix sensitivity (dan condition number). "Hampir" kombinasi linear mengakibatkan model regresi yang didapat menjadi sensitif. Perubahan sedikit pada data mengakibatkan perubahan drastis pada nilai parameter  $\beta$  yang didapat. Dengan bahasa yang sederhana, kelak jika kita menginterpretasi model regresinya menggunakan parameter $\beta$ maka bisa jadi interpretasi tersebut tidak reliabel atau bahkan tidak valid. Selanjutnya kita tentu saja juga mengharapkan jika diberikan data x, maka errornya nol (0). Orang matematika menuliskan "harapan" sebagai ekspektasi (E) dan ditulis sebagai:  $E(\epsilon|x)=0$  atau sering ditulis dalam bentuk singkat  $E(\epsilon)=0$  Ekspektasi dari sesuatu kalau di (statistika) matematika adalah rata-rata (mean). Sehingga muncullah asumsi ke-3: 

3. $E(\epsilon)=0$  Asumsi ini maknanya: untuk memprediksi y kita hanya butuh x atau jika ditulis secara matematis: 
$$E(Y) = \beta_0 + \beta X$$ (perhatikan  $\epsilon$  menghilang). Ada literatur yang menuliskan makna lain dari asumsi ini sebagai: Y dipengaruhi X secara langsung tanpa dipengaruhi variabel (confounding) lain. Apa itu variabel confounding? silahkan baca disini. Masih ingat di pembahasan awal saya mengatakan interpretasi kedua regresi dengan menggunakan konsep rata-rata Y merupakan kunci penting dalam memahami tentang asumsi statistik? Sekarang kita akan membahasnya lebih lanjut. Agar persamaan regresi yang kita dapat bisa menjelaskan Y dengan baik maka masuk akal kalau kita menginginkan agar terdapat hubungan linear antara X dan Y (melalui  $\beta$). Apa maksudnya melalui  $\beta$? Maksudnya persamaan regresi itu linear terhadap  $\beta$  bukan X. Ingat pada aplikasinya X adalah data (konstan), yang masih berupa "variabel" adalah   $\beta$. Kemudian karena asumsi linear diatas, maka masuk akal jika kita menginginkan bahwa rata-rata Y di setiap nilai X-nya berada pada suatu garis lurus. Secara formal orang Statistik/Matematik bilangnya variasi dari error-nya konstan. Nah dari 2 paragraf terakhir ini muncullah 2 asumsi lain: 

4. Terdapat hubungan linear antar Y dan X     

5. Variasi konstan: $var(\epsilon)=\sigma^2$ Jangan bingung dengan simbol  $\sigma^2$, itu hanya simbol untuk menyatakan bahwa variasi tidak bergantung x (bukan  $\sigma_x^2$ atau   $\sigma(x)^2$). Kita baru setengah jalan. Sabar ya ... :) ... (mangkanya saya butuh beberapa hari untuk nulis post ini :( ) .... Kemudian ada lagi hal yang kita inginkan dari pemodelan diatas. Kita ingin urutan data tidak mempengaruhi pemodelan. Jika saling mempengaruhi nanti jadinya Time Series Analysis atau Stochastic Modelling (kita bahas kapan-kapan saja :) ). Dengan kata lain prediksi Y untuk 2 atau lebih nilai X tidak saling mempengaruhi satu sama lain.  Orang Matematika bilangnya pengamatannya independent, orang Statistik lalu mengejawantahkan sebagai asumsi ke-6. 

6. Error-nya tidak berkorelasi (biasa ditulis $cov(\epsilon_i,\epsilon_j)=0$ untuk $i\neq j$) Perhatikan sejauh ini tidak dibutuhkan asumsi kenormalan. Kalau kita lihat di buku-buku statistik, estimasi parameter dengan cara diatas adalah BLUE (best linear unbiased estimator). Dengan bahasa sederhananya: "taksiran parameter yang baik". Yang artinya lagi sebenarnya untuk sekedar prediksi dengan regresi kita tidak membutuhkan asumsi kenormalan. "Loh, tunggu dulu Gan.... sesat ente ... banyak literatur bilang salah satu asumsi regresi adalah datanya normal". Tunggu dulu, sabar. Kita belum selesai membedah model regresi diatas. Asumsi 3,4,5,6 bisa "disederhanakan" dengan hanya satu asumsi yaitu error-nya berdistribusi normal. Yess... error-nya yang berdistribusi normal (lihat Gambar 3).
Gambar 3. Error (hence Y) berdistribusi normal [source].


Loh?... tapi kitakan ndak punya nilai error (karena kita tidak tau true mean value dari Y). Lalu bagaimana cara memeriksanya? Untungnya para ilmuwan (Statistika Matematika) sudah mau berpusing-pusing untuk kita dan mereka bisa menunjukkan bahwa jika error berdistribusi normal maka begitu juga Y. Sehingga itulah sebab kita memeriksa kenormalan dari Y. Tapiiii... tunggu dulu .... Kembali kita harus bersyukur kepada para ilmuwan Matematika/Statistika. Mereka mengemukakan Central Limit Theorem yang berbunyi kurang lebih: 

jika kita punya himpunan berbagai sampel dari sebuah populasi, maka rata-rata dari kumpulan sampel tersebut akan mendekati distribusi normal jika ukuran sampel membesar.  Apa akibat atau artinya? berarti untuk data yang relatif besar (menurut beberapa literatur n>50) Regresi robust terhadap asumsi kenormalan. Robust dalam bahasa yang sederhana artinya kurang lebih "tidak terlalu bergantung".

 

Asumsi dan Interpretasi

Sebenarnya masih ada asumsi-asumsi lain yang belum dibahas (baca disini). Namun karena post-nya sudah kepanjangan dan bikin saya laper maka saya cukupkan sampai disini dulu. Setidaknya sampai disini sudah jelas bahwa "asumsi statistika tidak selalu merupakan requirement". Utamanya ia muncul dari bagaimana kita melakukan pemodelan/perhitungan-nya serta ekspektasi kita akan sifat dari model. Beberapa model juga tidak sensitif (baper) terhadap asumsi tertentu, sehingga sedikit melanggar biasanya masih tidak mengapa (i.e. robust). Jika asumsi tidak terpenuhi maka minimal ada dua kemungkinan yang akan terjadi: hasil perhitungan tidak bisa dipertanggung-jawabkan atau ada sifat model (konsekuensi) yang tidak bisa kita simpulkan (infer). Dengan kata lain asumsi mempengaruhi interpretasi. Kita bahas lebih detail jika kita ketemu di mata kuliah Statistik/Data Science ... :) ...

Kenapa ada literatur (paper) tidak membahas asumsi?

Ada beberapa kemungkinan akan hal ini:
  1. Husnudzan (berbaik sangka): di balik layar sudah diperiksa oleh penulis.
  2. Kalau di tulis semua detail asumsi akan membuat paper tidak fokus dan bulky (kepanjangan).
  3. Su'udzan (buruk sangka): penulis tidak paham pentingnya asumsi dalam modelnya.
  4. Untuk objektif yang diutarakan paper beberapa asumsi tidak penting. Misal cuma untuk prediksi atau datanya relatif besar (sehingga memeriksa kenormalan tidak perlu - di Regresi).
  5. Penulis hanya melakukan data eksplorasi (Knowledge Discovery in Databases ~ Data Mining) dimana kesimpulan dan informasi seringnya dilakukan hanya atas data observasi dan tidak (belum) ada inferensia ke populasi dilakukan.
Menariknya ada (minimal) satu paper yang membahas isu ini, silahkan baca papernya disini.

Penutup

Saya akan memberikan beberapa pernyataan dalam bentuk poin tanpa penjelasan. Bisa jadi bahan diskusi saat kita kopi darat nanti ... :) ...
  • Persamaan regresi (konvensional) sebenarnya lebih tepat jika ditulis sebagai: $$E(y|x) = \beta_0 + \beta X$$
  • Selain metode least squares diatas ada cara lain dalam menghitung parameter: MLE (Maximum Likelihood Estimator). Namun jika asumsi kenormalan terpenuhi maka OLS=MLE.
  • Jika X kategorik maka kenormalan diperiksa pada setiap kelas di variabel tersebut.
  • Kenormalan dibutuhkan untuk hypothesis testing di Regresi (kalau dibahas panjang).
  • Jika asumsi tidak terpenuhi ada beberapa cara yang bisa dilakukan untuk menanganinya (e.g. baca disini). Tapiiii... hati-hati, interpretasi modelnya menjadi lebih sulit (berbeda).
  • Kita hanya membahas Regresi, namun untuk model lain peran asumsi di model tersebut juga bisa dianalogikan (serupa filosofinya).
  • Kita sebenarnya butuh asumsi, agar perhitungan parameter menjadi mudah (seragam) dan kita yakin bahwa interpretasi (kesimpulan) yang kita buat valid.
  • Konsekuensinya belajar Data Science (mining) bukan hanya tentang memanggil modul di R (Python) atau library di Hadoop/Spark. Tapi memahami dengan baik filosofi dari setiap model yang digunakan. Gagal memahami hal ini bisa mengakibatkan kerugian sangat besar (hingga milyaran rupiah) bagi perusahaan. Bukan hanya dari biaya cloud/infrastruktur yang terbuang percuma, tapi juga decision making yang salah akibat model (& interpretasinya) yang tidak tepat.
  • Semua model pada prinsipnya salah (tidak tepat karena probabilistik/stokastik), tapi sebagian dari model-model yang salah tersebut berguna - George Box

Tidak ada komentar:

Posting Komentar

Relevant & Respectful Comments Only.