yioceppo( yio)
ceppo( 0 )ceppo( yio+ ϵ )
Hy'( y) : = - ∑ioy'ioceppo( yio)
Hy'( y) : = - ∑io( y'ioceppo( yio) + ( 1 - y'io) log( 1 - yio) )
(a) è corretto per la previsione multi-classe (in realtà è una doppia somma), (b) è lo stesso di (a) per la previsione a due classi. Entrambi sono entropia incrociata.
Esempio:
Xioc'io∈ { 0 , 1 }cio∈ [ 0 , 1 ] .
c'iocio
( c'io, cio) = { ( 0 , 0,1 ) , ( 0 , 0,4 ) , ( 0 , 0,8 ) , ( 1 , 0,8 ) , ( 1 , 0,2 ) }
y'ioyio
( y'io, yio)
( y'io, yio) = { ( [ 1 , 0 ] , [ 0.9 , 0.1 ] ) , ( [ 1 , 0 ] , [ 0.6 , 0.4 ] ) , ( [ 1 , 0 ] , [ 0.2 , 0.8 ] ) , ( [ 0 , 1 ] , [ 0,2 , 0,8 ] ) , ( [ 0 , 1 ] , [ 0.8 , 0.2 ] ) }
Sia (a) che (b) sono calcolati come:
Hy'(y) = - 1 / 5 ( [ l o g( 0.9 ) + l o g( 0.6 ) + l o g( 0,2 ) ]cio= 0+ [ l o g( 0,8 ) + l o g( 0,2 ) ]cio= 1) = 0,352
Derivazione:
1K
( xio,c'io)c'io= ky'io= [ 0 , . . , 1 , 0 , . . ]Kt hy'i k= 1yi k= p ( k | xio)( xio, k )- l o g( yi k)yi k→ 1 ⇒ - l o g( yi k) → 0
L ( y'io, yio) = - ∑Kk = 1y'i kl o g( yi k)
y'i k= 1K'≠ k0 l o g( yi k') = 0y'I m= 1
L ( y'io, yio) = - l o g( yI m)
La formula finale su tutti i punti di allenamento è:
Hy'( y) = - ∑( xio, y'io)ΣKk = 1y'i kl o g( yi k)
y'io 0= 1 - y'io 1yio 0= 1 - yio 1
Hy'( y)= - ∑( xio, y'io)y'io 1l o g( yio 1) + y'io 0l o g( yio 0)= - ∑( xio, y'io)y'io 1l o g( yio 1) + ( 1 - y'io 1) l o g( 1 - yio 1)
che è lo stesso di (b).
Cross-entropia (a) sopra le classi (una somma)
L'entropia incrociata (a) sulle classi è:
Hy'( y) = - ∑Kk = 1y'Kl o g( yK)
Questa versione non può essere utilizzata per l'attività di classificazione. Consente di riutilizzare i dati dell'esempio precedente:
( c'io, cio) = { ( 0 , 0,1 ) , ( 0 , 0,4 ) , ( 0 , 0,8 ) , ( 1 , 0,8 ) , ( 1 , 0,2 ) }
y'0= 3 / 5 = 0,6y'1= 0.4
y0= 3 / 5 = 0,6y1= 0.4
- y'0l o gy0- y'1l o gy1= - 0,6 l o g( 0,6 ) - 0,4 l o g( 0.4 ) = 0.292
( 0 , 0,8 )( 1 , 0,2 )y'0y'1
( c'io, cio) = { ( 0 , 0,1 ) , ( 0 , 0,4 ) , ( 0 , 0,2 ) , ( 1 , 0,8 ) , ( 1 , 0,8 ) }
y'0y0= 3 / 5