ENSAMBEL LEARNING

ENSAMBEL LEARNING

oleh Rekha Aprilia Andini -
Jumlah balasan: 0

Nama = Rekha Aprilia Andini

NPM = 2311080021

1.   Masalah pada Pendekatan Algoritma Tunggal

Dalam pembelajaran Machine Learning, salah satu pendekatan yang sering dilakukan adalah menggunakan satu algoritma untuk membangun model prediksi. Biasanya, beberapa algoritma dicoba terlebih dahulu, kemudian algoritma yang menghasilkan nilai akurasi paling tinggi dipilih sebagai model akhir. Misalnya, setelah dilakukan pengujian terhadap Decision Tree, KNN, dan Naive Bayes, ternyata Decision Tree menghasilkan akurasi sebesar 79%, sedangkan algoritma lainnya memiliki akurasi yang lebih rendah. Dalam kondisi seperti ini, praktisi sering kali hanya menggunakan Decision Tree dan mengabaikan hasil dari algoritma lainnya. Pendekatan tersebut memang sederhana, tetapi sebenarnya masih memiliki keterbatasan karena setiap algoritma mempunyai cara kerja dan karakteristik yang berbeda dalam mempelajari data.

Setiap algoritma Machine Learning dapat melihat suatu dataset dari sudut pandang yang berbeda. Decision Tree, misalnya, bekerja dengan membentuk aturan berdasarkan percabangan fitur, sedangkan KNN menentukan prediksi berdasarkan kedekatan suatu data dengan data lainnya. Naive Bayes menggunakan pendekatan probabilitas, sehingga pola yang ditemukan oleh Naive Bayes belum tentu sama dengan pola yang ditemukan oleh Decision Tree atau KNN. Oleh karena itu, ketika hanya satu algoritma yang digunakan, terdapat kemungkinan bahwa sebagian informasi atau pola yang sebenarnya terdapat di dalam dataset tidak dapat ditangkap secara optimal. Algoritma dengan akurasi paling tinggi juga belum tentu selalu menjadi model yang paling sesuai untuk semua kondisi data. Performa model dapat berubah ketika dataset, karakteristik data, atau pembagian data training dan testing berubah. Inilah salah satu alasan mengapa diperlukan pendekatan yang dapat memanfaatkan beberapa model sekaligus, yaitu Ensemble Learning.

2.   Konsep Bias-Variance Trade-off

2.1  Bias dan Underfitting

Bias adalah kesalahan yang terjadi ketika model memiliki asumsi yang terlalu sederhana dalam mempelajari pola dari suatu dataset. Model dengan bias tinggi cenderung tidak mampu menangkap hubungan atau pola penting yang terdapat di dalam data. Akibatnya, model mengalami underfitting, yaitu kondisi ketika model belum mampu mempelajari data dengan baik. Model yang mengalami underfitting biasanya memiliki performa yang kurang baik, baik pada data training maupun data baru. Contohnya, ketika dataset memiliki pola yang kompleks tetapi model yang digunakan terlalu sederhana, model hanya mampu mengenali sebagian pola sehingga hasil prediksinya menjadi kurang tepat. Oleh karena itu, bias yang tinggi menunjukkan bahwa model masih terlalu sederhana dalam memahami karakteristik data.

2.2  Variance dan Overfitting

Variance menunjukkan seberapa sensitif suatu model terhadap perubahan pada data training. Model dengan variance tinggi cenderung terlalu menyesuaikan diri dengan data yang digunakan selama proses training. Model tidak hanya mempelajari pola penting, tetapi juga dapat mempelajari noise atau pola khusus yang sebenarnya tidak diperlukan. Kondisi tersebut disebut overfitting. Model yang mengalami overfitting biasanya memiliki performa sangat baik pada data training, tetapi performanya menurun ketika diberikan data baru karena model terlalu "menghafal" data training. Salah satu contoh model yang dapat mengalami overfitting adalah Decision Tree yang terlalu kompleks, misalnya memiliki terlalu banyak percabangan atau kedalaman yang tinggi.

2.3  Keseimbangan Bias dan Variance

Bias-variance trade-off merupakan konsep yang menjelaskan pentingnya mencari keseimbangan antara bias dan variance dalam membangun model Machine Learning. Model yang terlalu sederhana cenderung memiliki bias tinggi dan mengalami underfitting, sedangkan model yang terlalu kompleks cenderung memiliki variance tinggi dan mengalami overfitting. Kondisi yang diharapkan adalah model memiliki bias dan variance yang relatif rendah sehingga mampu mempelajari pola penting dalam data tanpa terlalu mengikuti noise. Dengan keseimbangan tersebut, model dapat menghasilkan prediksi yang baik sekaligus memiliki kemampuan generalisasi, yaitu mampu memberikan hasil yang baik ketika digunakan pada data yang belum pernah dilihat sebelumnya.

Untuk mendapatkan keseimbangan tersebut, kualitas dataset juga sangat penting. Dataset yang reliable dan representatif dapat membantu model mempelajari pola yang sesuai dengan kondisi sebenarnya. Selain itu, proses cross-validation dapat digunakan untuk melihat apakah performa model tetap konsisten pada pembagian data yang berbeda. Pengujian berbagai parameter dan hyperparameter juga dapat dilakukan untuk mendapatkan konfigurasi model yang sesuai sehingga model tidak terlalu sederhana maupun terlalu kompleks.

2.4  Evaluasi dan Generalisasi Model

Evaluasi model dilakukan untuk mengetahui seberapa baik model dalam melakukan prediksi dan apakah model mampu melakukan generalisasi terhadap data baru. Evaluasi sebaiknya tidak hanya menggunakan akurasi karena satu metrik belum tentu memberikan gambaran lengkap mengenai kemampuan model. Pada permasalahan klasifikasi, beberapa metrik yang dapat digunakan adalah precision, recall, F1-score, dan AUC. Masing-masing metrik memberikan informasi yang berbeda mengenai hasil prediksi model. Dengan menggunakan beberapa metrik, kemampuan model dapat dilihat secara lebih menyeluruh.

Selain itu, generalisasi menjadi hal penting karena tujuan Machine Learning bukan hanya membuat model yang bagus pada data training, tetapi juga model yang mampu bekerja pada data yang belum pernah dilihat sebelumnya. Model yang memiliki performa tinggi pada data training tetapi buruk pada data testing menunjukkan kemungkinan terjadinya overfitting. Sebaliknya, model yang buruk pada data training dan testing dapat menunjukkan underfitting. Oleh karena itu, kombinasi antara dataset yang baik, cross-validation, pengaturan parameter, dan evaluasi menggunakan beberapa metrik diperlukan untuk mendapatkan model yang mampu memberikan prediksi secara konsisten.

3.   Pengertian Ensemble Learning

Ensemble Learning merupakan pendekatan Machine Learning yang menggabungkan beberapa model atau algoritma untuk menghasilkan suatu prediksi. Berbeda dengan pendekatan algoritma tunggal yang hanya mengandalkan satu model, Ensemble Learning menggunakan beberapa model yang dapat memiliki karakteristik, cara belajar, atau pola kesalahan yang berbeda. Ide dasarnya adalah bahwa beberapa model yang bekerja secara bersama-sama dapat menghasilkan keputusan yang lebih stabil dibandingkan hanya mengandalkan satu model. Setiap model dapat menangkap pola tertentu dari dataset, kemudian hasil dari berbagai model tersebut digabungkan untuk memperoleh hasil akhir.

Konsep Ensemble Learning dapat dianalogikan seperti proses pengambilan keputusan secara bersama-sama. Ketika seseorang mengambil keputusan sendiri, keputusan tersebut hanya berdasarkan pengetahuan dan sudut pandang orang tersebut. Namun, apabila beberapa orang dengan pengetahuan dan sudut pandang yang berbeda memberikan pendapat, informasi yang diperoleh menjadi lebih beragam. Setelah itu, berbagai pendapat tersebut dapat digunakan untuk menghasilkan keputusan bersama. Dalam Ensemble Learning, beberapa model Machine Learning berperan seperti beberapa orang yang memberikan pendapat berdasarkan cara mereka masing-masing dalam mempelajari data.

Dalam penerapannya, data dapat diberikan kepada beberapa model atau model dapat dibangun menggunakan berbagai sampel maupun bagian fitur yang berbeda. Misalnya, sebuah dataset digunakan untuk melatih KNN, Decision Tree, dan Naive Bayes. Masing-masing model kemudian menghasilkan prediksi berdasarkan cara kerja dan pola yang berhasil dipelajarinya. Hasil prediksi tersebut selanjutnya digabungkan menggunakan mekanisme tertentu. Pada permasalahan klasifikasi, penggabungan dapat dilakukan menggunakan voting, yaitu menentukan kelas berdasarkan suara terbanyak dari model-model yang digunakan. Sementara itu, pada permasalahan regresi, hasil prediksi dari beberapa model dapat digabungkan menggunakan nilai rata-rata atau mean.

Tujuan utama Ensemble Learning bukan sekadar memperbanyak jumlah model, tetapi memanfaatkan perbedaan karakteristik antar-model untuk memperoleh prediksi yang lebih kuat. Jika satu model melakukan kesalahan pada suatu data, model lainnya mungkin dapat menghasilkan prediksi yang benar. Ketika hasil beberapa model digabungkan, kesalahan dari model tertentu dapat dikurangi oleh model lainnya. Oleh karena itu, Ensemble Learning banyak digunakan untuk meningkatkan stabilitas dan kemampuan generalisasi model, terutama ketika satu algoritma saja belum mampu memberikan hasil yang memadai.

4.   Tiga Metode Utama Ensemble Learning

4.1  Bagging (Bootstrap Aggregating)

Bagging atau Bootstrap Aggregating merupakan salah satu metode dalam Ensemble Learning yang bekerja dengan membuat beberapa dataset baru dari dataset asli melalui proses resampling atau pengambilan sampel ulang. Dari setiap sampel tersebut kemudian dibangun model secara terpisah. Setiap model akan mempelajari data yang berbeda sehingga dapat menghasilkan pola dan prediksi yang berbeda pula. Setelah seluruh model selesai melakukan prediksi, hasil dari masing-masing model kemudian digabungkan untuk menghasilkan keputusan akhir. Pada klasifikasi, penggabungan biasanya dilakukan dengan voting, sedangkan pada regresi dapat dilakukan dengan menghitung nilai rata-rata dari seluruh prediksi model.

Tujuan utama Bagging adalah membantu mengurangi variance pada model sehingga hasil prediksi menjadi lebih stabil. Karena keputusan akhir tidak hanya bergantung pada satu model, kesalahan yang terjadi pada salah satu model dapat dikurangi atau ditutupi oleh hasil dari model lainnya. Dengan demikian, Bagging dapat membantu model agar tidak terlalu sensitif terhadap perubahan pada data training dan dapat meningkatkan kemampuan model dalam melakukan generalisasi terhadap data baru.

4.2  Random Forest

Random Forest merupakan salah satu metode Ensemble Learning yang dikembangkan dari konsep Bagging. Jika Bagging dapat menggunakan beberapa model, Random Forest secara khusus menggunakan banyak Decision Tree sebagai model dasar. Dalam proses pembentukannya, setiap Decision Tree menggunakan sampel data yang dipilih secara acak dari dataset. Selain data yang diacak, fitur atau atribut yang digunakan dalam pembentukan pohon juga dipilih secara acak. Hal tersebut membuat setiap pohon memiliki karakteristik dan pola yang berbeda meskipun berasal dari dataset yang sama.

Setelah seluruh Decision Tree menghasilkan prediksi, hasil dari pohon-pohon tersebut kemudian digabungkan menjadi satu keputusan akhir. Pada masalah klasifikasi, Random Forest biasanya menggunakan voting, yaitu kelas yang paling banyak dipilih oleh Decision Tree akan menjadi hasil prediksi akhir. Sementara pada regresi, hasil prediksi dari berbagai pohon dapat digabungkan menggunakan nilai rata-rata. Dengan menggunakan banyak Decision Tree serta melakukan pengacakan pada data dan fitur, Random Forest tidak terlalu bergantung pada satu pohon saja. Hal ini membuat hasil prediksi menjadi lebih stabil dan dapat membantu mengurangi risiko overfitting dibandingkan penggunaan satu Decision Tree yang terlalu kompleks.

4.3  Boosting

Boosting merupakan metode Ensemble Learning yang memiliki cara kerja berbeda dari Bagging dan Random Forest. Jika Bagging membangun beberapa model secara relatif independen, Boosting membangun model secara berurutan. Artinya, model pertama dibangun terlebih dahulu, kemudian hasil atau kesalahan dari model tersebut digunakan sebagai bahan pertimbangan dalam membangun model berikutnya. Model selanjutnya berusaha memperbaiki kesalahan yang masih dilakukan oleh model sebelumnya.

Dalam proses Boosting, data yang sulit diprediksi atau sebelumnya mengalami kesalahan akan mendapatkan perhatian lebih pada proses pembentukan model berikutnya. Proses tersebut dilakukan secara bertahap sehingga model-model yang dibangun selanjutnya terus berusaha memperbaiki kekurangan dari model sebelumnya. Pada akhirnya, seluruh model yang telah dibangun digabungkan untuk menghasilkan prediksi akhir. Dengan pendekatan tersebut, Boosting bertujuan membentuk kumpulan model yang secara bertahap menjadi lebih kuat dalam melakukan prediksi.

Secara sederhana, Bagging bekerja dengan membuat beberapa sampel data dan melatih beberapa model secara terpisah, kemudian menggabungkan hasilnya. Random Forest merupakan pengembangan dari Bagging yang menggunakan banyak Decision Tree serta melakukan pengacakan pada data dan fitur. Sementara itu, Boosting membangun model secara berurutan, di mana model berikutnya berusaha memperbaiki kesalahan yang dilakukan oleh model sebelumnya. Ketiga metode tersebut sama-sama menggunakan lebih dari satu model, tetapi memiliki cara yang berbeda dalam membentuk dan menggabungkan model untuk menghasilkan prediksi akhir.