Apa perbedaan antara Normalisasi dan Penskalaan Standar dalam Pembelajaran Mesin?

Rekayasa fitur dan visualisasi data adalah bagian penting dalam melaksanakan pembelajaran engine dan pekerjaan terkait analitik data. Karena memungkinkan pengembang untuk menganalisis data mereka dan menemukan berbagai outlier dan fitur yang berkorelasi negatif dengan fitur target. Idenya adalah untuk membuat dataset sebersih mungkin sehingga model Machine learning yang kuat dapat dibangun dan direplikasi oleh orang lain. Untuk melakukan aktivitas terkait rekayasa fitur ada banyak cara seperti menghapus kolom nilai nol, mengganti nilai tertentu di kolom dengan informasi yang relevan, menghapus outlier di dataset, mengubah tipe data kolom, dan banyak lagi.

Salah satu fitur tersebut dalam rekayasa adalah penskalaan metadata kolom dalam dataset kita. Ada dua jenis teknik penskalaan yang biasanya dilakukan oleh ilmuwan Data dan ini adalah Penskalaan Standar dan Normalisasi. Kedua teknik scaling ini walaupun bekerja dengan prinsip yang sama yaitu downscaling fitur tetapi memiliki mekanisme kerja yang berbeda dan menghasilkan jenis hasil yang berbeda. Mari kita bahas perbedaan antara kedua teknik penskalaan ini sehingga kita bisa lebih memahami kapan harus menggunakan apa:

Mengapa menggunakan Penskalaan dan Algoritma yang mana?

Pertama-tama, kita perlu memahami mengapa kita membutuhkan teknik scaling untuk diimplementasikan dalam dataset kita kan?? Jawaban untuk ini diberikan di bawah ini:

Algoritme pembelajaran engine yang bergantung pada penurunan gradien yang merupakan kurva parabola di mana fitur kita mencoba mencapai titik minimum global untuk memperbarui bobot dan mengurangi error atau fungsi biaya. Algoritma pembelajaran engine seperti Linear, regresi Logistik, dan algoritma Deep learning didasarkan pada konsep penurunan gradien jadi di sini kita perlu menskalakan data kita. Alasan pemilihan teknik penskalaan adalah ketika kita mencoba untuk mencapai titik minimum global dengan memperbarui bobot melalui propagasi balik, nilai fitur independen harus dapat dipisahkan secara linier dan tidak tersebar karena hal ini dapat menyebabkan kasus overfitting dan underfitting. Jadi, untuk membantu fitur-fitur ini terpisah secara linier, kita perlu menggunakan teknik penskalaan.

Dalam algoritma berbasis pohon, kasusnya benar-benar berbeda karena di sini tidak ada gunanya membuat garis yang paling cocok dan kemudian menghitung jarak fitur dari garis yang paling cocok dan memperbarui bobot yang sesuai. Jadi algoritme berbasis pohon tidak memerlukan penskalaan fitur dan ini berdampak buruk pada efisiensi model jika kita menerapkan teknik penskalaan di sini.

Normalisasi

Disini kita akan membahas apa sebenarnya yang dimaksud dengan Normalisasi?

Ini adalah teknik penskalaan yang memungkinkan user untuk menskalakan data mereka antara rentang 0 hingga 1. Teknik penskalaan ini harus digunakan ketika metadata fitur tidak mengikuti distribusi Gaussian yang tidak mematuhi kurva berbentuk lonceng di mana pusat titik s mean sama dengan 0 dan standar deviasi sama dengan 1. Jadi grafik dataset jika tidak mengikuti kurva Bell maka kita harus menggunakan teknik Normalisasi. Disebut juga teknik Min-Max Scaling dan umumnya digunakan dalam Convolutional Neural Networks yaitu analisis berbasis citra.

Rumus untuk Normalisasi diberikan sebagai;

X’ = ​​X – Xmin / Xmax – Xmin, di mana X adalah fitur independen, Xmin adalah nilai minimum fitur, dan Xmax adalah nilai maksimum fitur.

Standardisasi

Skor Z= X – /, di mana X adalah fitur independen, adalah rata-rata metadata fitur, dan adalah standar deviasi.

Ini adalah teknik yang digunakan ketika kumpulan data menyerupai kurva berbentuk lonceng ketika memvisualisasikannya melalui grafik dan engine terbang. Ini juga disebut Distribusi Normal Gaussian dimana semua fitur dipusatkan pada mean yang sama dengan 0 dan standar deviasi sama dengan 1. Teknik Standardisasi membantu user untuk menemukan outlier dalam dataset. Metode untuk menemukan outlier dan mengubah data ke skala standar disebut metode Z Score dan rumus untuk mencari Z score diberikan di bawah ini:

Penskalaan standar menemukan bahwa itu adalah aplikasi di banyak algoritme Pembelajaran Mesin seperti Regresi Logistik, Mesin Vektor Dukungan, Regresi Linier, dan banyak lagi.

Normalisasi vs Standardisasi

Meskipun kita telah menyebutkan perbedaan antara standardisasi dan normalisasi dalam kasus dunia nyata, itu tergantung pada user apa yang harus digunakan dan kapan karena tidak ada aturan keras dan cepat bahwa kita harus menggunakan teknik ini di sini dan tidak menghormati yang lain. Pilihannya benar-benar tidak bias dan user dapat menggunakan teknik dan menyempurnakan model mereka dan melihat perbedaan yang mereka dapatkan dalam skor kumpulan data.

Bagaimana cara menggunakan Normalisasi dengan Python?

dari Sklearn.preprocessing impor MinMaxScaler Norm= MinMaxScaler() X_new= Norm.fit_transform(X) print(X_new)

Bagaimana cara menggunakan Standardisasi dengan Python?

dari Sklearn.preprocessing import StandardScaler Scaler= StandardScaler() X_new= Scaler.fit_transform(X) print(X_new)