Machine Learning “Hello World” — Part 04 — Evaluasi Algoritma Learning

Welly Tambunan
sarccom
Published in
3 min readApr 19, 2017

Ini adalah waktunya untuk masuk ke pertunjukan sebenarnya dari machine learning.

machine learning

Kita akan membuat model dari data yang ada dan melakukan estimasi terhadap akurasi dari data yang belum diketahui sebelumnya. Berikut langkah-langkah nya

  1. Memisahkan dataset untuk validasi
  2. Membuat test untuk 10 fold cross validation
  3. Membangun 6 model untuk memprediksi spesies bunga dari pengukuran bunga
  4. Memilih model yang terbaik
  5. Melakukan prediksi dengan model yang terbaik

Dataset untuk validasi

Mari kita mulai membagi dataset untuk validasi dan untuk training. Kita perlu mengetahui apakah model yang akan kita buat adalah model yang baik. Kemudian kita akhirnya akan menggunakan metode statistik untuk melakukan estimasi akurasi dari model terhadap data yang belum diketahui sebelumnya. Kita akan membagi dataset tersebut menjadi dua bagian 80% digunakan untuk training model dan 20% digunakan untuk validasi.

split out validation dataset

Sekarang kita telah memiliki data untuk training di X_train dan Y_train untuk membuat mode dan X_validation dan Y_validation yang dapat kita gunakan untuk memvalidasi model yang dibuat.

Kita akan menggunakan teknik 10-fold cross validation untuk melakukan estimasi akurasi. Kita akan membagi dataset kita menjadi 10 bagian, 9 untuk training dan 1 lagi untuk test. Kita akan melakukan kombinasi train-test split. Kita akan menggunakan akurasi matrix untuk melakukan evaluasi model. Ini adalah rasio dari jumlah prediksi yang benar dibagi dengan jumlah instance dari dataset dikali dengan 100 untuk mendapatkan persentasi. Kita akan menggunakan scoring variable dalam membangun dan mengevaluasi setiap model.

Membangun model

Kita tidak tahu algoritma machine learning mana yang terbaik untuk masalah iris ini dan konfigurasi apa yang tepat. Seperti yang sebelumnya kita sampaikan bahwa machine learning dan data mining adalah experimental science. Jadi kita perlu mencoba-coba algoritma dan menentukan mana yang cocok berdasarkan statistik.

Mari kita melakukan evaluasi terhadap 6 algoritma yang berbeda

  • Logistic Regression (LR)
  • Linear Discriminant Analysis ( LDA ).
  • k-Nearest Neighbors ( KNN )
  • Classification dan Regression Tree ( CART )
  • Gaussian Naive Bayes ( NB )
  • Support Vector Machine ( SVM )

List di atas merupakan kombinasi yang bagus antara algoritma Linear sederhana ( LR and LDA ) dan juga non linear ( KNN, CART, NB, SVM ). Mari kita evaluasi ke enam algoritma tersebut.

evaluasi 6 algoritma dengan k fold cross validation

Sekarang kita sudah dapat menentukan model mana yang akan kita gunakan. Kita dapat melihat bahwa KNN memiliki akurasi yang terbaik. Sekarang kita akan melakukan validasi terhadap testing data set yang telah kita sisihkan sebelumnya.

90% accuracy

Kita mendapatkan akurasi 90% ! Good progress.

Confusion matrix juga menunjukkan bahwa ada 3 error yang tercipta.

confusion matrix

Untuk mengetahui lebih dalam mengenai confusion matrix kita dapat melihat pada tutorial berikut.

http://www.dataschool.io/simple-guide-to-confusion-matrix-terminology/

https://www.coursera.org/learn/ml-foundations/lecture/pcbUq/false-positives-false-negatives-and-confusion-matrices

Selamat anda sudah melakukan end to end machine learning project. Anda juga mendapatkan accuracy yang cukup baik. Sekarang kita dapat beranjak menuju tutorial yang lebih menantang lagi. Bagaimana memulai kompetisi di Kaggle !!

Ikuti terus seri tutorial pada blog ini.

Cheers

--

--