Apa itu GAN? Generative Adversarial Networks Dijelaskan

Generative Adversarial Networks , atau GANs , merupakan implementasi dari Generative Model [Gambar 1]. Model generatif adalah jaringan saraf yang dilatih untuk menghasilkan contoh baru (misalnya gambar) dari distribusi contoh yang diberikan.

Gambar 1

GAN terdiri dari dua bagian: Generator dan Diskriminator [Gambar 2]. Generator dan Diskriminator adalah dua jaringan saraf yang terpisah: tujuannya adalah untuk mengubah masukan yang diberikan menjadi keluaran yang diinginkan.

Gambar 2

Generator adalah model generatif: dengan adanya vektor noise acak, jaringan ini akan menghasilkan sesuatu yang ada di dalam distribusi data pelatihan. Diskriminator adalah model yang dilatih untuk mengembalikan probabilitas bahwa contoh masukan berasal dari data pelatihan asli — yaitu, dari distribusi statistik yang sama — dan tidak hanya dihasilkan secara acak [Gambar 3]. Pikirkan Generator sebagai pemalsu seni dan diskriminator sebagai penilai seni.

Gambar 3

Kedua model ini dilatih untuk mencapai tujuan akhir yang sama dengan menggunakan propagasi balik . Propagasi balik adalah proses memindahkan bobot jaringan saraf secara berulang ke arah tujuan yang diinginkan [Gambar 4]. Generator dan Diskriminator (meminjam beberapa konsep dari teori permainan) ditempatkan sebagai musuh, memungkinkan mereka untuk melatih satu sama lain agar lebih baik dalam tugas masing-masing: menghasilkan dan membedakan. Meski dilatih bersama-sama, tujuan akhirnya sebenarnya adalah melatih model generatif yang kuat.

Gambar 4

Sastra Penting

Jika Anda baru saja masuk ke GAN, saya sarankan untuk memulai dengan Generative Adversarial Nets [1] yang merupakan makalah pertama yang mengusulkan arsitektur GAN. Makalah ini memperkenalkan matematika dasar dan struktur dasar yang memungkinkan sistem permusuhan ini berfungsi.

Kebanyakan GAN "modern" memiliki arsitektur yang mirip dengan yang diusulkan dalam makalah Pembelajaran Representasi Tak Dibimbing dengan Jaringan Adversarial Generatif Konvolusional Dalam [2] atau DCGAN . Makalah ini memberikan panduan tentang penggunaan Convolutional Neural Networks atau CNNs dalam kerangka GAN. Dengan menggunakan arsitektur baru ini, mereka dapat mengidentifikasi bagian dari status model atau bobot yang digunakan untuk representasi tertentu. Tim peneliti mampu mengidentifikasi secara empiris bagian mana dari model yang menyandikan logika tentang jendela di generator ruangan dan kemudian menggunakan pengetahuan tersebut untuk menentukan apakah jaringan mempelajari representasi internal yang sebenarnya dari apa yang membuat sebuah ruangan.

Teks Alt

Makalah lain, berjudul Improved Techniques for Training GANs [3], menyarankan serangkaian konsep yang bertujuan untuk menavigasi perangkap umum dan melatih model Generator dan Diskriminator yang lebih kuat. Makalah ini menggunakan teknik ini untuk menunjukkan peningkatan yang signifikan atas model yang ada untuk representasi sederhana dan kompleks.

Teks Alt

Selain itu, salah satu implementasi GAN yang lebih mengesankan adalah milik penulis A Style-Based Generator Architecture for Generative Adversarial Networks [4]. Makalah terakhir ini meminjam teknik transfer gaya untuk melatih Generator yang lebih baik, khususnya Generator yang memisahkan atribut tingkat tinggi dari variasi. Teknik ini memungkinkan kita menghasilkan contoh yang dipengaruhi oleh gaya tertentu.

Teks Alt

Mengapa Data Penting

Terakhir — karena kami adalah Zumo Labs — saya akan meninggalkan Anda dengan beberapa contoh keren tentang bagaimana GAN dapat digunakan untuk mengatasi masalah data yang merupakan inti dari pembelajaran mesin.

Salah satu masalah inti dengan sebagian besar data yang dikumpulkan adalah sebagian besar model pembelajaran mesin yang digunakan dalam produksi dilatih menggunakan pembelajaran yang diawasi, di mana label diperlukan agar model dapat belajar dari sebuah gambar. GAN telah mengatasi masalah ini dengan mempelajari cara membuat label dari gambar masukan yang tidak berlabel. Gambar di bawah ini adalah beberapa contoh dari Terjemahan Gambar-ke-Gambar yang Tidak Dipasangkan menggunakan Jaringan Adversarial yang Konsisten Siklus [5] dan RenderGAN: Menghasilkan Data Berlabel Realistis [6].

Teks Alt

Di Zumo Labs, menurut kami, masa depan pembelajaran mesin melibatkan pemetaan simulasi yang dapat dikonfigurasi ke kasus penggunaan dunia nyata. Namun, dalam beberapa kasus, saat ini lebih mahal untuk memodelkan semua skenario ini daripada mengambil gambar dari skenario ini dan membuat anotasi secara manual. Untuk mengurangi biaya dunia virtual ini, pembelajaran mesin dapat digunakan untuk mempelajari pemetaan antara lingkungan yang dapat dikonfigurasi dan dunia nyata. Hal ini dapat dilihat di bawah ini pada makalah GANcraft: Rendering Neural 3D yang Tidak Diawasi dari Minecraft Worlds [7] di mana GAN digunakan untuk menghasilkan dunia foto-realistis 3D dari dunia Minecraft.

Teks Alt

Referensi

[1] Jaringan Adversarial Generatif ( https://arxiv.org/pdf/1406.2661.pdf )
[2] Pembelajaran Representasi Tanpa Pengawasan dengan Jaringan Adversarial Generatif Konvolusional yang Dalam ( https://arxiv.org/pdf/1511.06434.pdf )
[3] Teknik yang Lebih Baik untuk Pelatihan GAN ( https://arxiv.org/pdf/1606.03498.pdf )
[4] Arsitektur Generator Berbasis Gaya untuk Jaringan Adversarial Generatif ( https://arxiv.org/pdf/1812.04948.pdf )
[5] Terjemahan Gambar-ke-Gambar yang Tidak Dipasangkan menggunakan Jaringan Adversarial yang Konsisten dengan Siklus ( https://arxiv.org/pdf/1703.10593.pdf )
[6] RenderGAN: Menghasilkan Data Berlabel yang Realistis ( https://arxiv.org/pdf/1611.01331.pdf )
[7] GANcraft: Rendering Neural 3D tanpa pengawasan dari Minecraft Worlds ( https://arxiv.org/pdf/2104.07659.pdf )

May 19, 2021

codeorayo

Ampuh! Ini rahasia mengembangkan aplikasi secara instan, tinggal download dan kembangkan. Gabung sekarang juga! Premium Membership [PRIVATE] https://premium.codeorayo.com

Leave a Reply

Your email address will not be published. Required fields are marked *