Machine Learning: Random Forest Regression

Machine Learning: Random Forest Regression

Catatan penting : Jika Anda benar-benar awam tentang apa itu Python, silakan klik artikel saya ini. Jika Anda awam tentang R, silakan klik artikel ini.

Kali ini kita akan belajar tentang teknik regresi lagi, yaitu Random Forest Regression (RFR). Jika diartikan ke dalam bahasa Indonesia artinya adalah teknik regresi ala hutan acak, cukup unik namanya memang. Dari sini, mungkin pembaca bisa menebak, bahwa teknik ini masih bersaudara dengan teknik Decision Tree, karena ada nama hutan-nya (di mana hutan terdiri dari beberapa pohon). Walau agak aneh namanya jika diterjemahkan ke bahasa Indonesia, tingkat prediksi teknik ini jangan diragukan.

Teknik RFR ini bisa diaplikasikan untuk dua hal: regresi dan klasifikasi. Namun untuk pembahasan kali ini, kita bahas regresinya dulu.

Berikut langkah-langkah RFR:

  1. Pilih beberapa data di training set sebanyak K buah (Jika datanya terlalu sedikit, misal kurang dari 30, tidak perlu dibagi ke dalam training dan test set).
  2. Buat Decision Tree-nya dari K data yang sudah dipilih sebelumnya.
  3. Pilih jumlah N-tree (kumpulan pohon-pohon) yang ingin dibuat. Selanjutnya ulangi langkah 1 dan 2. Intinya terus membuat decision tree regression sebanyak-banyaknya (umumnya sebanyak 200 kali, 300, 500, dst).
  4. Untuk dataset yang baru, buat setiap N-tree memprediksi nilai Y untuk dataset yang baru ini. Jika sudah, cari nilai rataan Y dari hasil prediksi N-tree tadi. Misal, kita menghitung 500 prediksi nilai Y untuk dataset baru. Langkah selanjutnya, kita ambil nilai rataan Y dari 500 prediksi tadi.

Jadi alasan mengapa disebut random forest adalah karena kita melakukan penghitungan decision tree beberapa kali (200, 300, 400, 500, dst) sehingga membentuk sebuah forest (hutan kecil).

Teknik ini memiliki tingkat akurasi cukup tinggi karena dia mengambil rataan (average) dari sekian banyak prediksi. Dengan demikian, teknik ini bisa meminimumkan bias (error) nya.

Satu atau dua hasil prediksi yang salah memang buruk, namun jika hanya ada 2 prediksi salah dari 500 prediksi, maka ia tidak akan menganggu nilai rataannya. Semakin banyak prediksi, semakin baik hasil akurasi dan stabilitasnya. Namun ia akan banyak memakan waktu (waktu komputasi bertambah).

Jika pembaca masih bingung tentang kosep random forest regression, saya coba pakai analogi lain. Anggap kita memiliki toples yang berisi permen seperti berikut:

toples permen
Toples permen

Pertanyaannya adalah, berapa banyak permen yang ada di dalam toples ini?

Logika random forest untuk menyelesaikan masalah di atas bukanlah dengan melihat toplesnya lalu langsung menebak isinya. Jika kita melihat dan langsung menebak maka kemungkinannya 50:50 (50% salah, 50% benar). Namun caranya adalah suruh orang lain menebaknya. Bisa dengan cara ia mencoba melihat isinya, meraba isi toples dan lain-lain. Setiap tebakan yang ia ucapkan, maka kita tulis di kertas.

Selanjutnya suruh orang lain menebak lagi. Setiap mereka mengucapkan tebakannya,tulis di kertas lagi. Terus lakukan ini sampai kurang lebih 200 kali misalnya. Selanjutnya, langkah terakhir adalah cukup menghitung rataan dari 200 tebakan yang sudah Anda catat. Secara statistik, maka semakin banyak tebakan, semakin dekat Anda untuk memprediksi jumlah permen yang sesungguhnya. Mudah bukan?

Selanjutnya kita akan mencoba mengaplikasikan konsep random forest regression untuk kasus nyata.

Untuk melanjutkan membaca silakan klik tombol di bawah ini.

Bagikan artikel ini:

Pages: 1 2 3

Leave a Reply

avatar
  Subscribe  
Notify of