Skip to content

Soft Computing

Umpan balik

Mohon untuk mengisi formulir umpan balik perkuliahan di sini.

Pendahuluan

Kuliah ini akan meminta Anda untuk belajar menggunakan deep learning dalam berbagai kasus. Kemampuan pemrograman dalam bahasa Python menjadi syarat bagi Anda untuk dapat mengikuti kuliah ini. Sebagai referensi, Anda direkomendasikan untuk belajar dari buku Deep Learning yang ditulis oleh Ian Goodfellow dkk. Buku dari Michael Nielsen tentang Neural Networks and Deep Learning juga bisa menjadi sumber yang baik.

Referensi

Kuliah ini banyak mengadaptasi materi dari fast.ai dan CS230: Deep Learning dari Stanford University.

Anda dapat membuat clone dari repositori mata kuliah ini di sini.

Pengenalan Deep Learning

Salindia minggu ke-1: Pendahuluan

Administrasi kuliah dan beberapa contoh penerapan deep learning.

Model Linear

Salindia minggu ke-2: Model Linear

Sebelum masuk ke materi deep learning, Anda akan dikenalkan pada building blocks-nya, yaitu regresi linear dan logistik. Bagaimana Anda dapat melakukan prediksi dengan data yang ada? Anda akan dikenalkan dengan model matematis yang dijadikan dasar dalam metode deep learning.

Referensi

Untuk yang sifatnya lebih praktikal, Anda dapat melihat pendahuluannya di sini.

Contoh pencarian solusi tertutup untuk nilai w dapat dilihat di sini.

Neural Networks

Salindia minggu ke-3: Neural Networks

Apa hubungannya model linear dengan neural networks? Mengapa pula disebut sebagai neural networks?

Referensi

Sebagai pendahuluan, Anda dapat membaca materi CS231n.

Salindia minggu ke-4: Generalisation

Lab 1: Multilayer Perceptron

Bagaimana cara untuk membuat model neural networks yang robust? Apa saja yang dapat dilakukan untuk menghindari overfitting?

Salindia minggu ke-5: Optimisation

Materi minggu ini berfokus pada metode yang dapat dilakukan untuk menghasilkan model deep learning yang bekerja dengan baik. Anda akan dikenalkan dengan regularisasi L2 dan batch normalisation, beberapa fungsi aktivasi baru, serta optimasi model dengan hyperparameter tuning.

Tugas 1

Notebook Tugas 1

Dalam tugas ini, Anda akan mencoba membuat regresi logistik dengan TensorFlow/Keras dan membandingkan kinerja model wide vs deep learning.

Tenggat

Senin, 29 Oktober 2018, pukul 23.55 WIB

Convolutional Neural Networks

Salindia minggu ke-6: Transfer Learning

Transfer learning adalah salah satu cara paling sederhana untuk mengadaptasi arsitektur neural networks yang sudah berhasil di suatu tugas untuk mengerjakan tugas yang lain. Pemanfaatan model seperti ResNet50 atau Inception V3 terbukti memudahkan proses pembentukan model untuk klasifikasi gambar dengan data latih yang relatif sedikit.

Referensi

Anda dapat menyimak kuliah pertama dari fast.ai dan blog dari Keras tentang transfer learning.

Tugas 2

Notebook Tugas 2

Dalam tugas ini, Anda akan mencoba membandingkan model Multilayer Perceptron dengan Convolutional Neural Network yang telah merevolusi dunia computer vision. Dataset yang Anda gunakan dalam tugas ini adalah CIFAR-10.

Tenggat

Rabu, 2 Januari 2019, pukul 23.55 WIB

Deep Residual Networks

Salindia minggu ke-9: ResNet

Setelah memanfaatkan model ResNet di pertemuan ke-6, kita akan membahas apa yang terjadi di belakang layar dalam arsitektur deep residual networks. Selain itu, akan dibahas pula tentang salah satu arsitektur baru yang berpotensi mengubah cara pandang orang terhadap convolutional layers, yaitu Perturbative Neural Networks.

Tugas 3

Kompetisi Kaggle

Dalam tugas kali ini, Anda akan mencoba memanfaatkan transfer learning untuk mengklasifikasikan gambar nasi goreng dan ramen. Anda harus menggunakan situs kompetisi Kaggle untuk mengumpulkan prediksi Anda. Nilai Anda untuk tugas ini akan sangat tergantung pada akurasi yang Anda dapatkan. Keterangan lebih lanjut dapat dilihat pada tautan di atas.

Tenggat

Senin, 19 November 2018, pukul 23.59 WIB

Contoh solusi

Contoh solusi untuk tugas 3 dapat dilihat di sini.

Neural Embeddings

Salindia minggu ke-10: Autoencoders

Sebagai bagian dari prediksi yang lebih baik, neural networks juga membantu dalam mengekstraksi fitur yang ada dalam data. Tidak jarang ekstraksi fitur tersebut juga dapat divisualisasikan dan diinterpretasi dengan cara yang berbeda. Salah satu metode untuk melakukan ekstraksi fitur ini secara unsupervised learning adalah dengan arsitektur autoencoders.

Deep Learning for NLP

Salindia minggu ke-11: DL for NLP

Kesuksesan deep learning tidak hanya terjadi di bidang computer vision, tetapi juga di pemrosesan bahasa natural (NLP). Pekan ini, kuliah akan diisi oleh Kemal Kurniawan, Research Scientist dari kata.ai, sebuah perusahaan yang bergerak di bidang NLP. Topik bahasannya antara lain: RNN, LSTM, dan language modelling dengan deep learning. Untuk sumber daya yang berhubungan dengan NLP, Anda bisa mengakses kurasi yang dilakukan oleh Kemal di sini.

Generative Adversarial Networks

Salindia minggu ke-12: Generative Adversarial Networks

Seperti yang telah dipelajari di minggu ke-10, neural networks dapat digunakan untuk menghasilkan "data baru". Namun, model generatif dengan neural networks tidak hanya terbatas pada VAE, tetapi ada Generative Adversarial Networks (GANs). Pekan ini kita akan belajar bagaimana GAN bekerja dan perbandingannya dengan model lain. Beberapa aplikasi menarik yang menggunakan GAN dapat dilihat di sini.

Tugas Akhir

Semua materi terkait tugas akhir dapat dilihat di sini.