ALGORITMA SUPERVISED LEARNING

 


ALGORITMA SUPERVISED LEARNING

Apa itu Algoritma Supervised Learning ?



Algoritma supervised learning adalah sebuah metode dalam pembelajaran machine learning di mana model dilatih menggunakan data yang telah dilabeli. Ini berarti setiap contoh data pelatihan memiliki input serta output yang diinginkan. Tujuan dari algoritma ini adalah mempelajari sebuah fungsi yang dapat memetakan input ke output berdasarkan contoh-contoh tersebut.

Proses Supervised Learning

  1. Mengumpulkan Data : Mengumpulkan dataset yang mencakup contoh-contoh input beserta output yang benar.
  2. Membagi Dataset : Membagi dataset menjadi set pelatihan (training set) dan set pengujian (test set).
  3. Melatih Model : Menggunakan set pelatihan untuk melatih model dengan cara menyesuaikan parameter model agar dapat meminimalkan kesalahan antara prediksi dan output yang benar.
  4. Evaluasi Model : Menggunakan set pengujian untuk mengevaluasi perfoma model dan memastikan bahwa model tidak hanya menghafal data pelatihan tetapi juga dapat melakukan generalisasi dengan baik pada data baru.
  5. Penggunaan Model : Setelah model memiliki perfoma yang memuaskan model tersebut dapat digunakan untuk memprediksi ouput dari input baru.

Jenis Algoritma Supervised Learning.

Dalam algoritma supervised learning, ada dua jenis utama tugas yang bisa dilakukan, yaitu :

1. Classification / Klasifikasi

Klasifikasi adalah salah satu tugas dalam pembelajaran mesin (machine learning) yang bertujuan untuk memprediksi label atau kategori dari data input. Dalam klasifikasi, model dilatih menggunakan data yang telah diberi label dengan tujuan agar model dapat mengelompokkan data baru ke dalam salah satu dari beberapa kategori atau kelas yang telah ditentukan.

2. Regression / Prediksi

Prediksi dalam konteks supervised learning mengacu pada kemampuan model yang telah dilatih untuk mengambil data input baru dan menghasilkan output yang sesuai berdasarkan pola yang dipelajari dari data pelatihan. Output ini bisa berupa label (dalam kasus klasifikasi) atau nilai numerik (dalam kasus regresi).

PREDIKSI

Langkah - Langkah dalam Supervised Learning untuk Prediksi

  1. Pengumpulan Data: Mengumpulkan dataset yang relevan dengan masalah yang ingin diselesaikan. Dataset ini harus mencakup contoh-contoh input serta output yang benar.
  2. Pra-pemrosesan Data: Membersihkan dan mempersiapkan data, termasuk menangani nilai yang hilang, melakukan normalisasi, dan membagi dataset menjadi set pelatihan (training set) dan set pengujian (test set).
  3. Pemilihan Algoritma: Memilih algoritma supervised learning yang sesuai untuk masalah yang dihadapi (misalnya, logistic regression, decision tree, random forest, dll.).
  4. Pelatihan Model: Menggunakan set pelatihan untuk melatih model dengan cara menyesuaikan parameter model agar dapat meminimalkan kesalahan antara prediksi dan output yang benar.
  5. Evaluasi Model: Menggunakan set pengujian untuk mengevaluasi performa model, memastikan bahwa model dapat melakukan generalisasi dengan baik pada data baru.
  6. Prediksi: Setelah model terlatih dan dievaluasi, model tersebut digunakan untuk memprediksi output dari input baru.

Contoh Aplikasi Prediksi dalam Supervised Laerning

  1. Prediksi Harga Rumah: Menggunakan fitur seperti luas bangunan, jumlah kamar tidur, dan lokasi untuk memprediksi harga rumah.
  2. Deteksi Penipuan: Menggunakan data transaksi untuk memprediksi apakah transaksi tertentu adalah penipuan atau bukan.
  3. Prediksi Kegagalan Mesin: Menggunakan data sensor dari mesin untuk memprediksi kapan mesin mungkin mengalami kegagalan.
  4. Klasifikasi Penyakit: Menggunakan data medis pasien untuk memprediksi apakah pasien memiliki penyakit tertentu.
  5. Analisis Sentimen: Menggunakan teks ulasan pelanggan untuk memprediksi apakah ulasan tersebut positif, negatif, atau netral.

Algoritma Pada Supervised Learning Prediksi

  1. Linear Regression: Memodelkan hubungan antara variabel dependen dan satu atau lebih variabel independen menggunakan garis lurus.
  2. Ridge Regression: Variasi dari linear regression yang menambahkan penalti terhadap besarnya koefisien untuk mencegah overfitting.
  3. Lasso Regression: Mirip dengan Ridge Regression, namun menggunakan penalti L1 yang dapat menyebabkan beberapa koefisien menjadi nol, efektif untuk feature selection.
  4. Elastic Net: Kombinasi dari Ridge dan Lasso Regression, menggunakan kedua jenis penalti L1 dan L2.
  5. Polynomial Regression: Memperluas linear regression dengan menggunakan polinomial untuk memodelkan hubungan non-linier antara variabel dependen dan independen.
  6. Support Vector Regression (SVR): Menggunakan prinsip yang sama dengan SVM, namun untuk tugas regresi dengan menggunakan margin yang dapat disesuaikan.
  7. Decision Tree Regression: Membagi data menjadi subset yang lebih kecil menggunakan aturan keputusan berbasis fitur, di mana setiap simpul merupakan keputusan untuk fitur tertentu.
  8. Random Forest Regression: Kombinasi dari beberapa decision tree untuk meningkatkan akurasi dan mengurangi overfitting.
  9. AdaBoost Regression: Meningkatkan performa dengan menggabungkan beberapa model regresi yang lemah menjadi satu model yang kuat melalui penekanan pada kesalahan sebelumnya.
  10. Gradient Boosting Regression: Mirip dengan AdaBoost namun menggunakan pendekatan gradien untuk mengoptimalkan model.
  11. XGBoost Regression: Implementasi efisien dari gradient boosting yang dioptimalkan untuk kecepatan dan kinerja.
  12. LightGBM Regression: Variasi dari gradient boosting yang dioptimalkan untuk kecepatan dan penggunaan memori.
  13. CatBoost Regression: Gradient boosting yang dirancang khusus untuk menangani data kategorikal dengan lebih baik.
  14. K-Nearest Neighbors Regression (KNN Regression): Mengestimasi nilai target berdasarkan rata-rata atau median dari K tetangga terdekat di ruang fitur.
  15. Bayesian Ridge Regression: Variasi dari ridge regression yang mengasumsikan koefisien sebagai variabel acak dengan distribusi probabilitas tertentu.
  16. Gaussian Process Regression: Pendekatan non-parametrik yang menggunakan fungsi kernel untuk menentukan hubungan antar data.
  17. Huber Regression: Robust terhadap outlier dengan menggunakan fungsi loss Huber yang menggabungkan MSE dan MAE.
  18. RANSAC Regression: Robust terhadap outlier dengan membangun beberapa model dan memilih yang paling sesuai dengan mayoritas data.
  19. Theil-Sen Estimator: Robust terhadap outlier dengan menghitung median dari semua kemiringan garis antara titik data.
  20. Quantile Regression: Memodelkan hubungan antara variabel dengan memprediksi quantile tertentu dari distribusi target, bukan nilai rata-rata.
  21. Principal Component Regression (PCR): Menggunakan PCA untuk mengurangi dimensi data sebelum menerapkan regresi linier.
  22. Partial Least Squares Regression (PLSR): Mirip dengan PCR, namun memperhitungkan variasi antara variabel dependen dan independen saat mengurangi dimensi.
  23. Least Angle Regression (LARS): Algoritma untuk regresi linear yang efisien untuk high-dimensional data, mirip dengan Lasso.
  24. Neural Network Regression: Menggunakan jaringan saraf tiruan untuk memodelkan hubungan non-linear yang kompleks antara input dan output.
  25. Elastic Net Regression: Kombinasi penalti L1 dan L2 pada regresi linier, cocok untuk high-dimensional data.
  26. Generalized Linear Models (GLM): Memperluas linear regression untuk mendukung distribusi error yang berbeda seperti binomial, poisson, dll.
  27. Quantile Random Forests: Variasi dari random forest yang mampu memprediksi quantile dari distribusi target.
  28. MARS (Multivariate Adaptive Regression Splines): Algoritma yang membangun model non-linear dengan menggabungkan piecewise linear regression.
  29. Bagging Regressor: Menggunakan bootstrap aggregating untuk meningkatkan stabilitas dan akurasi model regresi.
  30. Extra Trees Regressor: Mirip dengan random forest namun lebih acak dalam pemilihan split poin untuk mengurangi varians.

Komentar

Postingan Populer