Aqui, deduzo todas as propriedades e identidades necessárias para que a solução seja independente, mas, além disso, essa derivação é limpa e fácil. Vamos formalizar nossa notação e escrever a função de perda um pouco mais compacta. Considere m amostras {xi,yi} de tal modo que xi∈Rd e yi∈R . Lembre-se de que, na regressão logística binária, normalmente temos a função de hipótese hθ ser a função logística. Formalmente
hθ(xi)=σ(ωTxi)=σ(zi)=11+e−zi,
onde ω∈Rd e zi=ωTxi . A função de perda (que eu acredito que OPs está faltando um sinal negativo) é então definida como:
l(ω)=∑i=1m−(yilogσ(zi)+(1−yi)log(1−σ(zi)))
Existem duas propriedades importantes da função logística que derivam aqui para referência futura. Primeiro, observe que 1−σ(z)=1−1/(1+e−z)=e−z/(1+e−z)=1/(1+ez)=σ(−z) .
Observe também que
∂∂zσ(z)=∂∂z(1+e−z)−1=e−z(1+e−z)−2=11+e−ze−z1+e−z=σ(z)(1−σ(z))
Em vez de usar derivadas com relação aos componentes, aqui trabalharemos diretamente com vetores (você pode revisar derivadas com vetores aqui ). O Hesse da função perda l(ω) é dada por ∇⃗ 2l(ω) , mas primeira recolha que ∂z∂ω=xTω∂ω=xTe∂z∂ωT=∂ωTx∂ωT=x.
Seja li(ω)=−yilogσ(zi)−(1−yi)log(1−σ(zi)) . Usando as propriedades que derivamos acima e a regra da cadeia
∂logσ(zi)∂ωT∂log(1−σ(zi))∂ωT=1σ(zi)∂σ(zi)∂ωT=1σ(zi)∂σ(zi)∂zi∂zi∂ωT=(1−σ(zi))xi=11−σ(zi)∂(1−σ(zi))∂ωT=−σ(zi)xi
Agora é trivial mostrar que
∇⃗ li(ω)=∂li(ω)∂ωT=−yixi(1−σ(zi))+(1−yi)xiσ(zi)=xi(σ(zi)−yi)
uau!
Nosso último passo é calcular o hessiano
∇⃗ 2li(ω)=∂li(ω)∂ω∂ωT=xixTiσ(zi)(1−σ(zi))
Para m amostras temos ∇⃗ 2l(ω)=∑mi=1xixTiσ(zi)(1−σ(zi)) . Isso é equivalente à concatenação de vetores de colunas xi∈Rd em uma matriz X de tamanho d×m tal que ∑mi=1xixTi=XXT . Os termos escalares são combinados em uma matriz diagonalD de tal forma queDii=σ(zi)(1−σ(zi)) . Finalmente, concluímos que
H⃗ (ω)=∇⃗ 2l(ω)=XDXT
Uma abordagem mais rápida pode ser obtida considerando todas as amostras de uma só vez desde o início e, em vez disso, trabalhe com derivadas da matriz. Como uma observação extra, com esta formulação é trivial mostrar que l(ω) é convexo. Deixe δ ser qualquer vector de modo a que δ∈Rd . Então
δTH⃗ (ω)δ=δT∇⃗ 2l(ω)δ=δTXDXTδ=δTXD(δTX)T=∥δTDX∥2≥0
D>0∥δTX∥≥0Hl