Persiapan data

Bagian ini meninjau langkah-langkah persiapan data yang paling relevan dengan pengelompokan dari Bekerja dengan data numerik di Kursus Singkat Machine Learning.

Dalam pengelompokan, Anda menghitung kesamaan antara dua contoh dengan menggabungkan semua data fitur untuk contoh-contoh tersebut menjadi nilai numerik. Opsi ini memerlukan fitur memiliki skala yang sama, yang dapat diselesaikan dengan menormalisasi, mentransformasi, atau membuat kuantil. Jika Anda ingin mengubah data tanpa memeriksa distribusinya, Anda dapat menetapkan secara default ke kuantil.

Menormalkan data

Anda dapat mengubah data untuk beberapa fitur ke skala yang sama dengan menormalisasi yang mengupload data.

Skor Z

Setiap kali Anda melihat {i>dataset <i}berbentuk kurang lebih seperti Distribusi Gauss, Anda harus menghitung skor z untuk data. Skor Z adalah jumlah deviasi standar sebuah nilai dari {i>mean<i}. Anda juga dapat menggunakan skor-z ketika {i>dataset<i} tidak cukup besar untuk kuantil.

Lihat Penskalaan skor Z untuk meninjau langkah-langkahnya.

Berikut adalah visualisasi dua fitur {i>dataset<i} sebelum dan sesudah penskalaan skor z:

Dua grafik yang membandingkan data fitur sebelum dan sesudah normalisasi
Gambar 1: Perbandingan data fitur sebelum dan sesudah normalisasi.

Dalam {i>dataset<i} yang tidak dinormalisasi di sebelah kiri, Fitur 1 dan Fitur 2, masing-masing grafik pada sumbu x dan y, tidak memiliki skala yang sama. Pada kiri, contoh merah tampak lebih dekat, atau lebih mirip, warna biru daripada kuning. Di sebelah kanan, setelah penskalaan skor-z, Fitur 1 dan Fitur 2 memiliki skala yang sama, dan warna merah {i>example<i} muncul lebih dekat dengan {i>example<i} berwarna kuning. Set data yang dinormalisasi memberikan ukuran kesamaan antar titik yang lebih akurat.

Transformasi log

Ketika set data secara sempurna sesuai dengan Distribusi hukum, dengan data sangat terkerap pada nilai terendah, gunakan transformasi log. Lihat Penskalaan log untuk meninjau langkah-langkahnya.

Berikut adalah visualisasi {i>dataset<i} power-law sebelum dan sesudah transformasi log:

Diagram batang yang sebagian besar datanya berada di tingkat bawah
Gambar 2: Distribusi hukum kekuasaan.
Grafik yang menunjukkan distribusi normal (Gaussia)
Gambar 3: Transformasi log pada Gambar 2.

Sebelum penskalaan log (Gambar 2), contoh merah tampak lebih mirip dengan kuning. Setelah penskalaan log (Gambar 3), warna merah akan lebih mirip dengan biru.

Kuantile

Pengelompokan data menjadi kuantil berfungsi dengan baik ketika {i>dataset<i} tidak sesuai pada distribusi yang diketahui. Ambil {i>dataset<i} ini, misalnya:

Grafik yang menunjukkan distribusi data sebelum pra-pemrosesan apa pun
Gambar 4: Distribusi yang tidak dapat dikategorikan sebelum pra-pemrosesan apa pun.

Secara intuitif, dua contoh akan lebih mirip jika hanya ada sedikit contoh di antara terlepas dari nilainya, dan lebih tidak mirip jika ada banyak contoh di antara mereka. Visualisasi di atas menyulitkan untuk melihat total jumlah contoh yang berada di antara merah dan kuning, atau antara merah dan biru.

Pemahaman tentang kesamaan ini dapat ditunjukkan dengan membagi {i>dataset<i} menjadi kuantil, atau interval yang masing-masing berisi jumlah contoh yang sama, dan menetapkan indeks kuantil untuk setiap contoh. Lihat Pengelompokan kuantil untuk meninjau langkah-langkahnya.

Berikut adalah distribusi sebelumnya yang dibagi menjadi beberapa kuantil, yang menunjukkan bahwa merah adalah satu kuantil dari kuning dan tiga kuantil dari biru:

Grafik yang menampilkan data setelah konversi
  menjadi kuantil. Garis mewakili 20 interval.]
Gambar 5: Distribusi pada Gambar 4 setelah konversi menjadi 20 kuantil.

Anda dapat memilih berapa pun \(n\) kuantil. Namun, untuk kuantil untuk mewakili data dasar secara bermakna, {i>dataset<i} Anda harus memiliki \(10n\) contoh. Jika Anda tidak memiliki cukup data, lakukan normalisasi.

Menguji pemahaman Anda

Untuk pertanyaan berikut, asumsikan Anda memiliki cukup data untuk membuat kuantil.

Pertanyaan pertama

Sebuah plot yang menampilkan tiga distribusi data
Bagaimana seharusnya Anda memproses distribusi data yang ditunjukkan dalam contoh grafik?
Membuat kuantil.
Benar. Karena distribusi tersebut tidak sesuai dengan distribusi data standar, Anda harus memilih menciptakan kuantil.
Lakukan normalisasi.
Anda biasanya menormalisasi data jika:
  • Distribusi data adalah Gaussian.
  • Anda memiliki beberapa wawasan tentang apa yang direpresentasikan oleh data secara aktual yang menunjukkan bahwa data tidak boleh diubah secara nonlinier.
Tidak ada kasus yang berlaku di sini. Distribusi data tidak menggunakan pengaturan Gaussiana karena tidak simetris. Anda tidak tahu nilai-nilai ini tampilkan di dunia nyata.
Transformasi log.
Ini bukan distribusi kekuatan hukum yang sempurna, jadi jangan gunakan log transformasi.

Pertanyaan kedua

Sebuah plot yang menampilkan tiga distribusi data
Bagaimana Anda akan memproses distribusi data ini?
Lakukan normalisasi.
Benar. Ini adalah distribusi Gaussian.
Membuat kuantil.
Salah. Karena ini adalah distribusi Gaussian, maka transformasi adalah normalisasi.
Transformasi log.
Salah. Hanya terapkan transformasi log ke distribusi power-law.

Data tidak ada

Jika {i>dataset<i} Anda memiliki contoh tanpa nilai untuk fitur tertentu, tetapi contoh-contoh itu jarang terjadi, Anda dapat menghapus contoh-contoh ini. Jika contoh-contoh tersebut sering terjadi, Anda dapat menghapus fitur itu sepenuhnya, atau Anda dapat memprediksi nilai yang hilang dari contoh lain menggunakan mesin learning tradisional. Sebagai contoh, Anda dapat menyiratkan data numerik yang hilang menggunakan model regresi yang dilatih dengan data fitur yang ada.