Evaluating Synthetic Data using Machine Learning – Towards AI

Evaluating Synthetic Data using Machine Learning – Towards AI

Pengarang: Varatharajah Vaseekaran

Awalnya diterbitkan di Towards AI the World’s Leading AI and Technology News and Media Company. Jika Anda sedang membangun produk atau layanan terkait AI, kami mengundang Anda untuk mempertimbangkan untuk menjadi sponsor AI. Di Towards AI, kami membantu menskalakan AI dan startup teknologi. Biarkan kami membantu Anda melepaskan teknologi Anda kepada massa.

Mengevaluasi Data Sintetis Menggunakan Pembelajaran Mesin

Validasi permusuhan untuk mengevaluasi data sintetis

“Skor akurasi yang buruk” adalah frasa yang dapat menyebabkan mimpi buruk bagi banyak profesional ilmu data saat membuat model pembelajaran mesin untuk masalah klasifikasi. Namun, skor akurasi yang buruk dapat menjadi berkah dalam skenario yang jarang terjadi, terutama saat melakukan validasi adversarial.

Validasi adversarial dilakukan untuk mengevaluasi apakah dua dataset berasal dari distribusi yang sama atau tidak. Umumnya, ini digunakan untuk mengukur pergeseran data dalam set pelatihan dan pengujian yang digunakan dalam masalah pembelajaran mesin. Demikian pula, validasi adversarial dapat digunakan untuk mengevaluasi kualitas data sintetik.

Foto oleh Miikka Luotio di Unsplash

Data Sintetis: Gambaran Umum

Dalam istilah sederhana, data sintetis adalah data yang dihasilkan secara artifisial yang secara matematis dan statistik mewakili data dunia nyata. Data sintetis dibuat menggunakan algoritme (misalnya, SMOTE, ADASYN, Variational Autoencoder, GAN, dll.) dan dapat digunakan sebagai pengganti data dunia nyata saat melakukan analisis data dan membuat model pembelajaran mesin.

Data sintetis memungkinkan privasi data, karena menutupi informasi sensitif, dan oleh karena itu, data sintetis sangat berharga di sektor keuangan dan medis. Data sintetis juga menghemat biaya dan tenaga manusia yang diperlukan untuk mengumpulkan, memproses, dan memberi label kumpulan data besar, karena beberapa data yang diberi label dengan baik dapat digunakan untuk menghasilkan gundukan data sintetis.

Karena ada banyak cara untuk menghasilkan data sintetis, perlu ada metode evaluasi yang tepat untuk mengukur kualitas data sintetis relatif terhadap data dunia nyata. Untuk evaluasi tersebut, artikel ini berfokus pada validasi permusuhan.

Anda bisa mendapatkan lebih banyak wawasan tentang data sintetis dan tentang cara menghasilkan data sintetis menggunakan implementasi GAN yang canggih dan bersumber terbuka dengan merujuk ke artikel ini:

GAN untuk Pembuatan Data Sintetis

Pengantar Validasi Bermusuhan

Foto oleh Agence Olloweb di Unsplash

Pembelajaran mesin memiliki banyak aplikasi yang menarik dan inovatif: mulai dari mendeteksi kucing dan anjing hingga menyoroti tumor secara akurat dalam gambar MRI. Dalam artikel ini, kita akan melihat bagaimana pembelajaran mesin dapat digunakan untuk menentukan kesamaan antara dua kumpulan data, yaitu validasi permusuhan.

Teori di balik validasi adversarial cukup sederhana: model klasifikasi dilatih untuk membedakan antara dua set data, yaitu set kereta dan set uji. Label dibuat untuk setiap data, yang menunjukkan apakah data tersebut berasal dari rangkaian kereta atau bukan, dan label baru digunakan sebagai target untuk melatih model.

Dalam masalah klasifikasi umum, akurasi tinggi menunjukkan model berkinerja baik. Tetapi untuk validasi adversarial, skor akurasi yang lebih rendah menunjukkan kinerja yang lebih baik. Skor akurasi yang lebih rendah berarti model mengalami masalah dalam membedakan dua kelas data (dari set pelatihan atau tidak). Hal ini menunjukkan bahwa sebaran train set dan test set mirip satu sama lain. Jika diperoleh akurasi yang tinggi maka model tidak memiliki masalah dalam membedakan antara train dan test set, sehingga dapat disimpulkan bahwa baik train maupun test set memiliki distribusi yang berbeda.

Mengevaluasi Data Sintetis dengan Validasi Berlawanan

Validasi adversarial dapat digunakan untuk menentukan kualitas data sintetik juga. Alih-alih menggunakan rangkaian kereta dan pengujian, data nyata dan data sintetis digunakan untuk melatih model pembelajaran mesin. Jika model berkinerja buruk, ini menunjukkan bahwa data sintetis dan data nyata memiliki sifat yang sama, dan jika model berkinerja sangat baik, maka itu menunjukkan bahwa data nyata dan data sintetis benar-benar berbeda satu sama lain.

Untuk percobaan ini, algoritma populer yang digunakan untuk menghasilkan data sintetis, SMOTE (Synthetic Minority Over-sampling Technique), digunakan, dan data yang dihasilkan, bersama dengan data nyata, akan digunakan untuk melatih model.

Dataset Objek Bumi Terdekat digunakan untuk melatih model. Kumpulan data yang relatif sederhana yang terdiri dari detail diameter, jarak dari Bumi, miss distance, dll., dari asteroid yang diverifikasi oleh NASA. Setiap asteroid diberi label apakah itu berbahaya bagi Bumi, dan hanya asteroid berbahaya yang dipertimbangkan untuk percobaan ini.

Awalnya, data dimuat, dan bidang data yang tidak perlu dihapus.

https://medium.com/media/b80386f3a453fed9288b806e60156146/href

Karena semua fitur data adalah numerik, RobustScaler digunakan untuk menskalakan data.

https://medium.com/media/ec8bb80054b11764b3c6c480c4e3a7a2/href

Data pra-olahan digunakan untuk menghasilkan data sintetik. Data minoritas (yaitu, asteroid berbahaya) digunakan untuk menghasilkan data sintetis menggunakan SMOTE. Setelah menghasilkan data sintetis, asteroid yang tidak berbahaya dihilangkan.

https://medium.com/media/9e14de0efd30bef8b6634f98987ac847/href

Sekarang label berbahaya dihapus, dan bingkai data terpisah dibuat, yang hanya terdiri dari data sintetis.

https://medium.com/media/86a10f25dda3da8f0ced338486be2e6a/href

Label baru (is_synth) dibuat untuk data nyata, yang hanya terdiri dari asteroid berbahaya, dan data sintetis. Label ini menunjukkan apakah baris data tertentu sintetis atau tidak. Kemudian, data sintetik dan data nyata digabungkan untuk membuat data pelatihan akhir.

https://medium.com/media/29d66ca9c546b4c6c7297946553dcd90/href

Setelah membuat data akhir, data tersebut dibagi untuk melatih dan menguji set, diskalakan, dan kemudian pengklasifikasi dilatih pada set pelatihan. Model LightGBM, pustaka model Gradient Boosting yang kuat, dipilih sebagai model klasifikasi. Setelah model dilatih, set tes digunakan untuk mengevaluasi kinerja model.

https://medium.com/media/f6faa6535f9ece9f49ace94ebdde9da7/href

Model ini berkinerja dengan akurasi 68,67%. Hal ini menunjukkan bahwa model mengalami kesulitan dalam mengklasifikasikan data mana yang sintetik atau nyata. Oleh karena itu, dapat disimpulkan bahwa algoritma SMOTE bekerja dengan baik untuk data asteroid berbahaya dalam menghasilkan contoh sintetis.

Repositori untuk cara kerja artikel ini dapat ditemukan di sini.

Kata-kata Terakhir

Dalam pengembangan AI yang berpusat pada data saat ini, data sintetis sangat penting. Ada banyak alat dan pustaka yang tersedia untuk menghasilkan data sintetis. Namun, mengevaluasi kualitas data yang dihasilkan dapat menjadi masalah, dan ini dapat diselesaikan dengan melakukan validasi adversarial.

Validasi permusuhan umumnya dilakukan untuk mengevaluasi pergeseran data antara data pelatihan dan data pada inferensi. Artikel ini memberikan implementasi praktis menggunakan validasi adversarial untuk menentukan kualitas data sintetis sehubungan dengan data nyata.

Kami membangun model klasifikasi pembelajaran mesin menggunakan data sintetis dan data nyata. Label baru dibuat untuk data, yang menyatakan apakah data tertentu sintetis atau tidak. Selama evaluasi, jika model berkinerja baik (memiliki skor tinggi), berarti model dapat dengan jelas memisahkan data nyata dan sintetik. Oleh karena itu data sintetik berbeda dengan data nyata, dan jika model memiliki skor yang buruk, dapat disimpulkan bahwa data sintetik dan data nyata serupa.

Saya harap Anda telah mempelajari metode yang relatif sederhana untuk mengevaluasi data sintetis. Saya harap Anda menikmati artikel ini, dan saya akan senang mendengar tanggapan Anda tentang artikel ini, karena ini akan membantu saya untuk meningkatkan. Bersulang!

Mengevaluasi Data Sintetis menggunakan Pembelajaran Mesin awalnya diterbitkan di Towards AI on Medium, di mana orang-orang melanjutkan percakapan dengan menyoroti dan menanggapi cerita ini.

Diterbitkan melalui Menuju AI

Author: Jonathan Kelly