Apa itu GAN? Bagaimana dan mengapa Anda harus menggunakannya!



Artikel ini mencakup penjelasan rinci tentang 'Apa itu GAN' dengan batasan dan tantangan yang mencakup proses pelatihan dan Implementasi kasus penggunaan.

Generative Adversarial Networks atau GANs adalah pendekatan pemodelan generatif menggunakan Pembelajaran Mendalam untuk melatih model secara cerdik dalam menghasilkan data dengan menggunakan pendekatan sub-model. Pada artikel ini, kita akan mencoba untuk memahami “What Are GANs” secara detail. Topik berikut ini dibahas dalam artikel ini:

Apa Model Generatif?

Model generatif tidak lain adalah model yang menggunakan ekstensi pendekatan. Dalam model generatif, terdapat sampel dalam data yaitu variabel input X, tetapi tidak memiliki variabel output Y. Kami hanya menggunakan variabel input untuk melatih model generatif dan model tersebut mengenali pola dari variabel input untuk menghasilkan output yang tidak diketahui dan hanya berdasarkan data pelatihan.





Di , kami lebih selaras untuk membuat model prediktif dari variabel input, jenis pemodelan ini dikenal sebagai pemodelan diskriminatif. Dalam masalah klasifikasi, model harus membedakan kelas mana dari contoh tersebut. Di sisi lain, model tanpa pengawasan digunakan untuk membuat atau menghasilkan contoh baru dalam distribusi masukan.

Untuk mendefinisikan model generatif dalam istilah awam kita dapat mengatakan, model generatif, mampu menghasilkan contoh baru dari sampel yang tidak hanya mirip dengan contoh lain tetapi juga tidak dapat dibedakan.



Contoh paling umum dari model generatif adalah a yang lebih sering digunakan sebagai model diskriminatif. Contoh lain dari model generatif termasuk Gaussian Mixture Model dan contoh yang agak modern yaitu General Adversarial Networks. Mari kita coba memahami Apa Itu GAN?

Apa itu Jaringan Adversarial Generatif?

Generative Adversarial Networks atau GANs adalah model generatif berbasis deep-learning yang digunakan untuk Unsupervised Learning. Ini pada dasarnya adalah sistem di mana dua orang bersaing Jaringan Neural bersaing satu sama lain untuk membuat atau menghasilkan variasi dalam data.

Ini pertama kali dijelaskan dalam sebuah makalah pada tahun 2014 oleh Ian Goodfellow dan teori model yang terstandardisasi dan lebih stabil diajukan oleh Alec Radford pada tahun 2016 yang dikenal sebagai DCGAN (Deep Convolutional General Adversarial Networks). Sebagian besar GAN saat ini menggunakan arsitektur DCGAN.



Arsitektur GAN terdiri dari dua sub-model yang dikenal sebagai Model generator dan Model Diskriminator. Mari kita coba memahami cara kerja GAN.

Bagaimana cara kerjanya?

Untuk memahami cara kerja GAN, mari kita uraikan.

  • Generatif - Artinya model mengikuti pendekatan dan merupakan model generatif.
  • Adversarial - Model dilatih dalam suasana permusuhan
  • Jaringan - Untuk pelatihan model, menggunakan jaringan syaraf tiruan sebagai algoritma kecerdasan buatan.

Di GAN, terdapat jaringan Generator yang mengambil sampel dan menghasilkan sampel data, dan setelah ini, jaringan Diskriminator memutuskan apakah data tersebut dibuat atau diambil dari sampel nyata menggunakan biner masalah dengan bantuan fungsi sigmoid yang memberikan keluaran dalam kisaran 0 hingga 1.

diagram alir - apa itu gnas - edureka

Model generatif menganalisis distribusi data sedemikian rupa sehingga setelah tahap pelatihan, probabilitas diskriminator membuat kesalahan menjadi maksimal. Dan Diskriminator, di sisi lain, didasarkan pada model yang akan memperkirakan probabilitas bahwa sampel berasal dari data nyata dan bukan generator.

Algoritma fibonacci c ++

Seluruh proses dapat diformalkan dalam rumus matematika yang diberikan di bawah ini.

Dalam rumus di atas:

G = Generator

D = Diskriminator

Pdata (x) = Distribusi data riil

Pdata (z) = Distributor generator

x = sampel dari data nyata

z = sampel dari generator

D (x) = Jaringan Diskriminator

G (z) = Jaringan Generator

Sekarang sampai pada bagian pelatihan untuk GAN, yang selanjutnya dapat dibagi menjadi 2 bagian yang dilakukan secara berurutan.

Bagaimana Cara Melatih GAN?

Bagian 1:

Latih diskriminator dan bekukan generator, yang berarti set pelatihan untuk generator berubah menjadi False dan jaringan hanya akan melakukan forward pass dan tidak ada propagasi balik yang akan diterapkan.

Pada dasarnya diskriminator dilatih dengan data nyata dan memeriksa apakah dapat memprediksinya dengan benar, dan sama dengan data palsu untuk mengidentifikasinya sebagai palsu.

Bagian 2:

Latih generator dan bekukan pembeda. Dalam fase ini, kami mendapatkan hasil dari fase pertama dan dapat menggunakannya untuk memperbaiki keadaan sebelumnya untuk mencoba dan menipu diskriminator dengan lebih baik.

Langkah-Langkah Untuk Pelatihan

  1. Definisikan Masalahnya - tentukan masalah dan kumpulkan data.
  2. Pilih Arsitektur GAN - Tergantung pada masalah Anda, pilih bagaimana GAN Anda akan terlihat.
  3. Latih Diskriminator Tentang Data Nyata - Latih diskriminator dengan data nyata untuk memprediksinya sebagai nyata sebanyak n kali.
  4. Hasilkan Input Palsu Untuk Generator - Hasilkan sampel palsu dari generator
  5. Latih Diskriminator Tentang Data Palsu - Latih diskriminator untuk memprediksi data yang dihasilkan sebagai data palsu.
  6. Melatih Generator Dengan Output Diskriminator - Setelah mendapatkan prediksi diskriminator, latih generator untuk mengelabui diskriminator

Tantangan Jaringan Adversarial Generatif

Konsep GAN cukup menarik tetapi ada banyak kemunduran yang dapat menyebabkan banyak rintangan di jalurnya. Beberapa tantangan utama yang dihadapi oleh GAN adalah:

  1. Stabilitas diperlukan antara diskriminator dan generator jika tidak, seluruh jaringan akan jatuh. Dalam hal, jika Diskriminator terlalu kuat, generator akan gagal bekerja sama sekali. Dan jika jaringan terlalu lunak, gambar apa pun akan dibuat sehingga jaringan tidak berguna.
  2. GAN gagal total dalam menentukan posisi objek dalam hal berapa kali objek harus muncul di lokasi tersebut.
  3. Perspektif 3-D merepotkan GAN karena tidak dapat dipahami perspektif , ini akan sering memberikan gambar datar untuk objek 3-d.
  4. GAN memiliki masalah dalam memahami objek global . Ia tidak dapat membedakan atau memahami struktur holistik.
  5. Jenis GAN yang lebih baru lebih maju dan diharapkan dapat mengatasi kekurangan ini sama sekali.

Aplikasi Jaringan Adversarial Generatif

Berikut ini adalah beberapa aplikasi GAN.

Prediksi Frame Berikutnya Dalam Video

Prediksi peristiwa masa depan dalam bingkai video dimungkinkan dengan bantuan GAN. DVD-GAN atau Dual Video Discriminator GAN dapat menghasilkan 256 × 256 video dengan ketelitian tinggi hingga 48 frame. Ini dapat digunakan untuk berbagai keperluan termasuk pengawasan di mana kami dapat menentukan aktivitas dalam bingkai yang terdistorsi karena faktor lain seperti hujan, debu, asap, dll.

Dalam kumpulan konstan string, tidak akan ada dua objek string yang memiliki konten yang sama.

Teks ke Pembuatan Gambar

GAN perhatian berbasis objek (obj-GAN), melakukan sintesis teks-ke-gambar dalam dua langkah. Membangkitkan tata letak semantik adalah langkah awal dan kemudian menghasilkan citra dengan mensintesis citra dengan menggunakan generator citra de-konvolusional adalah langkah terakhir.

Ini dapat digunakan secara intensif untuk menghasilkan gambar dengan memahami keterangan, tata letak, dan memperhalus detail dengan mensintesis kata-kata. Ada studi lain tentang storyGAN yang dapat mensintesis seluruh storyboard dari paragraf belaka.

Meningkatkan Resolusi Gambar

Jaringan adversarial generatif resolusi super atau SRGAN adalah GAN yang dapat menghasilkan gambar resolusi super dari gambar resolusi rendah dengan detail yang lebih halus dan kualitas yang lebih baik.

Aplikasinya bisa sangat besar, bayangkan gambar berkualitas lebih tinggi dengan detail lebih halus yang dihasilkan dari gambar resolusi rendah. Jumlah bantuan yang akan dihasilkan untuk mengidentifikasi detail dalam gambar beresolusi rendah dapat digunakan untuk tujuan yang lebih luas termasuk pengawasan, dokumentasi, keamanan, pola deteksi, dll.

Terjemahan Gambar Ke Gambar

Pix2Pix GAN adalah model yang dirancang untuk terjemahan gambar-gambar tujuan umum.

Pembuatan Gambar Interaktif

GAN dapat digunakan untuk menghasilkan gambar interaktif juga, Laboratorium Ilmu Komputer dan kecerdasan buatan (CSAIL) telah mengembangkan GAN yang dapat menghasilkan model 3-D dengan pencahayaan dan refleksi realistis yang dimungkinkan oleh pengeditan bentuk dan tekstur.

Baru-baru ini, para peneliti telah menemukan model yang dapat mensintesis wajah yang diperagakan kembali yang dianimasikan oleh gerakan seseorang sambil mempertahankan penampilan wajah pada saat yang bersamaan.

Ini membawa kita ke bagian akhir artikel ini di mana kita telah mempelajari ‘Apa itu GAN”. Saya harap Anda jelas dengan semua yang telah dibagikan dengan Anda dalam tutorial ini.

cara membuat jframe di java

Jika Anda menemukan artikel tentang 'What Are GANs' ini relevan, lihat perusahaan pembelajaran online tepercaya dengan jaringan lebih dari 250.000 pelajar puas yang tersebar di seluruh dunia.

Kami di sini untuk membantu Anda dengan setiap langkah dalam perjalanan Anda dan menghasilkan kurikulum yang dirancang untuk siswa dan profesional yang ingin menjadi . Kursus ini dirancang untuk memberi Anda permulaan dalam pemrograman Python dan melatih Anda untuk konsep inti dan lanjutan Python bersama dengan berbagai Suka

Jika Anda menemukan pertanyaan, jangan ragu untuk menanyakan semua pertanyaan Anda di bagian komentar 'Apa Itu GAN' dan tim kami akan dengan senang hati menjawabnya.