Apa itu Pra-pemrosesan Data? 4 Langkah Penting untuk Melakukannya dengan Benar
Diterbitkan: 2021-08-06Data dunia nyata dalam banyak kasus tidak lengkap, berisik, dan tidak konsisten.
Dengan generasi data yang tumbuh secara eksponensial dan meningkatnya jumlah sumber data yang heterogen, kemungkinan pengumpulan data yang anomali atau salah cukup tinggi.
Tetapi hanya data berkualitas tinggi yang dapat menghasilkan model yang akurat dan, pada akhirnya, prediksi yang akurat. Oleh karena itu, sangat penting untuk memproses data untuk kualitas terbaik. Langkah pemrosesan data ini disebut data preprocessing , dan ini adalah salah satu langkah penting dalam ilmu data, pembelajaran mesin, dan kecerdasan buatan.
Apa itu pra-pemrosesan data?
Pra-pemrosesan data adalah proses mengubah data mentah menjadi format yang berguna dan dapat dipahami. Data dunia nyata atau mentah biasanya memiliki format yang tidak konsisten, kesalahan manusia, dan bisa juga tidak lengkap. Prapemrosesan data menyelesaikan masalah tersebut dan membuat kumpulan data lebih lengkap dan efisien untuk melakukan analisis data.
Ini adalah proses penting yang dapat memengaruhi keberhasilan penambangan data dan proyek pembelajaran mesin. Itu membuat penemuan pengetahuan dari kumpulan data lebih cepat dan pada akhirnya dapat memengaruhi kinerja model pembelajaran mesin.
45%
waktu seorang ilmuwan data dihabiskan untuk tugas-tugas persiapan data.
Sumber: Datanami
Dengan kata lain, data preprocessing adalah mengubah data menjadi bentuk yang dapat dengan mudah dikerjakan oleh komputer. Itu membuat analisis atau visualisasi data lebih mudah dan meningkatkan akurasi dan kecepatan algoritme pembelajaran mesin yang melatih data.
Mengapa pra-pemrosesan data diperlukan?
Seperti yang Anda ketahui, database adalah kumpulan titik data. Titik data disebut juga observasi, sampel data, kejadian, dan catatan.
Setiap sampel dideskripsikan menggunakan karakteristik yang berbeda, juga dikenal sebagai fitur atau atribut . Pra-pemrosesan data sangat penting untuk membangun model secara efektif dengan fitur-fitur ini.
Banyak masalah dapat muncul saat mengumpulkan data. Anda mungkin harus menggabungkan data dari sumber data yang berbeda, yang mengarah ke format data yang tidak cocok, seperti integer dan float.
Tip: Gunakan kemampuan otomatisasi dari perangkat lunak pembelajaran mesin dan ucapkan selamat tinggal pada tugas-tugas yang membosankan itu.
Jika Anda menggabungkan data dari dua atau lebih kumpulan data independen, bidang gender mungkin memiliki dua nilai yang berbeda untuk pria: pria dan pria. Demikian juga, jika Anda menggabungkan data dari sepuluh kumpulan data yang berbeda, bidang yang ada di delapan kumpulan data mungkin tidak ada di dua lainnya.
Dengan pra-pemrosesan data, kami membuatnya lebih mudah untuk ditafsirkan dan digunakan. Proses ini menghilangkan inkonsistensi atau duplikasi dalam data, yang sebaliknya dapat mempengaruhi akurasi model secara negatif. Pra-pemrosesan data juga memastikan bahwa tidak ada nilai yang salah atau hilang karena kesalahan manusia atau bug. Singkatnya, menggunakan teknik pra-pemrosesan data membuat database lebih lengkap dan akurat.
Karakteristik data berkualitas
Untuk algoritma pembelajaran mesin, tidak ada yang lebih penting daripada kualitas data pelatihan. Performa atau akurasinya bergantung pada seberapa relevan, representatif, dan komprehensif data tersebut.
Sebelum melihat bagaimana data diproses sebelumnya, mari kita lihat beberapa faktor yang berkontribusi terhadap kualitas data.
- Akurasi: Seperti namanya, akurasi berarti informasi itu benar. Informasi kedaluwarsa, kesalahan ketik, dan redundansi dapat memengaruhi keakuratan kumpulan data.
- Konsistensi: Data seharusnya tidak memiliki kontradiksi. Data yang tidak konsisten dapat memberi Anda jawaban yang berbeda untuk pertanyaan yang sama.
- Kelengkapan: Dataset tidak boleh memiliki bidang yang tidak lengkap atau tidak memiliki bidang kosong. Karakteristik ini memungkinkan ilmuwan data untuk melakukan analisis yang akurat karena mereka memiliki akses ke gambaran lengkap tentang situasi yang dijelaskan oleh data.
- Validitas: Kumpulan data dianggap valid jika sampel data muncul dalam format yang benar, berada dalam rentang yang ditentukan, dan memiliki jenis yang tepat. Kumpulan data yang tidak valid sulit diatur dan dianalisis.
- Ketepatan waktu: Data harus dikumpulkan segera setelah peristiwa yang diwakilinya terjadi. Seiring berjalannya waktu, setiap kumpulan data menjadi kurang akurat dan berguna karena tidak mewakili kenyataan saat ini. Oleh karena itu, aktualitas dan relevansi data merupakan karakteristik kualitas data yang kritis.
Empat tahap pra-pemrosesan data
Untuk model pembelajaran mesin, data adalah makanan ternak.
Serangkaian pelatihan yang tidak lengkap dapat menyebabkan konsekuensi yang tidak diinginkan seperti bias, yang mengarah pada keuntungan atau kerugian yang tidak adil bagi sekelompok orang tertentu. Data yang tidak lengkap atau tidak konsisten juga dapat berdampak negatif pada hasil proyek data mining. Untuk mengatasi permasalahan tersebut digunakan proses preprocessing data.
Ada empat tahap pengolahan data: pembersihan, integrasi, reduksi, dan transformasi.
1. Pembersihan data
Pembersihan atau pembersihan data adalah proses pembersihan kumpulan data dengan menghitung nilai yang hilang, menghapus outlier, mengoreksi titik data yang tidak konsisten, dan menghaluskan data yang derau. Intinya, motif di balik pembersihan data adalah untuk menawarkan sampel yang lengkap dan akurat untuk model pembelajaran mesin.
Teknik yang digunakan dalam pembersihan data khusus untuk preferensi ilmuwan data dan masalah yang mereka coba selesaikan. Berikut sekilas masalah yang diselesaikan selama pembersihan data dan teknik yang terlibat.
Nilai yang hilang
Masalah nilai data yang hilang cukup umum. Ini mungkin terjadi selama pengumpulan data atau karena beberapa aturan validasi data tertentu. Dalam kasus seperti itu, Anda perlu mengumpulkan sampel data tambahan atau mencari kumpulan data tambahan.
Masalah nilai yang hilang juga dapat muncul saat Anda menggabungkan dua atau lebih kumpulan data untuk membentuk kumpulan data yang lebih besar. Jika tidak semua bidang ada di kedua kumpulan data, lebih baik hapus bidang tersebut sebelum digabungkan.
Berikut adalah beberapa cara untuk memperhitungkan data yang hilang:
- Isi nilai yang hilang secara manual. Ini bisa menjadi pendekatan yang membosankan dan memakan waktu dan tidak direkomendasikan untuk kumpulan data yang besar.
- Manfaatkan nilai standar untuk menggantikan nilai data yang hilang. Anda dapat menggunakan konstanta global seperti "tidak diketahui" atau "T/A" untuk mengganti nilai yang hilang. Meskipun pendekatan langsung, itu tidak sangat mudah.
- Isi nilai yang hilang dengan nilai yang paling mungkin. Untuk memprediksi nilai kemungkinan, Anda dapat menggunakan algoritme seperti regresi logistik atau pohon keputusan.
- Gunakan tendensi sentral untuk menggantikan nilai yang hilang. Tendensi sentral adalah kecenderungan suatu nilai untuk mengelompok di sekitar mean, modus, atau mediannya.
Jika 50 persen nilai untuk salah satu baris atau kolom dalam database hilang, lebih baik untuk menghapus seluruh baris atau kolom kecuali jika memungkinkan untuk mengisi nilai menggunakan salah satu metode di atas.
Data berisik
Sejumlah besar data yang tidak berarti disebut noise . Lebih tepatnya, ini adalah varians acak dalam variabel terukur atau data yang memiliki nilai atribut yang salah. Kebisingan mencakup duplikat atau semi-duplikat titik data, segmen data yang tidak bernilai untuk proses penelitian tertentu, atau bidang informasi yang tidak diinginkan.
Misalnya, jika Anda perlu memprediksi apakah seseorang dapat mengemudi, informasi tentang warna rambut, tinggi badan, atau berat badan mereka tidak akan relevan.
Outlier dapat diperlakukan sebagai noise, meskipun beberapa menganggapnya sebagai titik data yang valid. Misalkan Anda melatih algoritme untuk mendeteksi kura-kura dalam gambar. Kumpulan data gambar mungkin berisi gambar kura-kura yang salah diberi label sebagai kura-kura. Ini bisa dianggap kebisingan.
Namun, mungkin ada gambar kura-kura yang lebih mirip kura-kura daripada kura-kura. Sampel itu dapat dianggap sebagai outlier dan belum tentu noise. Ini karena kami ingin mengajarkan algoritme semua cara yang mungkin untuk mendeteksi kura-kura, dan karenanya, penyimpangan dari kelompok sangat penting.
Untuk nilai numerik, Anda dapat menggunakan plot sebar atau plot kotak untuk mengidentifikasi outlier.
Berikut ini adalah beberapa metode yang digunakan untuk mengatasi masalah kebisingan:
- Regresi: Analisis regresi dapat membantu menentukan variabel yang berdampak. Ini akan memungkinkan Anda untuk bekerja hanya dengan fitur-fitur penting daripada menganalisis volume data yang besar. Baik regresi linier maupun regresi linier berganda dapat digunakan untuk menghaluskan data.
- Binning: Metode Binning dapat digunakan untuk kumpulan data yang diurutkan. Mereka menghaluskan nilai yang diurutkan dengan melihat nilai-nilai di sekitarnya. Nilai yang diurutkan kemudian dibagi menjadi “bins”, yang berarti menyortir data menjadi segmen-segmen yang lebih kecil dengan ukuran yang sama. Ada beberapa teknik yang berbeda untuk binning, termasuk smoothing dengan cara bin dan smoothing dengan median bin.
- Clustering: Algoritma clustering seperti k-means clustering dapat digunakan untuk mengelompokkan data dan mendeteksi outlier dalam proses.
2. Integrasi data
Karena data dikumpulkan dari berbagai sumber, integrasi data merupakan bagian penting dari persiapan data. Integrasi dapat menyebabkan beberapa titik data yang tidak konsisten dan berlebihan, yang pada akhirnya mengarah ke model dengan akurasi yang lebih rendah.

Berikut adalah beberapa pendekatan untuk mengintegrasikan data:
- Konsolidasi data: Data secara fisik disatukan dan disimpan di satu tempat. Memiliki semua data di satu tempat meningkatkan efisiensi dan produktivitas. Langkah ini biasanya melibatkan penggunaan perangkat lunak gudang data.
- Virtualisasi data: Dalam pendekatan ini, antarmuka menyediakan tampilan data yang terpadu dan real-time dari berbagai sumber. Dengan kata lain, data dapat dilihat dari satu sudut pandang.
- Propagasi data: Melibatkan penyalinan data dari satu lokasi ke lokasi lain dengan bantuan aplikasi tertentu. Proses ini bisa sinkron atau asinkron dan biasanya event-driven.
3. Reduksi data
Seperti namanya, reduksi data digunakan untuk mengurangi jumlah data dan dengan demikian mengurangi biaya yang terkait dengan penambangan data atau analisis data.
Ini menawarkan representasi ringkas dari dataset. Meskipun langkah ini mengurangi volume, langkah ini mempertahankan integritas data asli. Langkah pra-pemrosesan data ini sangat penting ketika bekerja dengan data besar karena jumlah data yang terlibat akan sangat besar.
Berikut ini adalah beberapa teknik yang digunakan untuk reduksi data.
Pengurangan dimensi
Pengurangan dimensi , juga dikenal sebagai pengurangan dimensi, mengurangi jumlah fitur atau variabel input dalam kumpulan data.
Jumlah fitur atau variabel input dari dataset disebut dimensionality. Semakin tinggi jumlah fitur, semakin sulit untuk memvisualisasikan dataset pelatihan dan membuat model prediktif.
Dalam beberapa kasus, sebagian besar atribut ini berkorelasi, karenanya berlebihan; oleh karena itu, algoritme pengurangan dimensi dapat digunakan untuk mengurangi jumlah variabel acak dan mendapatkan sekumpulan variabel utama.
Ada dua segmen pengurangan dimensi: seleksi fitur dan ekstraksi fitur.
Dalam pemilihan fitur , kami mencoba menemukan subset dari kumpulan fitur asli. Ini memungkinkan kita untuk mendapatkan subset yang lebih kecil yang dapat digunakan untuk memvisualisasikan masalah menggunakan pemodelan data. Di sisi lain, ekstraksi fitur mereduksi data dalam ruang berdimensi tinggi menjadi ruang berdimensi lebih rendah, atau dengan kata lain, ruang dengan jumlah dimensi yang lebih sedikit.
Berikut ini adalah beberapa cara untuk melakukan reduksi dimensi:
- Analisis komponen utama (PCA): Sebuah teknik statistik yang digunakan untuk mengekstrak satu set variabel baru dari satu set besar variabel. Variabel yang baru diekstraksi disebut komponen utama. Metode ini hanya berfungsi untuk fitur dengan nilai numerik.
- Filter korelasi tinggi: Teknik yang digunakan untuk menemukan fitur yang sangat berkorelasi dan menghapusnya; jika tidak, sepasang variabel yang sangat berkorelasi dapat meningkatkan multikolinearitas dalam dataset.
- Rasio nilai yang hilang: Metode ini menghilangkan atribut yang memiliki nilai yang hilang lebih dari ambang batas yang ditentukan.
- Filter varians rendah: Melibatkan penghapusan atribut yang dinormalisasi yang memiliki varians kurang dari nilai ambang batas karena perubahan kecil dalam data diterjemahkan menjadi lebih sedikit informasi.
- Hutan acak: Teknik ini digunakan untuk menilai pentingnya setiap fitur dalam kumpulan data, memungkinkan kami untuk menyimpan fitur terpenting saja.
Teknik pengurangan dimensi lainnya termasuk analisis faktor, analisis komponen independen, dan analisis diskriminan linier (LDA).
Pilihan subset fitur
Seleksi subset fitur adalah proses memilih subset fitur atau atribut yang berkontribusi paling besar atau paling penting.
Misalkan Anda mencoba memprediksi apakah seorang siswa akan lulus atau gagal dengan melihat data historis siswa yang serupa. Anda memiliki dataset dengan empat fitur: nomor roll, nilai total, jam belajar, dan kegiatan ekstrakurikuler.
Dalam hal ini, jumlah gulungan tidak mempengaruhi kinerja siswa dan dapat dihilangkan. Subset baru hanya akan memiliki tiga fitur dan akan lebih efisien daripada set asli.
Pendekatan reduksi data ini dapat membantu membuat model pembelajaran mesin yang lebih cepat dan hemat biaya. Pemilihan subset atribut juga dapat dilakukan pada langkah transformasi data.
Pengurangan jumlah
Reduksi numerositas adalah proses penggantian data asli dengan bentuk representasi data yang lebih kecil. Ada dua cara untuk melakukan ini: metode parametrik dan non-parametrik.
Metode parametrik menggunakan model untuk representasi data. Metode log-linear dan regresi digunakan untuk membuat model seperti itu. Sebaliknya, metode non-parametrik menyimpan representasi data yang dikurangi menggunakan pengelompokan, histogram, agregasi kubus data, dan pengambilan sampel data.
4. Transformasi data
Transformasi data adalah proses mengubah data dari satu format ke format lainnya. Intinya, ini melibatkan metode untuk mengubah data ke dalam format yang sesuai sehingga komputer dapat belajar secara efisien.
Misalnya, satuan kecepatan bisa mil per jam, meter per detik, atau kilometer per jam. Oleh karena itu, kumpulan data dapat menyimpan nilai kecepatan mobil dalam satuan yang berbeda. Sebelum memasukkan data ini ke algoritma, kita perlu mengubah data menjadi unit yang sama.
Berikut ini adalah beberapa strategi untuk transformasi data.
menghaluskan
Pendekatan statistik ini digunakan untuk menghilangkan noise dari data dengan bantuan algoritma. Ini membantu menyoroti fitur paling berharga dalam kumpulan data dan memprediksi pola. Ini juga melibatkan menghilangkan outlier dari dataset untuk membuat pola lebih terlihat.
Pengumpulan
Agregasi mengacu pada pengumpulan data dari berbagai sumber dan menyajikannya dalam format terpadu untuk penambangan atau analisis data. Menggabungkan data dari berbagai sumber untuk meningkatkan jumlah titik data sangat penting karena model ML akan memiliki cukup banyak contoh untuk dipelajari.
Diskritisasi
Diskritisasi melibatkan pengubahan data kontinu ke dalam set interval yang lebih kecil. Misalnya, lebih efisien untuk menempatkan orang dalam kategori seperti "remaja", "dewasa muda", "usia paruh baya", atau "senior" daripada menggunakan nilai usia berkelanjutan.
Generalisasi
Generalisasi melibatkan pengubahan fitur data tingkat rendah menjadi fitur data tingkat tinggi. Misalnya, atribut kategoris seperti alamat rumah dapat digeneralisasi ke definisi tingkat yang lebih tinggi seperti kota atau negara bagian.
Normalisasi
Normalisasi mengacu pada proses mengubah semua variabel data menjadi rentang tertentu. Dengan kata lain, ini digunakan untuk menskalakan nilai atribut sehingga berada dalam rentang yang lebih kecil, misalnya, 0 hingga 1. Penskalaan desimal, normalisasi min-max, dan normalisasi z-score adalah beberapa metode normalisasi data.
Konstruksi fitur
Konstruksi fitur melibatkan konstruksi fitur baru dari kumpulan fitur yang diberikan. Metode ini menyederhanakan dataset asli dan membuatnya lebih mudah untuk menganalisis, menambang, atau memvisualisasikan data.
Pembuatan hierarki konsep
Pembuatan hierarki konsep memungkinkan Anda membuat hierarki antar fitur, meskipun tidak ditentukan. Misalnya, jika Anda memiliki kumpulan data alamat rumah yang berisi data tentang jalan, kota, negara bagian, dan negara, metode ini dapat digunakan untuk mengatur data dalam bentuk hierarkis.
Data akurat, hasil akurat
Algoritma pembelajaran mesin seperti anak-anak. Mereka memiliki sedikit atau tidak ada pemahaman tentang apa yang menguntungkan atau tidak menguntungkan. Seperti bagaimana anak-anak mulai mengulangi kata-kata kotor yang diambil dari orang dewasa, data yang tidak akurat atau tidak konsisten dengan mudah memengaruhi model ML. Kuncinya adalah memberi mereka data yang akurat dan berkualitas tinggi, di mana pra-pemrosesan data merupakan langkah penting.
Algoritma pembelajaran mesin biasanya disebut sebagai pekerja keras. Tapi ada algoritma yang sering dicap malas. Ini disebut algoritma k-nearest neighbor dan merupakan algoritma klasifikasi yang sangat baik.