O que são regularidades e regularização?


12

Estou ouvindo essas palavras cada vez mais enquanto estudo o aprendizado de máquina. De fato, algumas pessoas ganharam a medalha Fields trabalhando em regularidades de equações. Então, acho que esse é um termo que se estende da física estatística / matemática ao aprendizado de máquina. Naturalmente, várias pessoas que perguntei simplesmente não conseguiam explicar intuitivamente.

Eu sei que métodos como o abandono ajudam na regularização (=> eles dizem que isso reduz o sobreajuste, mas eu realmente não entendo o que é: se ele apenas reduz o sobreajuste, por que não chamá-lo de métodos anti-sobreajuste => deve haver algo mais eu acho, daí esta questão).

Ficaria muito grato (acho que a comunidade ingênua de ML também ficaria!) Se você pudesse explicar:

  1. Como você define regularidade? O que é regularidade?

  2. A regularização é uma maneira de garantir a regularidade? ou seja, capturar regularidades?

  3. Por que métodos de montagem como abandono, métodos de normalização afirmam estar fazendo regularização?

  4. Por que esses (regularidade / regularização) surgem no aprendizado de máquina?

Muito obrigado por sua ajuda.

Respostas:


8

A regularização é empregada em quase todos os algoritmos de aprendizado de máquina em que estamos tentando aprender com amostras finitas de dados de treinamento.

Tentarei responder indiretamente a suas perguntas específicas, explicando a gênese do conceito de regularização. A teoria completa é muito mais detalhada e esta explicação não deve ser interpretada como completa, mas pretende simplesmente apontá-lo na direção certa para futuras explorações. Como seu objetivo principal é obter umacompreensão intuitiva da regularização, resumi e simplifiquei bastante a seguinte explicação do capítulo 7 de "Redes neurais e máquinas de aprendizado", 3ª edição de Simon Haykin (e omiti vários detalhes ao fazê-lo).

Vamos revisar o problema de aprendizado supervisionado com variáveis ​​independentes variável dependente y i como tentativa de encontrar uma função fxEuyEuf que será capaz de "mapear" a entrada X para uma saída Y.

Para levar isso adiante, vamos entender a terminologia de Hadamard de um problema "bem colocado" - um problema é bem colocado se satisfizer as três condições a seguir:

  1. xEuyEu existe.
  2. x1x2f(x1)=f(x2)x1=x2
  3. f

Para o aprendizado supervisionado, essas condições podem ser violadas, pois:

  1. Uma saída distinta pode não existir para uma determinada entrada.
  2. Pode não haver informações suficientes nas amostras de treinamento para construir um mapeamento de entrada-saída exclusivo (uma vez que executar o algoritmo de aprendizado em diferentes amostras de treinamento resulta em diferentes funções de mapeamento).
  3. O ruído nos dados acrescenta incerteza ao processo de reconstrução, o que pode afetar sua estabilidade.

Para resolver esses problemas "mal colocados", Tikhonov propôs um método de regularização para estabilizar a solução, incluindo uma função não negativa que incorpora informações anteriores sobre a solução.

A forma mais comum de informação prévia envolve a suposição de que a função de mapeamento de entrada e saída é suave - ou seja, entradas semelhantes produzem saídas semelhantes.

λfλ

λ

Alguns exemplos dessas funções de custo regularizadas são:

Regressão linear:

J(θ)=1mi=1m[hθ(xi)yi]2+λ2mj=1nθj2

Regressão logística:

J(θ)=1mi=1m[yilog(hθ(xi))(1yi)log(1hθ(xi))]+λ2mj=1nθj2

Where, θ are the coefficients we've identified for x , and hθ(x) is the estimate of y .

The second summation term in each example is the regularization term. Since this term is always a non-negative value, it stops the optimizer from reaching the global minima for the cost function. The form of the term shown here is an L2 regularization. There are many variations in the form of the regularization function, the commonly used forms are: lasso, elastic net and ridge regression. These have their own advantages and disadvantages which help decide where their best applicability.

The net effect of applying regularization is to reduce model complexity which reduces over-fitting. Other approaches to regularization (not listed in the examples above) include modifications to structural models such as regression/classification Trees, boosted trees, etc. by dropping out nodes to make simpler trees. More recently this has been applied in so-called "deep learning" by dropping out connections between neurons in a neural network.

A specific answer to Q3 is that some ensembling methods such as Random Forest (or similar voting schemes) achieve regularization due to their inherent method, i.e. voting and electing the response from a collection of un-regularized Trees. Even though the individual trees have overfit, the process of "averaging out" their outcome stops the ensemble from overfitting to the training set.

EDITAR:

O conceito de regularidade pertence à teoria axiomática dos conjuntos; você pode consultar este artigo para obter dicas - en.wikipedia.org/wiki/Axiom_of_regularity e explorar esse tópico ainda mais se estiver interessado nos detalhes.

Sobre regularização para redes neurais: Ao ajustar os pesos durante a execução do algoritmo de retropropagação, o termo de regularização é adicionado à função cost da mesma maneira que os exemplos de regressão linear e logística. Portanto, a adição do termo de regularização impede que a retropropagação atinja os mínimos globais.

O artigo que descreve a normalização em lote para redes neurais é - Normalização em lote: acelerando o treinamento em rede profunda, reduzindo a mudança interna de covariáveis, Ioffe, Szegedy, 2015. Sabe-se que a retropropagação para treinar uma rede neural funciona melhor quando as variáveis ​​de entrada são normalizadas. Neste artigo, os autores aplicaram a normalização a cada mini-lote usado na descida estocástica de gradiente para evitar o problema de "gradientes de fuga" ao treinar muitas camadas de uma rede neural. O algoritmo descrito em seu artigo trata a média e a variação calculadas em cada lote para cada camada de ativações como outro conjunto de parâmetros otimizados no mini-lote SGD (além dos pesos NN). As ativações são normalizadas usando todo o conjunto de treinamento. Você pode consultar o artigo para obter detalhes completos sobre esse algoritmo. Ao usar esse método, eles conseguiram evitar o uso de desistências para regularização e, portanto, a reivindicação de que esse é outro tipo de regularização.


Obrigado pela ótima resposta. Você poderia explicar matematicamente um pouco como métodos como a normalização alcançam a regularização? Em uma palestra de Goodfellow, ele disse que qualquer coisa diferenciável pode atuar como um regularizador de uma rede neural. Além disso, você sabe o que são regularidades? eles apenas significam padrões ou há alguma matemática por trás disso? obrigado novamente.
Rafael

Obrigado pela resposta. Não me lembro da conversa. Nas redes neurais, adicionamos camadas como normalização em lote. Eu queria saber como eles contribuem para a regularização?
Rafael

Editado para responder seu comentário, bem como adicionar respostas fornecidas nos comentários anteriores.
Sandeep S. Sandhu

3

Questão 1

Não conheço nenhuma definição canônica e suas perguntas sugerem que esse termo é usado com significados diferentes. Vamos começar com exemplos simples (que responderão à pergunta 2).

Questão 2

A regressão da crista pode ser um bom ponto de partida. É um método de regularização que contorna a questão levantada por uma matriz singular .

No entanto, o "parâmetro de regularização" definido nos métodos de aumento de gradiente (por exemplo) está aqui para garantir uma baixa complexidade para o modelo.

Questão 3

Normalização como regularização tem outro significado (e essa terminologia é bastante enganadora). Isso transforma um problema complexo "do ponto de vista da descida do gradiente" em algo mais simples. Embora não seja necessário calibrar uma rede neural, ele realmente ajuda durante a calibração. (No entanto, observe que, se pudéssemos encontrar os extremos globais de funções arbitrárias, a normalização não seria necessária)

Pergunta 4

A regularização (como uma maneira de reduzir a complexidade de um modelo) é usada para reduzir o excesso de ajuste. Quanto menos complexo é um modelo, menor a probabilidade de se super-ajustar.

a parte, de lado

S. Watanabe faz um uso rigoroso dessa terminologia em sua pesquisa.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.