Overfitting: regularização de L2

Regularização de L2 é uma métrica de regularização popular que usa a seguinte fórmula:

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

Por exemplo, a tabela a seguir mostra o cálculo de L2 regularização para um modelo com seis pesos:

Valor Valor quadrado
s1 0,2 0,04
m2 -0,5 0,25
m3 5.0 25.0
m4 -1,2 1,44
m5 0,3 0,09
m6 -0,1 0,01
    26,83 = total

Pesos próximos a zero não afetam a regularização de L2. mas grandes pesos podem causar um grande impacto. Por exemplo, na cálculo anterior:

  • Um único peso (w3) contribui com cerca de 93% da complexidade total.
  • Os outros cinco pesos coletivamente contribuem com apenas cerca de 7% da complexidade total.

A regularização de L2 incentiva pesos em direção a 0, mas nunca empurra pesos até zero.

Exercícios: testar seu conhecimento

Se você usar a regularização L2 ao treinar um modelo, qual vai acontecer com a complexidade geral do modelo?
A complexidade geral do sistema provavelmente diminuirá.
Como a regularização de L2 incentiva pesos a 0, a complexidade geral provavelmente diminuirá.
A complexidade geral do modelo provavelmente vai se manter constante.
Isso é muito improvável.
A complexidade geral do modelo provavelmente vai aumentar.
Isso é improvável. Lembre-se de que a regularização de L2 incentiva pesos em direção a 0.
Se você usar a regularização de L2 ao treinar um modelo, alguns atributos serão removidos do modelo.
Verdadeiro
Embora a regularização de L2 possa deixar alguns pesos muito pequeno, ele nunca vai colocar pesos totalmente em zero. Consequentemente, todos os atributos ainda contribuirão com algo para o modelo.
Falso
A regularização de L2 nunca aumenta os pesos ao zero.

Taxa de regularização (lambda)

Como observado, o treinamento tenta minimizar alguma combinação de perda e complexidade:

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

Desenvolvedores de modelos ajustam o impacto geral da complexidade no treinamento de modelos ao multiplicar o valor por um escalar chamado taxa de regularização. O caractere grego lambda normalmente simboliza a taxa de regularização.

Ou seja, os desenvolvedores de modelos visam fazer o seguinte:

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

Uma alta taxa de regularização:

  • Fortalece a influência da regularização, reduzindo as chances de o overfitting.
  • Tende a produzir um histograma de pesos de modelo com os seguintes características:
    • uma distribuição normal
    • um peso médio de 0.

Uma baixa taxa de regularização:

  • Reduz a influência da regularização, aumentando as chances de o overfitting.
  • Tende a produzir um histograma de pesos de modelo com uma distribuição plana.

Por exemplo, o histograma de pesos de modelo para uma alta taxa de regularização fica como mostrado na figura 18.

Figura 18. Histograma dos pesos de um modelo com média zero e
            uma distribuição normal.
Figura 18. Histograma de peso para uma alta taxa de regularização. A média é zero. Distribuição normal.

 

Por outro lado, uma baixa taxa de regularização tende a produzir um histograma mais plano, como mostrado na figura 19.

Figura 19. Histograma dos pesos de um modelo com uma média zero que
            está entre uma distribuição plana e uma normal
            e distribuição de dados.
Figura 19. Histograma de peso para uma taxa de regularização baixa. A média pode ou não ser zero.

 

Escolher a taxa de regularização

A taxa de regularização ideal produz um modelo que generaliza bem para dados novos e inéditos. Infelizmente, esse valor ideal depende dos dados, então é preciso fazer algumas sintonização.

Parada antecipada: uma alternativa à regularização baseada em complexidade

A parada antecipada é uma um método de regularização que não envolve um cálculo de complexidade. Em vez disso, a parada antecipada significa apenas encerrar o treinamento antes que o modelo converge totalmente. Por exemplo, o treinamento é encerrado quando a curva de perda do conjunto de validação começa a aumentar (a inclinação se torna positiva).

Embora a parada antecipada geralmente aumente a perda do treinamento, ela pode diminuir perda de teste.

A parada antecipada é uma forma rápida, mas raramente ideal, de regularização. É pouco provável que o modelo resultante seja tão bom quanto o modelo treinado. a taxa de regularização ideal.

Encontrar o equilíbrio entre a taxa de aprendizado e a taxa de regularização

Taxa de aprendizado e a taxa de regularização tende a puxar pesos em posições direções Uma taxa de aprendizado alta geralmente afasta os pesos de zero. uma alta taxa de regularização puxa os pesos em direção a zero.

Se a taxa de regularização for alta em relação à taxa de aprendizado, os pesos fracos tendem a produzir um modelo que faz previsões ruins. Por outro lado, se a taxa de aprendizado for alta em relação à regularização, os pesos fortes tendem a produzir um modelo de overfitting.

Seu objetivo é encontrar o equilíbrio entre a taxa de aprendizado e e a taxa de regularização. Isso pode ser um desafio. E o pior de tudo, quando você encontra esse equilíbrio inusitado, talvez seja necessário alterar a taxa de aprendizado. Ao alterar a taxa de aprendizado, você precisa encontrar novamente o valor ideal e a taxa de regularização.