Overfitting: Regularisasi L2

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

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

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

Nilai Nilai kuadrat
w1 0,2 0,04
w2 -0,5 0,25
w3 5,0 25,0
w4 -1,2 1,44
w5 0,3 0,09
w6 -0,1 0,01
    26,83 = total

Perhatikan bahwa bobot yang mendekati nol tidak terlalu memengaruhi regularisasi L2, tetapi bobot yang besar dapat memberikan dampak yang sangat besar. Misalnya, dalam penghitungan sebelumnya:

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

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

Latihan: Periksa pemahaman Anda

Jika Anda menggunakan regularisasi L2 saat melatih model, apa yang biasanya terjadi pada kompleksitas keseluruhan model?
Kompleksitas sistem secara keseluruhan mungkin akan berkurang.
Karena regularisasi L2 mendorong bobot ke 0, kompleksitas keseluruhan mungkin akan menurun.
Kompleksitas keseluruhan model mungkin akan tetap konstan.
Hal ini sangat tidak mungkin terjadi.
Kompleksitas model secara keseluruhan mungkin akan meningkat.
Hal ini tidak mungkin terjadi. Ingat bahwa regularisasi L2 mendorong bobot mendekati 0.
Jika Anda menggunakan regularisasi L2 saat melatih model, beberapa fitur akan dihapus dari model.
Benar
Meskipun regularisasi L2 dapat membuat beberapa bobot menjadi sangat kecil, regularisasi ini tidak akan pernah mendorong bobot hingga nol. Oleh karena itu, semua fitur akan tetap memberikan kontribusi pada model.
Salah
Regularisasi L2 tidak pernah mendorong bobot hingga nol.

Tingkat regularisasi (lambda)

Seperti yang disebutkan, pelatihan berupaya 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. Karakter Yunani lambda 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 terjadinya overfitting.
  • Cenderung menghasilkan histogram bobot model yang memiliki karakteristik berikut:
    • distribusi normal
    • berat rata-rata 0.

Tingkat regularisasi rendah:

  • Menurunkan pengaruh regularisasi, sehingga meningkatkan kemungkinan overfitting.
  • Cenderung menghasilkan histogram bobot model dengan distribusi datar.

Misalnya, histogram bobot model untuk tingkat 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 laju regularisasi yang tinggi. Rata-ratanya adalah nol. Distribusi normal.

 

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

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

 

Memilih derajat regularisasi

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

Penghentian awal: alternatif untuk regularisasi berbasis kompleksitas

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

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

Penghentian awal adalah bentuk regularisasi yang cepat, tetapi jarang optimal. Model yang dihasilkan kemungkinan besar tidak akan sebaik model yang dilatih secara menyeluruh dengan tingkat regularisasi yang ideal.

Menemukan keseimbangan antara laju pembelajaran dan laju regularisasi

Kecepatan pembelajaran dan kecepatan regularisasi cenderung memindahkan bobot ke arah yang berlawanan. Tingkat pembelajaran yang tinggi sering kali menarik bobot menjauhi nol; tingkat regularisasi yang tinggi mendorong bobot mendekati nol.

Jika tingkat regularisasi tinggi dibandingkan dengan tingkat pembelajaran, bobot yang lemah cenderung menghasilkan model yang membuat prediksi yang buruk. Sebaliknya, jika rasio pembelajaran tinggi dibandingkan dengan rasio regularisasi, bobot yang kuat cenderung menghasilkan model yang terlalu cocok.

Tujuan Anda adalah menemukan keseimbangan antara kecepatan pembelajaran dan kecepatan regularisasi. Hal ini bisa menjadi tantangan. Yang terburuk, setelah Anda menemukan keseimbangan yang sulit dipahami tersebut, Anda mungkin harus mengubah laju pembelajaran. Selain itu, saat mengubah laju pembelajaran, Anda harus menemukan laju regularisasi yang ideal lagi.