### 13.6 Architecture Ablation

Pada bab 9, kamu telah mempelajari _feature ablation_, yaitu memilih-milih
elemen pada _input_ (untuk dibuang), sehingga model memiliki kinerja optimal.
Pada _neural network_, proses _feature engineering_ mungkin tidak sepenting
pada model- _model_ yang sudah kamu pelajari sebelumnya (e.g., model linear)
karena ia dapat me _model_ kan interaksi yang kompleks dari seluruh elemen
_input_. Pada _neural network_, masalah yang muncul adalah memilih arsitektur
yang tepat. Untuk menyederhanakan pencarian arsitektur, pada umumnya
kita dapat mengganggap sebuah _neural network_ tersusun atas beberapa

(^18) https:// _deep_ _learning_ 4j.org/restrictedboltzmannmachine
(^19) https:// _deep_ _learning_ 4j.org/ _generative_ -adversarial- _network_


204 13 Arsitektur Neural Network

“modul”. Pembagian _neural network_ menjadi modul adalah hal yang relatif.
Untuk mencari tahu konfigurasi arsitektur yang memberikan performa maksimal,
kita dapat melakukan _architecture ablation_. Idenya mirip denganfeature
ablation, dimana kita mencoba mengganti-ganti bagian (modul) neural network.
Sebagai contoh, ingat kembali arsitektur _sequence to sequence_ dimana
kita memiliki _encoder_ dan _decoder_. Kita dapat menggunakan RNN, Bidirectional
RNN, ataupun Stacked RNN sebagai _encoder_. Hal ini adalah salah satu
contoh _architecture ablation_. Akan tetapi, bisa jadi kita mengasumsikan modul
yang lebih kecil. Sebagai contoh, menggunakan RNN _encoder_ padasequence
to sequencedan kita coba mengganti-ganti fungsi aktivasi.
_Architecture ablation_ ini bisa menjadi semakin rumit tergantung persepsi
kita tentang definisi modul pada _neural network_, seperti sampai menentukan
jumlah _hidden layers_ dan berapa jumlah unit pada masing-masing _layer_. Contoh
lain adalah memilih fungsi aktivasi yang cocok untuk setiap _hidden layer_.
Pada kasus ini “modul” kita adalah sebuah _layer_. Walaupun _neural network_
memberikan kita kemudahan dari segi pemilihan fitur, kita memiliki kesulitan
dalam menentukan arsitektur. Terlebih lagi, alasan pemilihan banyaknya _units_
pada suatu _layer_ (e.g., 512 dibanding 256 _units_ ) mungkin tidak dapat dijustifikasi
dengan akurat. Pada _feature ablation_, kita dapat menjustifikasi alasan
untuk menghilangkan suatu fitur. Pada _neural network_, kita susah menjelaskan
alasan pemilihan arsitektur (dan konfigurasi parameter) karenasearch
_space_ -nya jauh lebih besar.

