Spesialisasi Jaringan Adversarial Generatif di Coursera (ditawarkan oleh deeplearning.ai)
Tugas pemrograman dari semua kursus di Spesialisasi Coursera GAN yang ditawarkan oleh deeplearning.ai
.
Kursus
Spesialisasi GAN di Coursera berisi tiga kursus:
Kursus 1: Membangun Jaringan Adversarial Generatif Dasar
Kursus 2: Membangun Jaringan Adversarial Generatif yang Lebih Baik
Kursus 3: Menerapkan Generative Adversarial Networks (GANs)
Tentang GAN
Generative Adversarial Networks (GANs) adalah model pembelajaran mesin canggih yang mampu menghasilkan keluaran gambar, video, dan suara yang realistis.
Berakar pada teori permainan, GAN memiliki penerapan yang luas: mulai dari meningkatkan keamanan siber dengan melawan serangan musuh dan menganonimkan data untuk menjaga privasi hingga menghasilkan gambar canggih, mewarnai gambar hitam putih, meningkatkan resolusi gambar, membuat avatar, dan membuat avatar. mengubah gambar 2D menjadi 3D, dan banyak lagi.
Seiring dengan meningkatnya daya komputasi, popularitas GAN dan kemampuannya juga meningkat. GAN telah membuka banyak arah baru: mulai dari menghasilkan kumpulan data dalam jumlah besar untuk melatih model pembelajaran mesin dan memungkinkan model pembelajaran tanpa pengawasan yang kuat hingga menghasilkan keluaran yang lebih tajam, terpisah, dan akurat. GAN juga telah menginformasikan penelitian di bidang yang berdekatan seperti pembelajaran permusuhan, contoh dan serangan permusuhan, ketahanan model, dll.
Tentang Spesialisasi ini
Spesialisasi Jaringan Adversarial Generatif (GANs) deeplearning.ai memberikan pengenalan menarik tentang pembuatan gambar dengan GAN, memetakan jalur dari konsep dasar hingga teknik tingkat lanjut melalui pendekatan yang mudah dipahami. Panduan ini juga mencakup implikasi sosial, termasuk bias dalam ML dan cara mendeteksinya, pelestarian privasi, dan banyak lagi.
Bangun basis pengetahuan yang komprehensif dan dapatkan pengalaman langsung di GAN. Latih model Anda sendiri menggunakan PyTorch, gunakan model tersebut untuk membuat gambar, dan evaluasi berbagai GAN tingkat lanjut.
Tentang kamu
Spesialisasi ini ditujukan untuk insinyur perangkat lunak, pelajar, dan peneliti dari bidang apa pun, yang tertarik dengan pembelajaran mesin dan ingin memahami cara kerja GAN.
Spesialisasi ini menyediakan jalur yang dapat diakses oleh semua tingkat pelajar yang ingin masuk ke ruang GAN atau menerapkan GAN pada proyek mereka sendiri, bahkan tanpa pemahaman sebelumnya tentang penelitian matematika dan pembelajaran mesin tingkat lanjut.
Tugas Pemrograman
Kursus 1: Membangun Jaringan Adversarial Generatif Dasar (GAN)
- Ini adalah mata kuliah pertama Spesialisasi Generative Adversarial Networks (GANs).
Minggu 1: Pengantar GAN
- Pelajari tentang GAN dan aplikasinya, pahami intuisi di balik komponen dasar GAN, dan buat GAN Anda sendiri menggunakan PyTorch.
- Penugasan:
Minggu 2: GAN Konvolusional Mendalam
- Bangun GAN yang lebih canggih menggunakan lapisan konvolusional. Pelajari tentang fungsi aktivasi yang berguna, normalisasi batch, dan konvolusi yang dialihkan untuk menyempurnakan arsitektur GAN Anda dan menerapkannya untuk membangun DCGAN tingkat lanjut yang khusus untuk memproses gambar.
- Penugasan:
- GAN Konvolusional Dalam (DCGAN)
Minggu 3: GAN Wasserstein dengan Normalisasi
- Kurangi kejadian kegagalan GAN karena ketidakseimbangan antara generator dan diskriminator dengan mempelajari teknik tingkat lanjut seperti WGAN untuk mengurangi pelatihan yang tidak stabil dan keruntuhan mode dengan W-Loss dan pemahaman tentang Kontinuitas Lipschitz.
- Penugasan:
- Wasserstein GAN dengan Penalti Gradien (WGAN-GP)
Minggu 4: GAN Bersyarat dan Terkendali
- Pahami cara mengontrol GAN Anda secara efektif, memodifikasi fitur dalam gambar yang dihasilkan, dan membangun GAN bersyarat yang mampu menghasilkan contoh dari kategori yang ditentukan.
- Tugas:
- Bangun GAN Bersyarat
- Generasi yang Dapat Dikendalikan
Kursus 2: Membangun Jaringan Adversarial Generatif (GAN) yang Lebih Baik
- Ini adalah kursus kedua dari Spesialisasi Generative Adversarial Networks (GANs).
Minggu 1: Evaluasi GAN
- Pahami tantangan dalam mengevaluasi GAN, pelajari kelebihan dan kekurangan berbagai ukuran kinerja GAN, dan terapkan metode Fréchet Inception Distance (FID) menggunakan penyematan untuk menilai keakuratan GAN.
- Penugasan:
- Mengevaluasi Jarak Awal GAN / Fréchet
Minggu 2: Kekurangan dan Bias GAN
- Cari tahu kelemahan GAN jika dibandingkan dengan model generatif lainnya, temukan kelebihan/kekurangan model ini — plus, pelajari berbagai penyebab bias dalam pembelajaran mesin, mengapa hal ini penting, dan pendekatan untuk mengidentifikasinya di GAN .
- Kuis:
- Penugasan:
- Laboratorium:
- Autoencoder Variasi (VAE)
Minggu 3: StyleGAN dan Kemajuan
- Pahami bagaimana StyleGAN meningkatkan model sebelumnya dan menerapkan komponen serta teknik yang terkait dengan StyleGAN, yang saat ini merupakan GAN paling canggih dengan kemampuan canggih
- Penugasan:
- Buku Catatan Opsional:
Kursus 3: Menerapkan Generative Adversarial Networks (GANs)
- Ini adalah mata kuliah ketiga dalam Spesialisasi Generative Adversarial Networks (GANs).
Minggu 1: GAN untuk Augmentasi Data dan Pelestarian Privasi
- Jelajahi aplikasi GAN dan periksa dengan augmentasi data, privasi, dan anonimitas.
- Tingkatkan model AI hilir Anda dengan data yang dihasilkan GAN.
- Penugasan:
Minggu 2: Terjemahan Gambar-ke-Gambar
- Manfaatkan kerangka terjemahan gambar-ke-gambar dan identifikasi perluasan, generalisasi, dan penerapan kerangka ini pada modalitas di luar gambar.
- Terapkan Pix2Pix, GAN terjemahan gambar-ke-gambar berpasangan, untuk mengadaptasi citra satelit untuk memetakan rute (dan sebaliknya) dengan generator U-Net canggih dan arsitektur diskriminator PatchGAN.
- Tugas:
Minggu 3: Terjemahan Tidak Berpasangan Gambar-ke-Gambar
- Bandingkan terjemahan gambar-ke-gambar berpasangan dengan terjemahan gambar-ke-gambar tidak berpasangan dan identifikasi bagaimana perbedaan utamanya memerlukan arsitektur GAN yang berbeda.
- Terapkan CycleGAN, model terjemahan gambar-ke-gambar yang tidak berpasangan, untuk mengadaptasi kuda menjadi zebra (dan sebaliknya) dengan dua GAN dalam satu.
- Penugasan:
Penafian
Saya menyadari betapa sulitnya waktu yang dihabiskan orang untuk membangun intuisi, memahami konsep baru, dan men-debug tugas. Solusi yang diunggah di sini hanya untuk referensi . Mereka dimaksudkan untuk membuka blokir Anda jika Anda terjebak di suatu tempat. Harap jangan menyalin bagian mana pun dari kode apa adanya (tugas pemrograman cukup mudah jika Anda membaca instruksinya dengan cermat). Demikian pula, cobalah sendiri kuisnya sebelum Anda merujuk pada solusi kuis.