Machine Learning “Hello World” – Part 02 – Loading dan Summary
Pada tutorial ini kita akan membahas bagaimana python dapat digunakan untuk melakukan pembangunan aplikasi machine learning. Untuk meningkatkan kepercayaan diri kita perlu melihat pengunaan python secara end to end. Artinya kita mengabungkan semua unsur yang diperlukan dalam machine learning. Seperti loading data, menampilkan descriptive statistics dan summary, sedikit visualization dan membandingkan 6 machine learning model.
Machine learning merupakan experimental science, jadi kita harus mencoba coba teknik yang menghasilkan hasil yang cukup akurat dan dapat diterima. Jadi tidak ada the best machine learning algorithm, semuanya tergantung hasil dari experiment kita, feature (attribute) yg digunakan sebagai input dan juga setting dari parameter yang digunakan.
Project kecil yang bisa dijadikan sebagai awal adalah mengklasifikasikan atau mengkategorikan jenis bunga iris. Iris dataset adalah dataset yang bagus untuk project pertama dikarenakan dataset tersebut sudah dipahami dengan baik.
Attribute nya semuanya adalah numeric sehingga kita tidak perlu melakukan feature engineering terlalu dalam. Kita tidak perlu melakukan standarisasi atau normalisasi terhadap data numeric karena datanya memiliki scala yang sama dan unit yang sama.
Hanya memiliki 4 attribute ( feature ) dan 150 rows ( instance ) sehingga bisa di load semuanya ke memory.
Dalam tutorial ini kita akan melakukan project kecil secara end to end. Berikut adalah overview dari hal-hal yang akan kita lakukan
- Loading dataset
- Melakukan summary terhadap dataset
- Memvisualisasikan dataset
- Melakukan evaluasi terhadap algorithm
- Melakukan prediksi terhadap dataset
Pahami setiap step by step dan sangat di harapkan anda mengetikkan semua command sendiri sehingga mendapatkan feel dari pemrograman machine learning.
Mari kita masuk ke tutorial pertama
Import Library
Pertama sekali yang kita lakukan adalah melakukan import terhadap semua library yang dibutuhkan.
Pastikan semuanya dapat di load tanpa error. Jika terjadi error pastikan anda telah menginstall pandas dan juga scipy dari package manager conda.
Loading Dataset
Iris dataset dapat di download dari site berikut ini.
https://archive.ics.uci.edu/ml/machine-learning-databases/iris/iris.data
Simpan file tersebut dengan nama iris.data.csv.
Kita akan menggunakan pandas untuk me load data. Kita juga akan menggunakan pandas untuk melakukan eksplorasi deskriptif statistics dan visualization. Perhatikan bahwa kita mencantumkan nama untuk setiap column pada saat me load data. Ini akan membantu kita dalam mengekspolore data kemudian.
Explorasi Dataset
Sekarang saatnya kita melihat isi dan struktur dari data yang baru saja kita load. Hal-hal yang akan kita lihat adalah
- Dimensi dari dataset
- Keseluruhan data
- Statistical Summary dari semua attribute
- Breakdown dari data berdasarkan class variable.
Tenang saja, masing-masing hanya butuh eksekusi satu command saja. Dan command tersebut akan berguna untuk project-project machine learning berikutnya.
Dimensi dari Dataset
Kita dapat melihat berapa instance ( baris ) yang ada dan berapa banyak attribute ( kolum ) yang dipunyai oleh data dengan property shape pada pandas.
Dari sini kita dapat mengetahui bahwa ada 150 baris atau instance dan 5 attribute atau feature.
Struktur data.
Ada baiknya jika kita melihat-lihat bagaimana sebenarnya bentuk data dan formatnya. Kita dapat mengambil sample beberapa data dari atas.
Dari sini anda dapat mengambil beberapa kesimpulan dengan melihat 20 row pertama. Semua attribute adalah numeric, dan class yng akan dikategorikan adalah string. Kita juga melihat bahwa semuanya tidak ada yang mengandung nilai null. Hal ini akan kita pastikan lagi lebih jauh di explorasi berikutnya.
Statistical Summary
Sekarang kita dapat melihat summary dari setiap attribute. Hal ini mencakup count, mean, min dan max value juga percentile.
Disini kita dapat melihat bahwa semua attribute yang berisi numerik atau angka memiliki scale yang sama dan diantara 0 sampai dengan 8 centimeters. Kita juga dapat melihat count nya sama semua yaitu 150 dimana hal ini menunjukkan bahwa tidak ada missing value atau null value.
Class Distribution
Mari kita melihat jumlah dari instance ( baris ) yang terdapat pada setiap kelas. Kita dapat melihat ini dengan nilai absolute.
Kita dapat melihat bahwa semua kelas memiliki jumlah instance yang sama. 33% dari dataset.
Pada tutorial ini kita telah melakukan loading data dan summary terhadap data set. Pada pertemuan berikutnya kita akan memvisualisasikan dataset dengan matplotlib di python.
Happy exploring
Cheers