Overfitting: Regularisasi L2

Regularisasi L2 adalah metrik regularisasi populer, yang menggunakan rumus berikut:

$$L_2\text{ regularization } = {w_1^2 + w_2^2 + ... + w_n^2}$$

Misalnya, tabel berikut menunjukkan penghitungan L2 regularisasi untuk model dengan enam bobot:

Nilai Nilai kuadrat
p1 0,2 0,04
p2 -0,5 0,25
p3 5,0 25,0
l4 -1,2 1,44
p5 0,3 0,09
l6 -0,1 0,01
    26,83 = total

Perhatikan bahwa bobot yang mendekati nol tidak memengaruhi regularisasi L2 banyak, tetapi bobot yang besar dapat berdampak besar. Misalnya, di kolom penghitungan sebelumnya:

  • Satu bobot (w3) berkontribusi pada sekitar 93% jumlah kompleksitas totalnya.
  • Lima bobot lainnya secara kolektif hanya berkontribusi sekitar 7% dari kompleksitas totalnya.

Regularisasi L2 mendorong bobot menuju 0, tetapi tidak pernah mendorong bobot hingga nol.

Latihan: Menguji pemahaman Anda

Jika Anda menggunakan regularisasi L2 saat melatih model, apa biasanya akan terjadi pada keseluruhan kompleksitas model?
Kompleksitas keseluruhan sistem mungkin akan menurun.
Karena regularisasi L2 mendorong bobot menuju 0, kompleksitas keseluruhan mungkin akan menurun.
Kompleksitas keseluruhan model mungkin akan tetap .
Hal ini sangat tidak mungkin terjadi.
Keseluruhan model akan semakin kompleks.
Hal ini tidak mungkin terjadi. Ingat bahwa regularisasi L2 mendorong bobot menuju 0.
Jika Anda menggunakan regularisasi L2 saat melatih model, beberapa fitur akan dihapus dari model.
Benar
Meskipun regularisasi L2 dapat menjadikan beberapa bobot sangat kecil, ia tidak akan pernah mendorong bobot apa pun hingga ke nol. Karenanya, semua fitur akan tetap berkontribusi pada model.
Salah
Regularisasi L2 tidak pernah mendorong bobot hingga nol.

Tingkat regularisasi (lambda)

Seperti yang telah disebutkan, upaya pelatihan untuk meminimalkan beberapa kombinasi kerugian dan kompleksitas:

$$\text{minimize(loss} + \text{ complexity)}$$

Developer model menyesuaikan dampak keseluruhan kompleksitas pada pelatihan model dengan mengalikan nilainya dengan skalar yang disebut tingkat regularisasi. Lambda karakter Yunani biasanya melambangkan laju regularisasi.

Artinya, developer model bertujuan untuk melakukan hal berikut:

$$\text{minimize(loss} + \lambda \text{ complexity)}$$

Tingkat regularisasi yang tinggi:

  • Memperkuat pengaruh regularisasi, sehingga mengurangi kemungkinan {i>overfitting<i}.
  • Cenderung menghasilkan histogram bobot model yang memiliki hal berikut karakteristik:
    • distribusi normal
    • bobot rata-rata 0.

Tingkat regularisasi yang rendah:

  • Menurunkan pengaruh regularisasi, sehingga meningkatkan peluang {i>overfitting<i}.
  • Cenderung menghasilkan histogram bobot model dengan distribusi datar.

Misalnya, histogram bobot model untuk rasio regularisasi yang tinggi mungkin terlihat seperti yang ditunjukkan pada Gambar 18.

Gambar 18. Histogram bobot model dengan rata-rata nol dan
            distribusi normal.
Gambar 18. Histogram bobot untuk tingkat regularisasi yang tinggi. Rata-rata adalah nol. Distribusi normal.

 

Sebaliknya, tingkat regularisasi yang rendah cenderung menghasilkan histogram yang lebih datar, yang ditunjukkan pada Gambar 19.

Gambar 19. Histogram bobot model dengan rata-rata nol yang
            berada di antara distribusi datar dan normal
            distribusi.
Gambar 19. Histogram bobot untuk tingkat regularisasi yang rendah. Nilai rata-rata mungkin atau tidak sama dengan nol.

 

Memilih derajat regularisasi

Tingkat regularisasi yang ideal menghasilkan model yang menggeneralisasi dengan baik untuk data baru yang sebelumnya tidak terlihat. Sayangnya, nilai ideal itu bergantung pada data, jadi Anda harus melakukan beberapa tuning.

Penghentian awal: alternatif untuk regularisasi berbasis kompleksitas

Penghentian awal adalah metode regularisasi yang tidak melibatkan penghitungan kompleksitas. Sebagai gantinya, penghentian awal hanya berarti mengakhiri pelatihan sebelum model sepenuhnya dikonvergensi. Misalnya, Anda mengakhiri pelatihan saat kurva kerugian untuk set validasi mulai meningkat (kemiringan menjadi positif).

Meskipun penghentian awal biasanya meningkatkan kerugian pelatihan, itu dapat mengurangi kerugian pengujian.

Penghentian awal adalah bentuk regularisasi yang cepat, namun jarang optimal. Model yang dihasilkan sangat tidak mungkin sebagus model yang dilatih secara menyeluruh pada tingkat regularisasi yang ideal.

Menemukan keseimbangan antara kecepatan pembelajaran dan kecepatan regularisasi

Kecepatan pembelajaran dan Tingkat regularisasi cenderung menarik bobot yang berlawanan petunjuk arah. Kecepatan pembelajaran yang tinggi sering kali menjauhkan bobot dari nol; tingkat regularisasi yang tinggi menarik bobot menuju nol.

Jika tingkat regularisasinya tinggi dalam kaitannya dengan laju pemelajaran, bobot yang lemah cenderung menghasilkan model yang membuat prediksi yang buruk. Sebaliknya, jika kecepatan pemelajaran tinggi sehubungan dengan regularisasi besar, bobot yang kuat cenderung menghasilkan model {i>overfit<i}.

Tujuan Anda adalah untuk menemukan keseimbangan antara kecepatan pembelajaran dan regularisasi. Hal ini dapat menjadi tantangan tersendiri. Yang terburuk, setelah Anda menemukan keseimbangan yang sulit dipahami, Anda mungkin harus mengubah kecepatan pemelajaran. Dan, ketika Anda mengubah kecepatan pemelajaran, Anda kembali harus menemukan regularisasi.