Klasifikasi Bermain Tennis dengan Decision Tree

Naufal Fawwazi

Sosial Media


2 orang menyukai ini
Suka

Summary

Portofolio ini berisikan project implementasi Machine Learning pada sub materi Klasifikasi. Dataset yang digunakan diambil dari Kaggle yang merupakan kemungkinan seseorang bermain tennis. Algoritma klasifikasi yang digunakan pada project ini adalah algoritma Decision Tree. Adapula library yang diperlukan pada project ini yaitu pandas dan scikit-learn.

Description

Saya menggunakan Jupyter Notebook sebagai media pemrograman bahasa Python untuk mengerjakan Tugas Akhir pada course ini. Adapun dataset yang saya gunakan adalah dataset mengenai kemungkinan seseorang kemungkinan seseorang bermain tennis. Dataset ini saya dapatkan melalui Kaggle pada tautan berikut: https://www.kaggle.com/datasets/fredericobreno/play-tennis

Disini saya melakukan klasifikasi dengan menggunakan algoritma Decision Tree. Sebelum melakukan proses koding, saya meletakkan dataset saya pada satu directory dengan file code saya.

 

Langkah pertama yang saya lakukan yaitu melakukan import library yang akan digunakan pada klasifikasi kali ini

Kemudian saya mulai membaca dataset yang telah diunduh yang bernama play_tennis.csv serta menampilkan 5 data teratas menggunakan keyword head()

Maka, output dari 5 data teratas menggunakan keyword head() adalah sebagai berikut

Lalu saya menentukan fitur prediktor yang secara umum diwakilkan oleh variabel X serta fitur target diwakilkan oleh variabel y

Dikarenakan adanya kolom day yang merepresentasikan hari secara sekuensial (D1, D2, D3,…) dan dirasa kurang diperlukan dalam klasifikasi kali ini, maka saya hapuskan kolom day

Kemudian saya juga melakukan perubahan value pada kolom play, dimana pada kolom ini awalnya berisikan value yes dan no, saya ubah menjadi 1 dan 0

Berikut adalah hasil dari 5 data teratas menggunakan keyword head() setelah dilakukan penghapusan kolom day serta perubahan value pada kolom play

Kini saya melakukan teknik one-hot encoding supaya data kategorik yang berada pada dataset play_tennis.csv berubah menjadi data numerik

Maka akan menjadi seperti ini ketika ditampilkan 5 data teratas menggunakan keyword head()

Setelah itu, saya akan menghapus 4 fitur asli dari 4 fitur tersebut karena akan saya gantikan dengan fitur yang telah diolah menggunakan one-hot encoding

Sesudah menghapus 4 fitur asli, saya gabungkan fitur dari hasil one-hot encoding dengan fitur target ke dalam dataset 

Dan untuk hasil penggabungan dapat dilihat sebagai berikut

Kemudian saya melakukan teknik splitting, yaitu pemisahan antara data training dengan data testing. Disini saya memberikan test size sebesar 20% serta 80% adalah data training

Lalu saya melakukan pemodelan dengan algoritma Decision Tree (ID3) terhadap dataset yang saya miliki berdasarkan kriteria entropi

Disini saya melakukan pengujian terhadap data testing yang sudah disiapkan dan disimpan ke dalam variabel y_pred

Setelah melakukan pengujian, saya menghitung nilai akurasi dari model 

Dan didapatkan hasil akurasi sebagai berikut

Text

Description automatically generated with medium confidence

Kesimpulan dari klasifikasi terhadap kemungkinan seseorang bermain Tennis menggunakan algoritma Decision Tree yaitu memiliki akurasi sebesar 0.66 atau 66%

Informasi Course Terkait
  Kategori: Artificial Intelligence
  Course: Machine Learning For Beginner