Data Preparation Dengan Normalization Dan Standardization
Data Preparation Dengan Normalization Dan Standardization
Standardization
Selain konversi data kategorik menjadi numerik, ada beberapa teknik lain
dalam data preparation. Teknik yang akan dibahas antara lain
membuang outlier, normalization, dan standardization.
Outlier Removal
Dalam statistik, outlier adalah sebuah nilai yang jauh berbeda dari kumpulan nilai
lainnya dan dapat mengacaukan hasil dari sebuah analisis statistik. Outlier dapat
disebabkan oleh kesalahan dalam pengumpulan data atau nilai tersebut benar ada
dan memang unik dari kumpulan nilai lainnya.
Apa pun alasan kemunculannya, Anda perlu tahu cara mengidentifikasi dan
memproses outlier. Ini adalah bagian penting dalam persiapan data di dalam
machine learning. Salah satu cara termudah untuk mengecek apakah terdapat
outlier dalam data kita adalah dengan melakukan visualisasi.
Dapat dilihat dengan jelas bahwa terdapat satu sampel yang jauh berbeda dengan
sampel-sampel lainnya. Setelah mengetahui bahwa di data kita terdapat outlier, kita
dapat mencari lalu menghapus sampel tersebut dari dataset.
Normalization
Normalization adalah salah satu teknik yang dipakai dalam data preparation. Tujuan
dari normalisasi adalah mengubah nilai-nilai dari sebuah fitur ke dalam skala yang
sama. Normalization memungkinkan kenaikan performa dan stabilitas dari sebuah
model machine learning.
Ketika membangun model seperti regresi linear, fitur penghasilan akan sangat
mempengaruhi prediksi dari model karena nilainya yang jauh lebih besar daripada
umur, walaupun tidak berarti fitur tersebut jauh lebih penting dari fitur umur.
Salah satu contoh dari normalization adalah min-max scaling di mana nilai-nilai
dipetakan ke dalam skala 0 sampai 1. SKLearn menyediakan library untuk
normalization
Pada Colab kita Import library MinMaxScaler dan masukkan data dari tabel
sebelumnya.
Pada cell selanjutnya kita buat sebuah objek MinMaxScaler dan panggil fungsi fit()
dan mengisi argumen data seperti potongan kode di bawah. Fungsi fit() dari objek
MinMaxSclaer adalah fungsi untuk menghitung nilai minimum dan maksimum pada
tiap kolom.
1. scaler = MinMaxScaler()
2. scaler.fit(data)
Sampai pada fungsi fit() ini, komputer baru menghitung nilai minimum dan
maksimum pada tiap kolom dan belum melakukan operasi scaler pada data.
Terakhir kita panggil fungsi transform() yang akan mengaplikasikan scaler pada
data, sebagai berikut.
1. print(scaler.transform(data))
Hasil dari kode di atas seperti ditunjukkan pada gambar
berikut.
Setiap nilai dari kolom gaji dan umur telah dipetakan pada skala yang sama seperti
di bawah ini.
Standardization
Standardization adalah proses konversi nilai-nilai dari suatu fitur sehingga nilai-nilai
tersebut memiliki skala yang sama. Z score adalah metode paling populer untuk
standardisasi di mana setiap nilai pada sebuah atribut numerik akan dikurangi
dengan rata-rata dan dibagi dengan standar deviasi dari seluruh nilai pada sebuah
kolom atribut.
1. scaler = preprocessing.StandardScaler().fit(data)
Terakhir, kita panggil fungsi transform untuk mengaplikasikan standard scaler pada
data. Untuk melihat hasil dari standard scaler kita tinggal memanggil objek scaler
yang telah kita buat sebelumnya. Kodenya sebagai berikut.
1. data = scaler.transform(data)
2. data
Untuk informasi lebih detail tentang standardization, silakan kunjungi tautan berikut.