Anda di halaman 1dari 7

Nama : Bahiyah Keiko Riyangde

NPM : 21218343

Kelas : 4EB01

LAPORAN AKHIR M2

Pada praktikum minggu 2 dengan mode hands-on ini, materi yang diberikan pemapar
materi adalah membuat GAN dengan bahasa pemrograman Python 3. Berikut adalah
langkah-langkahnya.

1. Import Library
Langkah pertama adalah mendefinisikan terlebih dahulu library yang akan digunakan.
Ketikan coding seperti pada gambar di bawah ini. Perlu di perhatikan juga, untuk
memastikan bahwa data tersebut telah ada atau terinstall pada perangkat yang akan
digunakan untuk membuat GAN atau terdapat di server DGX.
Dataset yang digunakan pada praktikum ini adalah dataset yang dimiliki oleh keras
yang bernama MNIST. Selain MNIST, keras juga memiliki banyak dataset lain yang
dapat digunakan. Cara merubahnya adalah pada coding In [1], ganti import mnist
dengan dataset yang ingin digunakan.
Gambar 1 (Langkah 1)

2. Mendefinisikan Variabel untuk Neural Network dan Data


Langkah kedua adalah mendefinisikan variabel yang akan digunakan untuk
membangun arsitektur GAN. Pada praktikum ini, variabel yang akan didefinisikan
adalah output ukuran gambar GAN, channel warna, variable noise/latent yang akan
membentuk gambar (image shape), serta optimizer.
 Ukuran gambar output GAN: 28 x 28 pixels
 Channel warna: Grayscale (kode 1)
 Input variabel image shape yang berisikan informasi image width, image
height, dan channel warna
 Menentukan variabel latent untuk menentukan berapa banyak noise / latent
yang nantinya akan membentuk gambar yang dibuat algoritma GAN. Variabel
latent yang digunakan pada praktikum ini adalah 100.
 Menentukan algoritma optimizer untuk optimisasi pembelajaran yang
dilakukan algoritma GAN. Algoritma yang digunakan pada praktikum ini
adalah stochastic gradient descent / adam optimizer dengan learning rate
sebesar 0.0001. Nilai ini adalah nilai yang direkomendasikan ketika ingin
membangun sebuah model GAN.

Gambar 2 (Langkah 2)
3. Membentuk Generator
Langkah ketiga adalah membentuk komponen generator. Generator adalah bagian dari
GAN yang bertugas untuk belajar membuat data palsu dengan memasukkan umpan
balik dari discriminator dan belajar untuk membuat agar diskriminator berhasil
mengklasifikan outputnya sebagai yang sebeneranya atau nyata.
Untuk membentuk komponen generator, kita harus menentukan sebuah fungsi berupa
build generator. Selanjutnya adalah mendefinisikan model yang ingin kita buat, yakni
menggunakan model neural network sequential. Hal ini dikarenakan 99% model
neural network berbentuk sequential. Langkah selanjutnya adalah menambahkan
model dence dan batch normal. Dan terakhir adalah menjalankan fungsi yang telah
dibangun. Ketikan coding seperti pada gambar 3.1 – 3.3 berikut di bawah ini.

#Note: Semakin banyak parameter yang digunakan, semakin banyak pula informasi
yang direkam oleh model. Selain itu, karena terdapat ketidaksesuaian ukuran final
output dengan yang telah didefinisikan sebelumnya pada coding yang dilakukan, pada
pembuatan model final gunakanlah fungsi aktivasi ‘tanh’, dan perintah reshape, lalu
run kembali.

Gambar 3.1 (Langkah 3)


Gambar 3.2 (Langkah 3)

Gambar 3.3 (Langkah 3)


4. Mendefinisikan Discriminator
Langkah keempat adalah mendefinisikan diskriminator. Diskriminator dalam GAN
hanyalah sebuah fungsi klasifikasi yang mencoba untuk membedakan data nyata dan
dan data yang dibuat oleh generator. Diskriminator nisa menggunakan arsitektur
jaringan apapun yang sesuai dengan jenis data yang diklasifikasikan.
Dalam langkah ini, kita masih mendefinisikan discriminator dengan model sequential.
Selanjutnya adalah mereturn model sesuai dengan output yang diinginkan dengan
menggunakan menu blast dan mendefinisikan sebuah model lagi dengan ukuran yang
diinginkan. Ketikkan coding sesuai gambar 4.1 – 4.2 di bawah ini.

#Note: Semakin banyak layer yang di definisikan, semakin baik pula model GAN
yang dibuat. Namun hal ini juga memperbesar kebutuhan komputasi yang dibutuhkan
untuk menjalankan kode program tersebut.

Gambar 4.1 (Langkah 4)


Gambar 4.2 (Langkah 4)

5. Menghubungkan Discriminator dan Generator untuk Membentuk GAN


Langkah kelima dan terakhir dalam praktikum kali ini adalah menghubungkan
diskriminator dan generator yang telah dibuat untuk membentuk sebuah GAN.
Caranya adalah cukup dengan mendefinisikan GAN sebagai nol network model
sequential, kemudian tambahkan discriminator yang telah dibuat, lalu lakukan
kompilasi terhadap model GAN tersebut dengan model loss function ‘binary
crossentropy’ dan optimizer ‘adam’.
#Note: Jangan lupa untuk mengset discriminator training menjadi ‘false’ karena
diskriminator akan di train di luar algoritma GAN, dan tambhakan kompilasi terhadap
model GAN tersebut dengan model loss function ‘binary crossentropy’ dan optimizer
‘adam’.
Gambar 5 (Langkah 5)

Anda mungkin juga menyukai