Regularização: por que multiplicar por 1 / 2m?

9

Nas notas da terceira semana de aula da aula Coursera Machine Learning de Andrew Ng , um termo é adicionado à função de custo para implementar a regularização:

J+(θ)=J(θ)+λ2mj=1nθj2

As notas da palestra dizem:

Também podemos regularizar todos os nossos parâmetros teta em um único somatório:

minθ 12m [i=1m(hθ(x(i))y(i))2+λ j=1nθj2]

tarde, 2 m são aplicados aotermo de regularização de redes neurais:12m

Lembre-se de que a função de custo para regressão logística regularizada era:

J(θ)=1mi=1m[y(i) log(hθ(x(i)))+(1y(i)) log(1hθ(x(i)))]+λ2mj=1nθj2

Para redes neurais, será um pouco mais complicado:

J(Θ)=1mi=1mk=1K[yk(i)log((hΘ(x(i)))k)+(1yk(i))log(1(hΘ(x(i)))k)]+λ2ml=1L1i=1slj=1sl+1(Θj,i(l))2
  • Por que a metade constante é usada aqui? Para que seja cancelado na derivada ?J
  • Por que a divisão por exemplos de treinamento? Como a quantidade de exemplos de treinamento afeta as coisas?m
Tom Hale
fonte
você tem certeza de que 1 / m está na regularização e não na resposta de J (theta) AFAIK @DikranMarsupial está fazendo essa suposição ...... ou J (theta) em si tem um termo de 1 / m?
seanv507
Essa suposição está incorreta - são aplicados à função de custo não regularizado e ao termo de regularização. Atualizei a pergunta para fornecer as fórmulas completas. 12m
21717 Tom Hale

Respostas:

5

Vamos supor que você tenha 10 exemplos e não divida o custo de regularização de L2 pelo número de exemplos m . Então, uma "dominância" do custo de regularização de L2 em comparação com um custo de entropia cruzada será de 10: 1, porque cada exemplo de treinamento pode contribuir para o custo geral proporcionalmente a 1 / m = 1/10.

Se você tiver mais exemplos, digamos, 100, então o "domínio" do custo de regularização L2 será algo como 100: 1, portanto, você deve diminuir um λ de acordo, o que é inconveniente. É melhor ter λ constante, independentemente do tamanho do lote.

Atualização: Para tornar esse argumento mais forte, criei um caderno jupiter .

grez
fonte
11
Hmm, mas não é o objetivo do fator 1 / m antes da função de custo que cada exemplo de treinamento contribui igualmente para o custo? Portanto, como já estamos calculando a média dos custos individuais, isso não deve ser a causa do domínio do termo L2. Entretanto, vejo em sua grande simulação que o fator 1 / m também antes do termo L2 ajuda. Eu apenas não entendo a intuição (ainda).
Milania 4/06/19
Por que isso é inconveniente? é simples dividir o custo de L2 pelo número de amostras. Eu acho que talvez você tenha expressado errado. Acho que você quis dizer que é inconveniente dimensionar manualmente o custo de L2 toda vez, é melhor dividir pelo número de amostras como parte da fórmula para dimensioná-lo automaticamente.
SpaceMonkey
6

J(θ)mλmJ(θ)mθ

Dikran Marsupial
fonte
mmλmmnm
A função de perda na pergunta é uma média em todos os exemplos (ou seja, é dividida por m), não uma soma, portanto não vejo como essa resposta funciona.
Denziloe 12/07/19
@Denziloe também é aplicado ao termo de regularização.
Dikran Marsupial 13/07/19
2

Eu me perguntei exatamente a mesma coisa ao fazer este curso e acabei pesquisando um pouco sobre isso. Darei uma resposta curta aqui, mas você pode ler uma visão geral mais detalhada em um post que escrevi sobre isso .

Acredito que pelo menos parte da razão para esses coeficientes de escala é que a regularização do L² provavelmente entrou no campo do aprendizado profundo através da introdução do conceito relacionado, mas não idêntico, de queda de peso.

O fator 0.5 está aí para obter um bom coeficiente λ-único para a queda de peso no gradiente e o dimensionamento por m ... bem, existem pelo menos 5 motivações diferentes que eu encontrei ou sugeri:

  1. Um efeito colateral da descida do gradiente em lote: quando uma única iteração da descida do gradiente é formalizada em todo o conjunto de treinamento, resultando no algoritmo algumas vezes chamado descida em gradiente em lote, o fator de escala de 1 / m, introduzido para tornar o custo comparável em conjuntos de dados de tamanhos diferentes, é aplicado automaticamente ao termo de redução de peso.
  2. Recupere o peso de um único exemplo: veja a intuição interessante de grez.
  3. Representatividade do conjunto de treinamento: faz sentido reduzir a regularização à medida que o tamanho do conjunto de treinamento aumenta, conforme estatisticamente, sua representatividade da distribuição geral também aumenta. Basicamente, quanto mais dados tivermos, menor será a regularização.
  4. Tornando λ comparável: esperançosamente atenuando a necessidade de alterar λ quando m mudar, esse dimensionamento torna λ comparável entre diferentes conjuntos de dados de tamanho. Isso torna λ um estimador mais representativo do grau real de regularização exigido por um modelo específico em um problema de aprendizagem específico.
  5. Valor empírico: O ótimo notebook grezdemonstra que isso melhora o desempenho na prática.
ShayPal5
fonte
0

Eu também estava confuso sobre isso, mas depois em uma palestra para deeplearning.ai Andrew sugere que essa é apenas uma constante de escala:

http://www.youtube.com/watch?v=6g0t3Phly2M&t=2m50s

Talvez haja uma razão mais profunda para usar 1 / 2m, mas suspeito que seja simplesmente um hiperparâmetro.

Keyan P
fonte
Isso não responde à pergunta.
Michael R. Chernick