### 11.11 Regularization and Dropout

Seperti yang sudah dijelaskan pada model linear. Kita ingin model mengeneralisasi
dengan baik (kinerja baik pada _training data_ dan _unseen examples_ ).
Kita dapat menambahkan fungsi regularisasi untuk mengontrol kompleksitas
ANN. Regularisasi pada ANN cukup _straightforward_ seperti regularisasi pada
_model linear_  (subbab 5.9). Kami yakin pembaca bisa mengeksplorasi sendiri.
Selain itu, agar ANN tidak “bergantung” pada satu atau beberapasynapse
_weight_ ssaja, kita dapat menggunakan _dropout_. _Dropout_ berarti me-nol-kan


160 11 Feed _forward_ Neural Network

nilai _synapse weights_ dengan nilai _rate_ tertentu. Misalkan kitanol-kan nilai
30% _synapse weights_ ( _dropout rate_ = 0.3) secara random. Hal ini dapat dicapai
dengan teknik _masking_, yaitu mengalikan _synapse weights_ dengan suatu _mask_.
Ingat kembali ANN secara umum, persamaan 11.13 dimanaWadalah
_synapse weights_,xadalah _input_ (dalam pembahasan saat ini, dapat merepresentasikan _hidden_
_state_ pada suatu layer),badalah _bias_ danfadalah fungsi
aktivasi (non-linear). Kita buat suatu _mask_ untuk _synapse weights_ seperti
pada persamaan 11.14, dimanapadalah vektor danpi= [0,1] merepresentasikansynapse
_weight_ diikutsertakan atau tidak.r% ( _dropout rate_ ) elemen
_vektor_ pbernilai 0. Biasanyapdiambil dari _bernoulli distribution_ [1]. Kemudian,
saat _feed forward_, kita ganti _synapse weights_ menggunakan _mask_ seperti
pada persamaan 11.15. Saat menghitung _backpropagation_, turunan fungsi juga
mengikutsertakan _mask_ ( _gradient_ di- _mask_ ). Kami sa _rank_ an untuk membaca
_paper_ oleh Srivastava et al. [62] tentang _dropout_ pada ANN. Contoh implementasi _dropout_ dapat
dilihat pada pranala berikut.^14 Teknik _regularization_
dan _dropout_ sudah menjadi metode yang cukup “standar” dan diaplikasikan
pada berbagai macam arsitektur.

```
o=f(x·W+b) (11.13)
```
```
W′=p·W (11.14)
```
```
o=f(x·W′+b) (11.15)
```
