### 5.9 Regularization

_Gradient-based method_ mengubah-ubah parameter modelwsehingga _loss_ dapat
diminimalkan. Perhatikan kembali Gambar 5.2, ibaratnya agar fungsi
aproksimasi kita menjadi sama persis dengan fungsi asli pada Gambar 5.1.
Perhatikan, karena nilaiwberubah-ubah seiring waktu, bisa jadi urutan _training_
_data_ menjadi penting.^9 Pada umumnya, kita menggunakan _batch method_
agar kinerja model tidak bias terhadap urutan data. Artinya, menghitung
_loss_ untuk beberapa data sekaligus. Hal ini akan kamu lebih mengerti setelah
mambaca bab 11.
Selain permasalahan model yang sensitif terhadap urutan _training data_,
_model_  yang kita hasilkan bisa jadi _overfitting_ juga. Yaitu memiliki kinerja
baik pada _training data_, tetapi memiliki kinerja buruk untuk _unseen data_.
Salah satu cara menghindari _overfitting_ adalah dengan menggunakan _regularization_.
Idenya adalah untuk mengontrol kompleksitas parameter (i.e. konfigurasi
parameter yang lebih sederhana lebih baik). Dengan ini, objektif _training_
pada persamaan 5.17 dapat kita ubah menjadi persamaan 5.27, dimana R(w)
adalah fungsi _regularization_ danλadalah parameter kontrol.

```
wˆ= arg min
w
```
```
L(w) +λR(w) (5.27)
```
(^9) Baca buku Yoav Goldberg [1] untuk mendapat penjelasan lebih baik.


```
5.10 Transformasi Data 79
```
Pilihan umum untuk fungsi _regularization_ pada umumnya adalahL 2 dan
L 1 norm. L 2 regularization menggunakan jumlah kuadrat dari Euclidean
_norm_ ^10 seluruh parameter, seperti pada persamaan 5.28. Sedangkan,L 1 regularizationmenggunakan
jumlah dari nilai _absolute-value norm_ seluruh parameter,
diberikan pada persamaan 5.29.

```
R(w) =‖w‖^22 =
```
#### ∑

```
i
```
```
(wi)^2 (5.28)
```
```
R(w) =‖w‖=
```
#### ∑

```
i
```
```
|wi| (5.29)
```
Perlu kamu perhatikan, metode _gradient descent_ memiliki syarat bahwa
fungsi yang digunakan haruslah dapat diturunkan ( _differentiable_ ).L 2 dapat
diturunkan pada seluruh poin, sementaraL 1 tidak dapat diturunkan pada semua
poin.^11 Kita dapat menggunakan teknik _subgradient_ untuk menyelesaikan
permasalahan ini. Kami serahkan pembaca untuk mengeksplorasi teknik tersebut
sendiri. Implikasi penggunakan regularisasi terhadap kompleksitas model
dibahas lebih lanjut pada bab 9.
Selain itu, ada hal lainnya yang perlu diperhatikan saat menggunakan
_gradient descent_ yaitu apakah suatu fungsi _convex_ atau _concave_. Izinkan saya
mengutip pernyataan dari buku Yoav Goldberg [1] halaman 31 secara langsung
menggunakan bahasa Inggris agar tidak ada makna yang hilang.

```
Convexity. In gradient-based optimization, it is common to distinguish between _convex_ (or _concave_ )
_function_ s and _non-concave_ functions. A _convex_
_function_ is a function whose second-derivative is always non-negative. As a
consequence, convex functions have a single minimum point. Similarly, _concave_
_function_ sare functions whose second-derivatives are always negative or
zero, and as a consequence have a single maximum point. Convex ( _concave_ )
_function_ s have the property that they are easy to minimize (maximize) using
_gradient-based optimization_ –simply follow the gradient until an extremum
_point_  is reached, and once it is reached we know we obtained the global extremum
_point_. In contrast, for functions that are neither convex or concave,
a gradient-based optimization procedure may converge to a local extremum
_point_, missing the global optimum.
```
