L2-regularization

En reguleringsteknik, der tilføjer en straf til tabet baseret på kvadratet af vægtenes L2-norm for at forhindre overfitting.

Kort fortalt

L2-regularization tilføjer en bøde, der holder modelvægtene små, så modellen ikke overtilpasser sig træningsdata.

Kategori
teknik
Niveau
øvet

Betydninger

1
  1. 1

    Teknik til at begrænse modelkompleksitet ved at tilføje en straf proportional med kvadratet af vægtenes størrelse til tabsfunktionen.

    • Vi anvendte L2-regularization med λ=0.001 for at reducere overfitting.
    • L2-regularization svarer til weight decay i stokastisk gradient descent.

Hvornår bruges det

Bruges ofte i neural networks og lineære modeller som en måde at reducere overfitting og forbedre generalisering. Det implementeres ved at lægge en L2-norm straf til tabsfunktionen, typisk med en hyperparameter λ, der styrer styrken.

Formel

L(θ) = L_original(θ) + λ * ||w||_2^2, where ||w||_2^2 = Σ_i w_i^2

Kodeeksempel

import torch.optim as optim
# weight_decay parameter applies L2 penalty
optimizer = optim.SGD(model.parameters(), lr=0.01, weight_decay=0.01)

Eksempel på L2-regularization i PyTorch via weight_decay parameter.

Oprindelse

L2 henviser til L2-normen (euklidisk norm), og regularization betyder regulering på engelsk. Teknikken er baseret på Tikhonov-regularisering udviklet i 1943 af Andrey Tikhonov.

Kilder

1
  • Goodfellow, I., Bengio, Y., & Courville, A. (2016). Deep Learning.