Para entrenar la regresión logística castigamos mucho cuando el modelo está muy seguro y se equivoca; eso es la cross-entropy.
Imagínalo así
Un alumno que dice «estoy 100 % seguro» y falla merece más castigo que uno que dijo «no estoy seguro». La cross-entropy cobra según qué tan confiado estabas en la respuesta equivocada.
Lo que tienes que llevarte
No se usa error al cuadrado porque con la sigmoide el problema se vuelve difícil (con muchos valles).
La cross-entropy (log-loss) da una superficie en forma de tazón: el descenso de gradiente siempre encuentra el fondo.
El gradiente final es muy simple: (predicción − real) × dato.
Palabras raras de esta página
cross-entropy / log-loss
medida de error que castiga la confianza equivocada.
verosimilitud
qué tan probable hace el modelo los datos que realmente vimos. Queremos que sea alta.
separable
cuando una línea puede separar perfecto las clases; ahí los pesos crecen sin fin si no regularizas.
Más abajo viene la versión completa, con fórmulas. Si una palabra aparece subrayada con puntos, pasa el mouse (o tócala) para ver qué significa.
El error cuadrático sobre la salida de la sigmoide da una superficie no convexa: una cuenca y luego una meseta/bulto que atrapa al descenso de gradiente. Además el gradiente lleva el factor σ′(z)=p(1−p), que casi vale 0 justo cuando el modelo está seguro y equivocado: aprende lentísimo cuando más debería corregir. La cross-entropy da un solo valle convexo.
¿Por qué no error cuadrático? Mira la superficie
Modelo p = σ(w·x) con un solo peso, sobre 7 puntos (uno de ellos está «del lado equivocado»). Las dos curvas están normalizadas para compararlas. Desde un mal inicio, se hacen 60 pasos de descenso de gradiente con la misma tasa.
cross-entropy (convexa: un valle)error² sobre σ (no convexa: mesetas)
w final · cross-entropy0.46
w final · error²-4.12
Empieza en w₀ = −6 o −10: el error² está en una meseta (σ saturada ⇒ σ′ ≈ 0 ⇒ gradiente ≈ 0) y el descenso casi no se mueve, aunque el modelo está seguro y equivocado. La cross-entropy castiga fuerte ese error (−log de algo ≈ 0) y su gradiente (p − y)x no se apaga: llega al mínimo desde cualquier inicio.
La verosimilitud responde: ¿qué tan probables son los datos que vimos si este modelo fuera cierto? Es el mismo número que una probabilidad, pero leído como función de (w,b) con los datos fijos.
Para un ejemplo, es la «barra»: la probabilidad que el modelo le da a su etiqueta verdadera. Con pi=σ(w⊤xi+b):
P(yi∣xi)={pi1−piyi=1yi=0=piyi(1−pi)1−yi(pmf de Bernoulli)
Con ejemplos independientes, la probabilidad del dataset es el producto: L(w,b)=∏ipiyi(1−pi)1−yi. En vez de maximizarla, minimizamos−logL. Tres ganancias: el log es creciente (mismo maximizador), convierte el producto (que se desborda a 0) en suma, y el signo menos vuelve «maximizar» en «minimizar una pérdida».
Exactamente la forma de la regresión lineal: «error × feature», con p−y en lugar del residual. Pero ahora no hay forma cerrada (la sigmoide es no lineal), así que se itera w←w−η∇J.
Una iteración de entrenamiento con números (3 puntos)
La Hessiana es ∇2J=n1∑ipi(1−pi)xixi⊤⪰0: una suma con pesos no negativos de productos externos, semidefinida positiva en todas partes ⇒ un bowl, el descenso no se atasca.
Mira a la frontera acomodarse
Descenso de gradiente por lotes desde un inicio deliberadamente malo. El color es P(y = 1 | x); la línea blanca es la frontera wᵀx + b = 0. El gradiente es Xᵀ(p − y)/n: «error × feature», igual que en regresión lineal.
clase 0clase 1frontera (P = 0.5)
iteraciones0
pérdida2.4131
accuracy42%
‖w‖2.56
La cross-entropy es convexa: baja monótonamente. Separa mucho las clases con λ = 0 y deja entrenar: ‖w‖ crece sin límite (sigmoides cada vez más afiladas). Con λ > 0 se estabiliza.
Un punto con y=1 y p=0.2. Calcula su pérdida y el gradiente respecto a z. Repite con p=0.99.
Ver solución
p=0.2: ℓ=−log0.2=1.609; ∂ℓ/∂z=p−y=−0.8 (empuja fuerte a subir z).
p=0.99: ℓ=−log0.99=0.010; ∂ℓ/∂z=−0.01 (casi no empuja: ya está bien).
Con error cuadrático (p−y)2, el gradiente sería 2(p−y)p(1−p): para p=0.2 da 2(−0.8)(0.16)=−0.256, y para un punto con p=0.01 (seguro y equivocado) solo −0.0196: casi no aprende.
Autoevaluación
0/5 correctas · 0 respondidas
1.Minimizar la cross-entropy equivale a…
2.El gradiente de la cross-entropy respecto a w es…
3.¿Por qué no se usa error cuadrático sobre la sigmoide?
4.Con clases linealmente separables y λ=0…
5.¿La regresión logística tiene forma cerrada como OLS?