Parece que você resolveu o problema em seu exemplo específico, mas acho que ainda vale a pena um estudo mais cuidadoso da diferença entre mínimos quadrados e regressão logística de máxima probabilidade.
Vamos fazer uma anotação. Seja e . Se estivermos fazendo a máxima probabilidade (ou mínima probabilidade de log negativo como estou fazendo aqui), teremos
com sendo nossa função de ligação .LS(yi,y^i)=12(yi−y^i)2LL(yi,y^i)=yilogy^i+(1−yi)log(1−y^i) β G:=argminb∈ R p- n ∑ i=1yiβ^L:=argminb∈Rp−∑i=1nyilogg−1(xTib)+(1−yi)log(1−g−1(xTib))
g
Como alternativa, temos
como a solução dos mínimos quadrados. Assim, minimiza e da mesma forma para .β^S: = argminb ∈ Rp12∑i = 1n( yEu- g- 1( xTEub ) )2
β SGSGGβ^SeuSeueu
Seja e as funções objetivas correspondentes à minimização de e respectivamente, como é feito para e . Finalmente, deixe so . Observe que, se estivermos usando o link canônico, temos
fSfeueuSeueuβ S β L h = g - 1 y i = h ( x t i b ) H ( z ) = 1β^Sβ^euh = g- 1y^Eu= h ( xTEub )h ( z) = 11 + e- z⟹h′( z) = h ( z) ( 1 - h ( z) ) .
Para regressão logística regular, temos
Usando , podemos simplificar isso para
então
∂feu∂bj= - ∑i = 1nh′( xTEub ) xeu j( yEuh ( xTEub )−1−yi1−h(xTib)).
h′=h⋅(1−h)∂fL∂bj=−∑i=1nxij(yi(1−y^i)−(1−yi)y^i)=−∑i=1nxij(yi−y^i)
∇fL(b)=−XT(Y−Y^).
Em seguida, vamos fazer as derivadas secundárias. The Hessian
HL:=∂2fL∂bj∂bk=∑i=1nxijxiky^i(1−y^i).
Isso significa que onde . depende dos valores atuais ajustados mas caiu, e é PSD. Portanto, nosso problema de otimização é convexo em .HL=XTAXA=diag(Y^(1−Y^))HLY^YHLb
Vamos comparar isso com mínimos quadrados.
∂fS∂bj= - ∑i = 1n( yEu- y^Eu) h′( xTEub ) xeu j.
Isso significa que temos
Este é um ponto vital: o gradiente é quase o mesmo, exceto por todos os portanto, basicamente estamos nivelando o gradiente em relação a . Isso tornará a convergência mais lenta.∇ fS( b ) = - XTA ( Y- Y^) .
Eu y^Eu( 1 - y^Eu)∈(0,1)∇fL
Para o Hessiano, primeiro podemos escrever
∂fS∂bj=−∑i=1nxij(yi−y^i)y^i(1−y^i)=−∑i=1nxij(yiy^i−(1+yi)y^2i+y^3i).
Isso nos leva a
HS:=∂2fS∂bj∂bk=−∑i=1nxijxikh′(xTib)(yi−2(1+yi)y^i+3y^2i).
Seja . Agora temos
B=diag(yi−2(1+yi)y^i+3y^2i)HS=−XTABX.
Infelizmente para nós, não é garantido que os pesos em sejam negativos: se então que é positivo se . Da mesma forma, se então que é positivo quando (também é positivo para mas isso não é possível). Isso significa que não é necessariamente PSD, então não apenas estamos esmagando nossos gradientes, o que tornará o aprendizado mais difícil, mas também confundimos a convexidade do nosso problema.Byi=0yi−2(1+yi)y^i+3y^2i=y^i(3y^i−2)y^i>23yEu= 1yEu- 2 ( 1 + yEu) y^Eu+ 3 anos^2Eu= 1 - 4 y^Eu+ 3 anos^2Euy^Eu< 13y^Eu> 1HS
Em suma, não é nenhuma surpresa que a regressão logística dos mínimos quadrados às vezes lute, e no seu exemplo você tem valores ajustados suficientes próximos de ou para que possa ser bem pequeno e, portanto, o gradiente é bastante achatado.0 01y^Eu( 1 - y^Eu)
Conectando isso a redes neurais, mesmo que seja apenas uma humilde regressão logística, acho que com a perda ao quadrado, você está experimentando algo como o que Goodfellow, Bengio e Courville estão se referindo em seu livro Deep Learning quando escrevem o seguinte:
Um tema recorrente no design de redes neurais é que o gradiente da função de custo deve ser grande e previsível o suficiente para servir como um bom guia para o algoritmo de aprendizado. As funções que saturam (tornam-se muito planas) minam esse objetivo porque tornam o gradiente muito pequeno. Em muitos casos, isso acontece porque as funções de ativação usadas para produzir a saída das unidades ocultas ou as unidades de saída saturam. A probabilidade de log negativa ajuda a evitar esse problema em muitos modelos. Muitas unidades de saída envolvem uma função exp que pode saturar quando seu argumento é muito negativo. A função de log na função de custo de probabilidade de log negativo desfaz a exp de algumas unidades de saída. Discutiremos a interação entre a função de custo e a escolha da unidade de saída no segundo. 6.2.2
e, em 6.2.2,
Infelizmente, o erro quadrado médio e o erro absoluto médio geralmente levam a resultados ruins quando usados com a otimização baseada em gradiente. Algumas unidades de saída que saturam produzem gradientes muito pequenos quando combinadas com essas funções de custo. Esse é um dos motivos pelos quais a função de custo da entropia cruzada é mais popular que o erro médio quadrático ou o erro absoluto médio, mesmo quando não é necessário estimar uma distribuição inteira .p ( y|x)
(ambos os trechos são do capítulo 6).