Workshop Deep Learning

Sesi 2 / Tugas kelompok

Studi ablasi RNN, LSTM, GRU vs ANN

Di Sesi 2 kita membandingkan empat model dengan satu konfigurasi. Di tugas ini kalian mengubah satu hyperparameter dalam satu waktu, memilih konfigurasi terbaik secara jujur dengan data validasi, lalu menguji apakah kesimpulannya tetap berlaku di lokasi lain di Milan.

Maks. 3 orang, satu kelasRepo GitHub publikLaporan IEEE ≤ 6 hlmLaTeX / Typst3 seed per konfigurasi

Tenggat

Rabu, 28 Oktober 2026, 23.59 WIB

Sisa waktu

--hari--jam--menit--detik

Cukup sekali per kelompok oleh ketua. Form otomatis ditutup saat tenggat.

01 / Alur kerja

Lima langkah dari clone sampai kumpul

Semua kode, data, dan template laporan sudah tersedia di folder starter. Kalian fokus pada eksperimen dan analisis.

  1. 1

    Bentuk kelompok & tentukan lokasi

    Kelompok 1–3 orang dari kelas yang sama. Kode lokasi = digit terakhir NIM terkecil di kelompok (lihat tabel lokasi).

  2. 2

    Salin starter menjadi repo publik

    Folder tugas/starter berisi notebook, data, template laporan, dan README. Jadikan repo GitHub publik, lalu isi README dengan nama & NIM seluruh anggota.

    git clone https://github.com/mctosima/dl-workshop.git
    cp -r dl-workshop/tugas/starter dlw-tugas-ra-122140057
    cd dlw-tugas-ra-122140057
    git init && git add . && git commit -m "Mulai tugas"
  3. 3

    Jalankan eksperimen

    Isi LOKASI_KELOMPOK di notebook, lalu jalankan dari atas ke bawah. Setiap run tercatat di hasil/ablasi.csv dan run yang sudah ada dilewati, jadi aman dilanjutkan bila terputus.

    uv sync
    uv run jupyter lab
  4. 4

    Tulis laporan dengan LaTeX atau Typst

    Format IEEE conference dua kolom, maks. 6 halaman termasuk referensi. Template sudah ada di starter (laporan-latex/ dan laporan-typst/). Microsoft Word tidak diterima.

  5. 5

    Kumpulkan lewat Tally

    Ketua mengisi form sekali untuk seluruh kelompok: URL repo + PDF laporan. Form otomatis ditutup saat tenggat.

Waktu komputasi: ± 280 run, sebagian besar < 15 detik. Total ± 1–2 jam di laptop CPU, jauh lebih cepat dengan GPU (mis. Google Colab). Coba kode dulu dengan CEPAT = True, tetapi hasil akhir wajib dengan CEPAT = False.

02 / Isi tugas

Lima bagian eksperimen

Satu eksperimen mengubah satu faktor dari konfigurasi acuan. Setiap konfigurasi dilatih dengan seed 0, 1, 2 dan dilaporkan sebagai rata-rata ± simpangan baku.

0wajib

Acuan & baseline naif

Konfigurasi acuan (4 model × 3 seed) dan tiga baseline naif di kotak Duomo sebagai titik pembanding.

Awajib

Ablasi wajib

5 faktor, satu per satu, untuk keempat model.

Bmin. 2 faktor

Ablasi pilihan

Pilih dari 7 faktor. Tulis hipotesis sebelum menjalankan, lalu uji.

Cwajib

Konfigurasi terbaik

Gabungkan nilai terbaik per model berdasarkan val MAE, lalu laporkan hasil di minggu test & Natal.

Dwajib

Uji generalisasi

Latih ulang acuan & terbaik di lokasi kelompok. Apakah kesimpulan dari Duomo tetap berlaku?

Konfigurasi acuan — sama dengan notebook 03 Sesi 2 (W = 24)

Panjang jendela W
24 jam
Horizon
1 jam
Ukuran hidden
ANN 32 · RNN 68 · LSTM 33 · GRU 38
Jumlah lapisan
ANN 2 · rekuren 1
Fitur
net, call, sms, jam (sin, cos), hari (sin, cos)
Optimizer · learning rate
Adam · 0,001
Batch size
64
Dropout · clipping
0 · tidak ada
Loss
MSE
Early stopping
patience 30, maks. 300 epoch
Seed
0, 1, 2

Bagian A — wajib, kelima faktor, keempat model

KodeFaktorNilai yang diujiYang diamati
A1Panjang jendelaW6 · 12 · 24 · 48 · 168 jamApakah jendela lebih panjang selalu lebih baik? Bandingkan jumlah parameter ANN vs model rekuren.
A2Ukuran hiddenhidden16 · 32 · 64 · 128Kapasitas vs overfitting pada 672 sampel train; plot juga MAE terhadap jumlah parameter.
A3Jumlah lapisanlayers1 · 2 · 3Apakah menumpuk lapisan membantu? Perhatikan jumlah epoch sampai early stopping.
A4Learning ratelr0,0001 · 0,001 · 0,01Apakah training mentok di 300 epoch? Seberapa stabil hasil antar seed?
A5Kelompok fiturfiturnet · net+call+sms · net+waktu · semuaFitur mana yang paling berguna, dan apakah jawabannya berbeda antar model?

Bagian B — pilih minimal 2, tulis hipotesis sebelum menjalankan

KodeFaktorNilai yang diujiYang diamati
B1Batch sizebatch16 · 64 · 256Update lebih sering tetapi berisik vs lebih jarang tetapi halus.
B2Dropoutdropout0 · 0,2 · 0,5Apakah regularisasi membantu pada data sekecil ini?
B3OptimizeroptimizerAdam · AdamW · SGDApakah SGD butuh learning rate berbeda?
B4Fungsi losslossMSE · MAE · HuberLoss mana yang terbaik untuk metrik MAE, dan untuk RMSE?
B5Patiencepatience10 · 30 · 60Seberapa sensitif hasil terhadap kapan training dihentikan?
B6Horizonhorizon1 · 6 · 24 jamPada horizon berapa model mulai kalah dari baseline "minggu lalu"?
B7Gradient clippingcliptidak ada · 0,5 · 1,0 (lr 0,01)Apakah clipping menstabilkan RNN dengan learning rate besar?
Penting: konfigurasi terbaik (Bagian C) dipilih dengan val MAE. Minggu test (16–22 Des) dan Natal (23–29 Des) hanya dipakai sekali untuk pelaporan akhir. Bila gabungan nilai terbaik justru lebih buruk dari acuan, laporkan apa adanya. Itu temuan yang sah.

03 / Bagian D

Lokasi kelompok

Kode lokasi = digit terakhir NIM terkecil di kelompok. Contoh: NIM 122140057, 122140112, 122140230 → NIM terkecil 122140057 → lokasi 7.

Peta rata-rata aktivitas internet per kotak di Milan dengan 10 lokasi tugas (kode 0–9) dan kotak Duomo
KodeLokasiKotak
0Stazione CentraleStasiun utama, sangat ramai6165
1Navigli (Darsena)Kanal & hiburan malam4555
2Università BocconiKampus4460
3Stadio San SiroStadion, trafik rendah dengan lonjakan5738
4Politecnico di MilanoKampus5772
5Bandara LinateSekitar bandara, trafik rendah4489
6Parco SempioneTaman kota5455
7Università BicoccaKampus di pinggir kota7467
8CityLifePerkantoran & hunian baru5749
9Corso ComoKawasan malam, Porta Garibaldi5859

04 / Luaran

Repo publik + laporan IEEE

Laporan wajib ditulis dengan LaTeX atau Typst. Laporan dari Microsoft Word tidak diterima.

Repo GitHub publik

  • README memuat nama & NIM seluruh anggota, kelas, dan lokasi kelompok
  • tugas_ablasi.ipynb di-commit beserta output-nya
  • Folder hasil/ lengkap: ablasi.csv (seluruh run), tabel, grafik
  • Sumber laporan (LaTeX/Typst) beserta PDF-nya
  • Commit terakhir sebelum tenggat yang dinilai

Laporan PDF

  • Format IEEE conference dua kolom, maks. 6 halaman termasuk referensi
  • Ditulis dengan LaTeX atau Typst — Microsoft Word tidak diterima
  • Hasil dilaporkan sebagai rata-rata ± simpangan baku (3 seed)
  • Pembahasan menjelaskan mengapa, bukan hanya mengulang angka
  • Memuat kontribusi anggota dan pernyataan penggunaan AI

Template laporan

LaTeX · IEEEtran

Buka langsung di Overleaf (proyek baru dibuat otomatis), atau unduh ZIP dan compile lokal dengan latexmk -pdf main.tex.

Typst · charged-ieee

Unduh ZIP, lalu unggah isinya ke proyek baru di typst.app, atau compile lokal dengan typst compile main.typ.

05 / Penilaian

Bobot & aturan main

Repo & reprodusibilitas15%
Bagian 0 & A30%
Bagian B15%
Bagian C & D15%
Laporan25%
  • Pilih konfigurasi terbaik dengan val MAE. Minggu test hanya untuk pelaporan akhir.
  • Setiap angka di laporan harus bisa dilacak ke hasil/ablasi.csv di repo. Angka yang tidak dapat dilacak dianggap rekayasa.
  • Hasil akhir wajib dengan CEPAT = False (3 seed). CEPAT = True hanya untuk mencoba kode.
  • Alat AI boleh dipakai untuk kode atau bahasa, asalkan dituliskan di laporan.

Sudah selesai? Ketua kelompok mengumpulkan URL repo dan PDF laporan sebelum Rabu, 28 Oktober 2026, 23.59 WIB.

Kumpulkan di Tally