Visualisasi data adalah representasi grafis dari data dengan menggunakan elemen visual seperti bagan, grafik, plot, dan dasbor. Visualisasi data membantu menafsirkan data kompleks kepada pemangku kepentingan atau audiens nonteknis yang dapat menggunakannya untuk pengambilan keputusan.
Dalam machine learning (ML), ini berarti lebih dari sekadar membangun dasbor atau laporan. Ini melibatkan pembangunan, debug, dan peningkatan model ML. Ini digunakan untuk menginterogasi data sebelum pelatihan, memantau apa yang terjadi selama pelatihan, dan mendiagnosis apa yang salah atau benar setelah evaluasi. Ini bukan tentang presentasi, namun lebih menyangkut penyelidikan.
Dalam praktiknya, keduanya bekerja saling tumpang tindih. Seorang praktisi machine learning atau profesional ilmu data yang baik menggunakan visualisasi data untuk mereka sendiri untuk menangkap masalah dan mengoptimalkan model, dan menggunakannya untuk orang lain dalam menjelaskan hasil dan membangun kepercayaan pada output model.
Visualisasi data dalam machine learning langsung memengaruhi kualitas model Anda, keputusan yang Anda buat, dan seberapa baik orang lain memahami pekerjaan Anda.
Visualisasi berjalan di seluruh alur kerja ML, mulai saat Anda menerima data mentah hingga evaluasi akhir model Anda. Di sinilah ia muncul di setiap tahap. Teknik visualisasi yang disebutkan dalam setiap langkah akan dibahas secara terperinci di bagian selanjutnya.
Sebelum analisis dimulai, Anda perlu memahami apa yang sedang Anda kerjakan. Ini berarti memeriksa missing values, tipe data yang tidak konsisten, dan data duplikat, karena masalah struktural apa pun dalam data pada tahap ini akan diam-diam merusak semua hal yang terlibat. Peta panas Missing Values, grafik distribusi tipe data, dan plot frekuensi data memberikan gambaran yang cepat dan andal tentang kesehatan data sebelum Anda menginvestasikan waktu untuk membangun di atasnya.
Analisis data eksplorasi membantu memahami struktur, distribusi, dan hubungan dalam kumpulan data sebelum membangun apa pun menggunakan histogram, diagram pencar, matriks korelasi, diagram kotak garis, dan plot berpasangan sehingga memunculkan pola, anomali, dan hubungan yang tidak akan bisa diungkapkan oleh angka mentah saja. EDA bersifat iteratif: Anda memvisualisasikan sesuatu, membuat hipotesis, mengujinya dan memvisualisasikannya lagi sampai Anda benar-benar memahami apa yang disampaikan data kepada Anda.
Setelah memahami data mentah, Anda mulai mengubah dan memilih fitur untuk model. Memvisualisasikan data Anda pada titik ini memungkinkan Anda untuk memeriksa apakah transformasi melakukan apa yang Anda harapkan dan membantu Anda mengetahui fitur mana yang benar-benar berguna. Memahami plot distribusi, bagan kepentingan fitur, atau bagaimana fitur berperilaku di berbagai kelompok target mengubah prapemrosesan acak menjadi pilihan yang dapat Anda benarkan dengan jelas.
Saat model machine learning dilatih, visualisasi bukan lagi pemeriksaan data melainkan cara untuk melacak proses pembelajaran model. Grafik seperti kurva pembelajaran atau kesalahan mengungkapkan apakah model mengalami peningkatan, stagnasi, atau overfitting. Masukan itu memungkinkan Anda menyempurnakan hyperparameter, menyesuaikan regularisasi, atau mengubah durasi pelatihan sebelum pekerjaan selesai.
Setelah pelatihan, visualisasi merupakan cara bagaimana Anda memahami data melampaui apa yang ditampilkan satu angka akurasi dan benar-benar memahami bagaimana model berkinerja. Matriks kebingungan, kurva ROC, kurva presisi-recall, dan plot residual masing-masing mengungkapkan dimensi perilaku model yang berbeda. Mereka memerinci kinerja berdasarkan kelas, seluruh ambang batas, dan seluruh rentang nilai yang diprediksi, sehingga Anda tidak hanya tahu seberapa baik kinerja model, tetapi di mana model berhasil dan gagal.
Memahami jenis visualisasi data yang digunakan dalam machine learning berarti berpikir dalam hal contoh penggunaan, bukan hanya nama bagan. Berikut adalah uraian terstruktur tentang hal ini.
Histogram menunjukkan bagaimana fitur numerik tunggal didistribusikan. Grafik ini membagi nilai menjadi interval pada sumbu x dan menghitung berapa banyak titik data yang masuk ke setiap interval pada sumbu y. Di Python, menggunakan alat seperti Matplotlib atau Seaborn, membuat plot histogram akan menunjukkan dengan efektif apakah suatu fitur terlihat normal, miring ke kanan, bimodal, atau mendekati seragam.
Setiap pola menunjukkan langkah prapemrosesan yang berbeda. Misalnya, Anda dapat membuat plot histogram untuk harga produk dan melihat bahwa sebagian besar memiliki harga kurang dari USD 50 dengan rentang panjang mencapai hingga USD 500. Pola itu menunjukkan bahwa fitur akan mendapat manfaat dari transformasi log sebelum Anda menggunakannya dalam model.
Diagram pencar menempatkan dua variabel numerik pada sumbu x dan sumbu y, dengan setiap titik data direpresentasikan sebagai sebuah titik. Mereka berguna untuk mengamati pola linier dan nonlinear, mengidentifikasi di mana klaster terbentuk dan menandai outlier yang berada jauh dari data lainnya. Misalnya, membuat plot ukuran rumah terhadap harga jual mungkin akan menunjukkan tren kenaikan yang bersih hingga ambang batas ukuran tertentu, di mana setelah itu harga melandai, pola yang layak diselidiki sebelum pelatihan.
Matriks korelasi menampilkan korelasi berpasangan antara setiap fitur numerik dalam kumpulan data Anda. Dirender sebagai peta panas, di mana warna sel mengodekan kekuatan korelasi, matriks ini membuat multikolinearitas terlihat sekilas. Fitur dengan korelasi 0,95 ke atas sering masuk daftar penghapusan selama pemilihan fitur, karena mereka membawa informasi yang berlebihan.
Korelasi hanya menangkap hubungan linier, jadi korelasi mendekati nol tidak berarti bahwa dua fitur tidak saling bergantung. Misalnya, “total kamar” dan “total kamar tidur” dalam kumpulan data perumahan hampir selalu menunjukkan korelasi yang sangat tinggi dan menjaga keduanya tidak menambahkan informasi baru ke model.
Diagram kotak garis memberikan ringkasan singkat tentang penyebaran variabel dengan menunjukkan median, rentang utama data (jangkauan interkuartil) dan setiap outlier. Mereka sangat berguna dalam machine learning untuk membandingkan bagaimana fitur numerik berbeda di seluruh kelompok sasaran, seperti saat melihat pendapatan untuk orang yang gagal membayar pinjaman dibandingkan orang yang tidak gagal.
Plot berpasangan menghasilkan grid diagram pencar untuk setiap kombinasi fitur numerik dalam kumpulan data, dengan histogram atau plot kepadatan di sepanjang diagonal. Fungsi plot berpasangan () Seaborn menghasilkan plot ini dalam satu baris. Untuk kumpulan data dengan hingga 10-15 fitur, plot berpasangan memberikan ikhtisar multivariat cepat yang akan membutuhkan banyak plot individual untuk direplikasi.
Fitur, dalam konteks ini, sederhananya adalah tiap kolom dalam kumpulan data Anda, seperti usia, pendapatan, atau frekuensi pembelian. Misalnya, plot berpasangan untuk kumpulan data penjualan mungkin langsung mengungkapkan bahwa pendapatan dan unit yang dijual bergerak beriringan, sementara tingkat diskonto tidak terlalu berhubungan dengan keduanya. Wawasan seperti itu dapat membantu Anda memutuskan fitur mana yang layak dipertahankan.
Plot kepadatan itu seperti versi histogram yang lebih halus. Mereka berguna untuk membandingkan bagaimana fitur didistribusikan ke dua grup. Ketika kurva berjauhan, fitur biasanya memiliki nilai prediksi yang kuat. Namun jika keduanya tumpang tindih, fitur kurang bermanfaat.
Misalnya, jika Anda memetakan kepadatan “frekuensi pembelian” untuk pelanggan setia versus pelanggan yang berhenti berlangganan dan kedua garis membentuk puncak yang terpisah dengan jelas, itu pertanda baik bahwa fitur ini akan membantu dalam model prediksi perputaran pelanggan.
Anda dapat mengekstrak skor kepentingan fitur setelah melatih model dan memvisualisasikannya dalam grafik batang untuk melihat fitur mana yang paling penting. Model yang didasarkan pada struktur keputusan adalah contoh umum, karena secara alami memberikan skor kepentingan ini. Fitur dengan kepentingan yang sangat rendah sering kali merupakan kandidat yang baik untuk dihapus, dan alat seperti Plotly atau Matplotlib dapat dengan mudah membuat grafik ini bahkan ketika Anda memiliki banyak fitur.
Plot ini membandingkan distribusi fitur sebelum dan sesudah transformasi (penskalaan, pengodean, transformasi log) dan mengonfirmasi apakah langkah prapemrosesan mencapai efek yang dimaksudkan. Perbandingan ini penting karena memasukkan fitur yang diubah dengan buruk ke dalam model dapat menyimpangkan prediksi, dan plot berdampingan yang sederhana akan mendeteksi masalah itu sebelum model mencapai tahap pelatihan.
Kurva pembelajaran adalah jenis visualisasi pelatihan model yang membuat plot kinerja model (akurasi atau kesalahan) pada sumbu y terhadap ukuran kumpulan pelatihan atau iterasi pelatihan pada sumbu x, dengan garis terpisah untuk pelatihan dan validasi.
Visualisasi tunggal ini mendiagnosis dua mode kegagalan model ML yang paling umum: overfitting (kesenjangan besar antara kinerja pelatihan dan validasi) dan underfitting (kedua baris memiliki tingkat akurasi rendah dan bertemu dengan cepat). Menyesuaikan kompleksitas model, regularisasi, atau ukuran data pelatihan menjadi target, bukan sebuah terkaan belaka setelah Anda dapat melihat kurva pembelajaran.
Untuk model pembelajaran mendalam, membuat plot kesalahan pelatihan dan kesalahan validasi selama beberapa epoch adalah praktik standar. Kesalahan validasi yang berhenti membaik atau mulai meningkat sementara kesalahan pelatihan terus turun adalah sinyal untuk menghentikan pelatihan lebih awal. Plot ini biasanya dihasilkan secara real-time menggunakan alat seperti TensorBoard selama pelatihan.
Lebih luas lagi, bagan garis yang melacak metrik apa pun (akurasi, skor F1, area di bawah kurva) selama iterasi pelatihan memberikan gambaran berkelanjutan tentang bagaimana model berkembang. Mereka lebih informatif daripada satu metrik akhir pelatihan karena menunjukkan lintasan, bukan hanya tujuan.
Matriks kebingungan adalah jenis visualisasi evaluasi model yang menjabarkan setiap kombinasi label kelas aktual dan yang diprediksi dalam sebuah kisi, positif benar, negatif benar, positif palsu, dan negatif palsu, sehingga Anda dapat melihat dengan tepat di mana model Anda benar dan salah.
Ini adalah dasar dari sebagian besar metrik klasifikasi; presisi, recall, dan skor F1 semuanya berasal dari metrik. Dirender sebagai peta panas dengan anotasi yang menunjukkan jumlah atau persentase, metrik ini membuat kegagalan tingkat kelas langsung terbaca. Model yang “terlihat bagus” dalam hal akurasi tetapi memiliki baris kosong untuk kelas penting akan langsung menunjukkan kegagalan ini dalam matriks kebingungan.
Kurva ROC membuat plot tingkat positif benar terhadap tingkat positif palsu pada setiap ambang batas klasifikasi yang mungkin, dari 0 hingga 1. Area di bawah kurva (AUC) merangkum kemampuan diskriminasi model keseluruhan dalam satu angka: 0,5 adalah tebakan acak, 1,0 berarti sempurna. Kurva ROC sangat berguna ketika membandingkan beberapa model atau ketika biaya positif palsu dan negatif palsu berbeda. Alat seperti Scikit-learn dan Plotly keduanya memiliki dukungan bawaan untuk membuat kurva ini.
Ketika kumpulan data Anda sangat tidak seimbang, kurva presisi-recall memberi Anda gambaran yang jauh lebih jujur tentang kinerja model daripada kurva ROC. Pengklasifikasi yang kuat mendorong ke arah kanan atas plot, mempertahankan presisi tinggi tanpa mengorbankan recall. Kurva ini membuat plot presisi pada sumbu y terhadap recall pada sumbu x di berbagai ambang batas keputusan.
Di bidang berisiko tinggi seperti diagnosis medis atau deteksi penipuan di mana kegagalan untuk menangkap kasus langka jauh lebih merusak daripada alarm palsu, kurva ini sering memberi Anda lebih banyak informasi daripada metode lainnya.
Untuk model regresi, plot residual menunjukkan perbedaan antara nilai prediksi dan aktual (nilai sisa) pada sumbu y terhadap nilai prediksi pada sumbu x. Nilai sisa harus tersebar secara acak di sekitar nol tanpa pola yang terlihat. Jika nilai sisa melebar, melengkung secara sistematis, atau mengelompok, model memiliki masalah struktural karena tidak menangkap beberapa aspek hubungan dalam data.
Matplotlib adalah fondasi sumber terbuka tempat dibangunnya semua hal. Modul “pyplot” pustaka ini (diimpor sebagai “plt”) menangani berbagai plot standar, histogram, diagram pencar, grafik garis, grafik batang, dan banyak lagi. Anda harus menulis sangat banyak baris kode di pustaka ini dibandingkan pustaka yang lebih baru, tetapi kerumitan ini memberi Anda kontrol yang tepat atas setiap detail: anotasi, label sumbu, tata letak gambar, dan ukuran.
Seaborn dibangun menggunakan Matplotlib dan memangkas kode berulang secara signifikan. Peta panas, plot pasangan, atau diagram kotak garis yang memerlukan 15 baris di Matplotlib membutuhkan satu atau dua baris saja di Seaborn. Pustaka ini membaca langsung dari DataFrames Pandas, menjadikannya pilihan untuk EDA di lingkungan Jupyter Notebook.
Plotly adalah pilihan yang tepat ketika Anda memerlukan output yang interaktif. Grafik ditampilkan dalam HTML, memungkinkan pemirsa mengarahkan kursor ke titik data, memperbesar, dan mengubah seri, yang membuatnya jauh lebih berguna dibandingkan gambar statis saat menyajikan hasil kepada pemangku kepentingan melalui dasbor atau laporan web.
NumPy bukanlah alat visualisasi itu sendiri melainkan tulang punggung dari hampir setiap alur kerja visualisasi yang menangani manipulasi array dan persiapan data sumbu x/y yang menjadi sandaran Matplotlib dan Seaborn.
Yellowbrick dibangun khusus untuk evaluasi ML. Pustaka ini membungkus scikit-learn dan menghasilkan matriks kebingungan, kurva ROC, kurva pembelajaran, dan plot kepentingan fitur dalam satu panggilan fungsi yang melewatkan penautan manual yang dibutuhkan Matplotlib.
TensorBoard menangani sisi pembelajaran mendalam. Toolkit ini mengalirkan metrik pelatihan real-time, kurva kesalahan, dan grafik model selama pelatihan yang diperlukan untuk memantau kumpulan data besar dan pekerjaan neural network yang berjalan lama.
Visualisasi data yang efektif bukan hanya tentang memilih bagan yang tepat, melainkan menghindari pola yang diam-diam menyesatkan.
Visualisasi data dalam machine learning bukanlah langkah akhir, karena visualisasi ini dijalin melalui setiap fase proyek. Begitulah cara ilmuwan data mendiagnosis masalah yang tidak dapat mereka lihat dalam tabel, menangkap kegagalan model yang disembunyikan metrik, menyampaikan temuan kepada pemangku kepentingan, dan membuat keputusan berbasis data yang percaya diri di setiap tahap alur kerja.
Membangun kebiasaan memvisualisasikan dengan sengaja di setiap tahap adalah salah satu hal paling sederhana dan paling bermanfaat yang dapat Anda lakukan untuk meningkatkan kualitas model dan kejelasan pemikiran Anda.
Latih, validasi, lakukan tuning, dan terapkan AI generatif, model dasar, dan kemampuan machine learning dengan IBM watsonx.ai, studio perusahaan generasi berikutnya untuk pembangun AI. Bangun aplikasi AI dalam waktu singkat, dengan sedikit data.
Gunakan AI di bisnis Anda dalam perpaduan antara keahlian AI terdepan di industri dari IBM dan portofolio solusi Anda.
Temukan kembali alur kerja dan operasi yang penting dengan menambahkan AI untuk memaksimalkan pengalaman, pengambilan keputusan secara real-time, dan nilai bisnis.