• Nenhum resultado encontrado

aula 05 - Regularização

N/A
N/A
Protected

Academic year: 2021

Share "aula 05 - Regularização"

Copied!
6
0
0

Texto

(1)

Sobre-ajuste da Hipótese

Os algoritmos de regressão são baseados em relações entre as variáveis de entrada (variáveis independentes) e a variável de saída (variável dependente), escolhendo os melhores parâmetros para uma função matemática que melhor se ajusta a essa relação.

Os parâmetros dessas funções, representados nessa disciplina como o vetor θ, são multiplicados ao vetor de entrada x, geralmente através de uma função polinomial. O modelo a ser ajustado, portanto, deve ser escolhido a partir do número de termos dessa função, o que inclui diferentes graus para o polinômio.

Quanto maior for o grau do polinômio, mais complexa será a hipótese e, consequentemente, melhor ajuste será obtido a partir dos dados de entrada. A hipótese mais complexa, entretanto, pode gerar uma função não-realística, não conseguindo generalizar o resultado para futuros dados de entrada. Suponha o exemplo da precificação de imóveis a partir do tamanho dele, o qual foi usada a regressão linear para construção da hipótese.

hθ(x )=θ0+θ1x hθ(x )=θ0+θ1x +θ2x2 hθ(x )=θ0+θ1x +θ2x2+θ3x3+θ4x4

O mesmo pode acontecer em casos de regressões de múltiplos parâmetros. Ao incluir mais variáveis à regressão, pode-se obter uma hipótese com melhor ajuste (menor função custo), entretanto essa complexidade pode não ser realística para dados não usados no treinamento.

O caso da figura acima à esquerda, o modelo matemático da hipótese não se ajusta adequadamente aos dados de treinamento, e portanto, pode ser considerada “sub-ajustada” (underfitting). A figura à direita, por sua vez, se ajusta quase que perfeitamente, entretanto, gera uma função não realística, podendo ser chamada de “sobre ajustada” (overfitting). A figura ao centro, ilustra uma hipótese razoável, com ajuste aceitável e genérica o suficiente para dados futuros.

(2)

O mesmo acontece para a regressão logística. Se o polinômio usado na exponencial da função sigmoid possuir vários termos, com diferentes graus, o limiar de decisão pode assumir figuras complexas que separam muito bem as amostras em suas devidas classes, mas não representam, de forma genérica, a relação entre os dados de entrada e os de saída. Considere os exemplos abaixo onde g(z) é a função sigmoid.

hθ(x )=g(θ0+θ1x1+θ2x2) hθ(x )=g(θ0+θ1x1+θ2x2+ θ3x12+θ4x22)

(sub-ajustada) (adequada)

hθ(x )=g(θ0+θ1x1+θ2x2+ θ3x12+θ4x22+θ5x12x2+θ6x12x22+θ7x1x22+ θ8x13x2+⋯)

(sobre ajustada)

Existem várias formas de evitar, ou resolver, o problema do sobre-ajuste. Quando há um excesso de variáveis nos dados de entrada, a complexidade da hipótese pode gerar um sobre-ajuste, nesse caso, pode-se considerar a redução da dimensão da matriz X, e tentar variáveis que sejam mais significativas para a regressão.

Quando o número de variáveis não pode ser reduzido, uma das estratégias é usar a ferramenta numérica chamada regularização. Esse método consiste em manter todas as variáveis, reduzindo, entretanto, os valores (magnitudes) de seus parâmetros, simplificando a hipótese.

Função Custo com Regularização

Considerando como exemplo, as figuras ao centro e à direita da regressão linear mostrada acima, uma forma de simplificar a hipótese mais complexa, é diminuir o valor dos parâmetros θ3 e θ4.

(3)

O algoritmo da regressão continuará em minimizar a função custo, entretanto, os valores desses parâmetros serão “penalizados”. Por exemplo:

min θ 1 2 m

i=1 m (hθ(x (i) )−y(i) )2+100 θ32+100 θ 4 2

Como os valores dos últimos dois parâmetros são maximizados pela potência e pelo fator multiplicador, para minimizar a função custo acima, os valores desses parâmetros são fortemente diminuídos. Se tais valores se aproximam de zero, a hipótese mais complexa é simplificada, se assemelhando à função quadrática do exemplo.

Nesse caso, a simplificação é óbvia. No caso de muitos parâmetros, por exemplo centenas deles, a escolha de quais parâmetros penalizar não é tão óbvia. Por isso, numericamente, são penalizados todos os parâmetros, o que simplifica a função como um todo. Para realizar tal penalização dos parâmetros, um termo adicional é inserido na função custo.

J (θ)= 1 2 m

[

i=1 m (hθ(x (i ) )−y(i) )2+ λ

j=1 n θ2j

]

O termo à direita da equação acima implementa a regularização, reduzindo a magnitude dos parâmetros da hipótese. O coeficiente multiplicativo λ desse termo é chamado parâmetro de regularização.

Apesar de não parecer intuitivo, reduzir os valores de todos os parâmetros, ao invés de um sub-conjunto de parâmetros específicos, causa simplificação geral do modelo, minimizando o sobre-ajuste da hipótese.

Repare que o somatório do termo de regularização, não incluí o parâmetro θ0 (o índice j inicia em 1)

Isso é uma convenção praticada em regularização de modelos, devido ao fato da penalização desse parâmetro não influenciar a simplificação da hipótese.

A escolha do parâmetro de regularização, é portanto, um fator decisivo na eficiência do algoritmo. Um parâmetro muito pequeno, irá penalizar pouco os parâmetros, o que significa que a hipótese não terá sua complexidade diminuída. O uso de um parâmetro de regularização muito alto, entretanto, fará com que os parâmetros sejam diminuídos ao extremo, causando um sub-ajuste da hipótese.

(4)

Existem estratégias para a escolha ótima desse valor, que serão explicada posteriormente. Regressão Linear Regularizada

A implementação da regularização na regressão linear, se dá através da inclusão do termo de regularização na função custo, como mostrado acima. A minimização dessa função se faz usando o algoritmo do gradiente descendente, e portanto, deve ter suas derivadas calculadas. Considerando a função custo abaixo:

J (θ)= 1 2 m

[

i=1 m (hθ(x (i ) )−y(i) )2+ λ

j=1 n θ2j

]

suas derivadas parciais serão:

∂ ∂θjJ (θ)= 1 m

[

i =1 m

[

(hθ(x (i) )−y(i ) )x(ji)

]

+ λ θj

]

para j = 1, 2, …, n.

Como o parâmetro θ0 não é regularizado, teremos duas expressões para atualização dos parâmetros

no gradiente descendente: θ00−α 1 m

i =1 m (hθ(x (i) )−y(i) )x0(i) θjj−α

[

1 m

i =1 m (hθ(x (i) )−y(i) )x(ji) + λ mθj

]

Que pode re-escrita na forma:

θjj(1−α λ m)−α 1 m

i=1 m (hθ(x (i) )−y(i ) )x(ji)

Comparando essa expressão com a usada na regressão linear sem regularização, percebe-se a inclusão to termo multiplicativo (1-αλ/m) no valor corrente do parâmetro θj, antes de sua

(5)

Para que a penalização tenha efeito, e a regularização seja implementada, o termo multiplicativo citado deve ter um valor menor que 1.

Equação Normal

A regressão linear também é possível de ser realizada sem o uso do algoritmo iterativo do gradiente descendente, usando a equação normal. Esse método foi mostrado anteriormente, e a equação que define os melhores parâmetros é:

θ=(XTX )−1XTy

É possível, também, aplicar a regularização nessa equação, para evitar o sobre-ajuste da hipótese. É possível provar que a equação acima, regularizada, será:

θ=

(

XTX +λ

[

0 0 ⋯ 0 0 1 ⋯ 0 ⋮ ⋮ ⋱ ⋮ 0 0 ⋯ 1

]

(n+1) x(n+1)

)

−1 XTy

A matriz que multiplica do parâmetro de regularização é quadrada com a dimensão igual ao número de parâmetros do modelo. Ela é semelhante à matriz identidade, exceto o termo da primeira linha e primeira coluna que é zero, pois o parâmetro θ0 não é penalizado.

A aplicação da regularização na equação normal possui outra vantagem, além de evitar o sobre-ajuste da hipótese. Na primeira equação, tem-se o problema da inversão da matriz XTX, que pode

ser, em alguns casos, singular.

Esse problema pode ser resolvido no Matlab/Octave usando a função pinv, que calcula a matriz inversa aproximada usando a ferramenta numérica SVD. Entretanto, se for usada outra linguagem de programação onde tal função não esteja disponível em sua biblioteca numérica, a singularidade da matriz XTX não pode ser resolvida.

É possível provar algebricamente, que a matriz XTX regularizada será inversível para λ > 0. Assim,

(6)

Regressão Logística Regularizada

A aplicação da regularização na regressão logística é semelhante, inserindo-se a penalização dos parâmetros do modelo. A função custo desse tipo de regressão fica, portanto;

J (θ)=−

[

1 m

i=1 m y(i )log(hθ(x (i) ))+(1− y(i) )⋅log(1−hθ(x (i) ))

]

+ λ 2 m

j=1 n θ2j

O algoritmo do gradiente descendente, no entanto, não sofrerá alteração com relação à regressão linear regularizada, visto que as derivadas parciais da função custo acima serão idênticas. A única modificação necessária na atualização dos parâmetros em tal algoritmo será na função hθ(x), que

Referências

Documentos relacionados