Lompat ke konten Lompat ke sidebar Lompat ke footer

Normalisasi Data: Pengertian, Tujuan, dan Metodenya

Transformasi data adalah salah satu langkah dasar di bagian data preprocessing. Saat pertama kali mempelajari teknik penskalaan fitur (feature scaling), kita akan banyak berhadapan dengan istilah skala, standarisasi, dan normalisasi. 

Normalisasi adalah salah satu teknik persiapan data yang paling sering digunakan. Pada machine learning dan data mining, proses ini membantu kita mengubah nilai kolom numerik dalam dataset untuk menggunakan skala umum. 

Jika pernah berurusan dengan database, mungkin kita akrab dengan istilah "normalisasi data". Salah satu tantangan yang ada pada database adalah adanya atribut dengan unit, rentang, dan skala yang berbeda.

Menerapkan algoritma data mining ataupun machine learning pada data dengan rentang yang drastis dapat memberikan hasil yang kurang akurat. Karena itu dibutuhkan proses normalisasi data.

Normalisasi Data: Pengertian, Tujuan, dan Metodenya

Di artikel ini kita akan membahas mengenai apa itu normalisasi data dan metode yang digunakan pada proses ini. 

Daftar Isi

Pengertian Normalisasi Data 

Normalisasi data adalah elemen dasar data mining untuk memastikan record pada dataset tetap konsisten.

Dalam proses normalisasi diperlukan transformasi data atau mengubah data asli menjadi format yang memungkinkan pemrosesan data yang efisien.

Normalisasi Data: Pengertian, Tujuan, dan Metodenya
Sumber: freepik.com

Tujuan utama dari normalisasi data yakni menghilangkan redundansi data (pengulangan) dan menstandarisasi informasi untuk alur kerja data yang lebih baik. 

Normalisasi data digunakan untuk menskalakan data suatu atribut sehingga berada dalam rentang yang lebih kecil, seperti -1 hingga 1 atau 0 hingga 1. Hal ini umumnya berguna untuk algoritma klasifikasi. 

Teknik normalisasi data dalam data mining sangat membantu karena memberikan banyak manfaat, sebagai berikut:

  • Penerapan algoritma data mining menjadi lebih mudah
  • Algoritma data mining menjadi lebih efektif dan efisien
  • Data dapat diekstraksi dari database dengan lebih cepat
  • Data yang sudah dinormalisasi memungkinkan untuk dianalisis dengan metode tertentu

Mengapa Perlu Normalisasi Data pada Data Mining?

Saat berhadapan dengan dataset berjumah besar, normalisasi data biasanya penting untuk memastikan konsistensi dan kualitas data.

Normalisasi umumnya diperlukan apabila atribut-atribut dari dataset memiliki skala atau rentang yang berbeda. Misalnya terjadi ketimpangan dimana ada data yang terlampau tinggi dan ada yang terlampau rendah.

Konsekuensi jika tidak dilakukan normalisasi ialah dapat menyebabkan dilusi pada atribut data dengan skala yang lebih rendah karena atribut lain memiliki nilai pada skala yang lebih besar, padahal atribut tersebut juga memiliki derajat kepentingan yang sama.

Kesimpulannya, ketika terdapat banyak atribut namun atribut tersebut memiliki nilai pada skala yang berbeda, maka dapat menyebabkan model data yang buruk saat melakukan operasi data mining.

Jadi dataset tersebut perlu dinormalisasi untuk membawa semua atribut pada skala yang sama. Selain itu, teknik normalisasi data bermanfaat untuk memastikan data tetap konsisten.

Dapat dilihat pada gambar di atas yang menunjukkan sebuah tabel yang berisi atribut-atribut. Pada atribut salary dan year_of_experience memiliki skala yang berbeda dan karenanya atribut salary dapat prioritas tinggi dibanding dengan atribut year_of_experience pada model. 

Ketika ada banyak karakteristik, tetapi nilainya bervariasi atau atribut pada skala yang berbeda, model yang dibangun dapat menghasilkan prediksi yang tidak akurat saat melakukan proses data mining. Sehingga, perlu dilakukan normalisasi data untuk membuat atribut atau data berada pada skala yang sama.

Metode pada Normalisasi Data

Ada beberapa metode normalisasi data, tetapi pada artikel ini, kita akan membahas tiga teknik yang paling sering digunakan, yakni normalisasi Z-score, normalisasi min-max, dan normalisasi decimal scaling

1. Normalisasi Z-score

Normalisasi Z-score atau dikenal dengan standarisasi merupakan teknik yang mana nilai pada atribut akan dinormalisasi berdasarkan mean dan standar deviasi.

Inti dari teknik ini yakni mentransformasikan data dari nilai ke skala umum di mana angka rata-rata (mean) sama dengan nol dan standar deviasi adalah satu.  Berikut rumus dari normalisasi Z-score:

normalization z-score

standard deviasi

Normalisasi Z-score dalam data mining bermanfaat untuk menganalisis data yang memerlukan perbandingan nilai dengan nilai rata-rata. 

2. Normalisasi Min-max

Mana yang lebih mudah dipahami: perbedaan antara 500 dan 1000000 atau antara 0,5 dan 1? Data lebih mudah dipahami ketika rentang nilai minimum dan tertinggi lebih kecil.

Metode normalisasi min-max mengubah sebuah kumpulan data menjadi skala mulai dari 0 (min) hingga 1 (max). 

Data asli mengalami modifikasi linear dalam prosedur normalisasi data ini. Nilai minimum dan maksimum dari data diambil, dan setiap nilai diubah menggunakan rumus di bawah ini:

normalization min-max

Keterangan:

  • x adalah atribut data
  • min(x) dan max(x) adalah nilai absolut minimal dan maksimal dari x
  • x' adalah nilai lama dari setiap entri dalam data
  • new_max(x) dan new_min(x) adalah nilai min dan max dari range

3. Normalisasi Decimal Scaling

Pada data mining, decimal scaling merupakan cara lain untuk normalisasi. Metode ini bekerja dengan membulatkan bilangan desimal ke titik desimal terdekat.

Metode ini menormalkan data dengan menggeser titik desimal dari angka. Nilai data, v dinormalisasi menjadi v' dengan menggunakan rumus di bawah ini.

normalization decimal scaling

Keterangan

  • v' adalah nilai baru setelah dilakukan penskalaan desimal
  • v merupakan nilai atribut
  • j adalah bilangan bulat terkecil sehingga max(|v'|)<1

Standarisasi vs Normalisasi Min-max

Pada umumnya, salah satu metode dari normalisasi data yang digunakan yakni standarisasi (normalisasi z-score) dengan normalisasi min-max. Kedua metode ini telah dijelaskan, namun apa perbedaan kedua metode tersebut dan kapan baiknya digunakan?

Berbeda dengan standarisasi, kita akan memperoleh simpangan baku yang lebih kecil melalui proses normalisasi min-max. Sebagai contoh dapat ditunjukkan pada gambar di bawah ini:

Kumpulan data sebelum dinormalisasikan
Sumber: https://www.kdnuggets.com
Setelah dinormalisasikan
Sumber: https://www.kdnuggets.com
Visualisasi dari standarisasi dan nomalisasi min-max pada salary
Sumber: https://www.kdnuggets.com
visualisasi dari standarisasi dan nomalisasi min-max pada age
Sumber: https://www.kdnuggets.com

Dari grafik di atas, kita dapat dengan jelas melihat bahwa penerapan normalisasi min-max dalam dataset telah menghasilkan standar deviasi yang lebih kecil (baik dari salary dan age) daripada menggunakan metode standarisasi. Ini menyiratkan bahwa data lebih terkonsentrasi di sekitar rata-rata jika menskalakan data menggunakan normalisasi min-max. 

Akibatnya, jika data memiliki outlier, menormalkan data akan menskalakan sebagian besar data ke interval kecil, yang berarti semua fitur akan memiliki skala yang sama tetapi tidak menangani outlier dengan baik.  

Standarisasi lebih baik digunakan untuk data outlier, dan dalam banyak kasus, lebih disukai daripada normalisasi min-max.

Beberapa model machine learning didasarkan pada distance metric, misalnya K-Nearest Neighbour, SVM, dan Jaringan Saraf Tiruan. Normalisasi data sangat penting untuk model tersebut, terutama jika rentang fitur sangat berbeda. Jika tidak, fitur dengan range besar akan memiliki pengaruh yang besar dalam menghitung jarak.

Normalisasi min-max biasanya memungkinkan untuk mengubah data dengan skala yang bervariasi sehingga tidak ada dimensi tertentu yang mendominasi statistik, dan tidak perlu membuat asumsi kuat tentang distribusi data, seperti KNN dan JST.

Namun, normalisasi min-max tidak memperlakukan outlier dengan baik. Sebaliknya, standarisasi memungkinkan pengguna untuk menangani oulier dengan lebih baik dan memfasilitasi konvergensi untuk beberapa algoritma komputasi seperti gradient descent. 

AlgoritmaAlasan penerapan normalisasi data
1. K-Means ClusteringMenggunakan ukuran jarak euclidean
2. K-Nearest NeighbourUkur jarak pasangan sampel dan jarak ini dipengaruhi oleh satuan pengukuran
3. Principal Component Analysis (PCA)Mencoba mendapatkan fitur dengan varians maksimum
4. Jaringan Syaraf TiruanMenerapkan Gradient Descent
5. Gradient DescentPerhitungan theta menjadi lebih cepat setelah penskalaan fitur dan learning rate pada persamaan update Stochastic Gradient Descent adalah sama untuk setiap parameter

Catatan: Jika algoritma tidak berbasis jarak, normalisasi data tidak begitu penting, misalnya algoritma Naive Bayes, Linear Discriminanr Analysis, dan model berbasis Decision Tree (Gradient Boosting, Random Forest, dll).

Penutup

Sebagai kesimpulan, normalisasi data adalah metode pengorganisasian data dengan melakukan transformasi ke dalam skala yan generik untuk menghindari redundansi data dan fitur yang tidak diinginkan.

Normalisasi data sangat penting karena jika kumpulan datanya bagus yang mencakup banyak fitur tetapi tidak dinormalisasi, salah satu fitur dapat memengaruhi fitur yang lain. Maka dengan normalisasi data dapat menyelesaikan masalah ini.

Demikianlah penjelasan singkat mengenai metode-metode normalisasi data dalam data mining. Semoga informasi yang disajikan dapat bermanfaat dan menambah kazanah pengetahuan kita.

Apabila Anda tertarik dengan artikel serupa Anda dapat mengunjungi rubrik Data Science, atau membaca artikel lainnya mengenai 'Tools-tools keren untuk seorang data scientist'.

Salam!

Referensi:

Posting Komentar untuk "Normalisasi Data: Pengertian, Tujuan, dan Metodenya"