🧮 Computational Mathematics

Inicio · Parte 14 — Matemática de Machine Learning

285 — Regresión logística y sigmoid

ml-avanzado clase 5 de 20 4 horas demostración logistic_regression

El gradiente de la regresión logística es (p − y)·x, idéntico en forma al de la lineal.

Fórmulas

σ(z) = 1/(1 + e⁻ᶻ)
P(y=1|x) = σ(wᵀx + b)
∇ = (σ(wᵀx) − y)·x

Desarrollo

La regresión logística resuelve el problema de que una salida lineal puede valer cualquier número real mientras que una probabilidad debe estar entre 0 y 1. La sigmoide hace esa conversión de forma suave y monótona, y su inversa —el logit— tiene una interpretación limpia: el logaritmo de la razón de probabilidades es lineal en las características.

Los parámetros se estiman por máxima verosimilitud. Bajo un modelo Bernoulli, la log-verosimilitud negativa es exactamente la entropía cruzada de la clase 263, así que la pérdida no se elige: se deduce del modelo probabilístico. A diferencia de la regresión lineal, no hay solución cerrada y hay que iterar.

El resultado más útil de la derivación es la forma del gradiente: (p − y)·x, donde p es la probabilidad predicha. Es idéntico en forma al de la regresión lineal con error cuadrático, sustituyendo la predicción por la probabilidad. Esa coincidencia no es casualidad —ambos son modelos lineales generalizados— y permite implementar los dos casos con el mismo bucle.

Pese al nombre, es un clasificador y no un regresor. Y pese a su simplicidad sigue siendo una línea base extraordinariamente competitiva: es interpretable, entrena en segundos, da probabilidades bien calibradas y en muchos problemas tabulares queda a pocos puntos del mejor modelo complejo. Empezar por otra cosa suele ser un error.

Ejemplo trabajado

Ochenta observaciones separables en dos dimensiones.

pesos aprendidos: [−3,354299 ; 4,597644 ; 5,088564]
                   (sesgo, w₁, w₂)

accuracy = 1,0
log loss = 0,006853

σ(0) = 0,5   →  la frontera está en wᵀx + b = 0

Gradiente: (σ(wᵀx) − y)·x
  si p = 0,99 y y = 1  →  factor 0,01, corrección mínima
  si p = 0,01 y y = 1  →  factor −0,99, corrección máxima

La misma forma que el gradiente de la regresión lineal,
con p en lugar de ŷ.

Qué calcula el laboratorio

Regresión logística derivada desde la log-verosimilitud.

python classes/part-14-matematica-de-machine-learning/285-regresion-logistica-y-sigmoid/lab.py
compmath run 285

Salidas del laboratorio (8)

Muestra de la ejecución real

{
  "observaciones": 80,
  "pesos": [
    -3.354299,
    4.597644,
    5.088564
  ],
  "accuracy": 1.0,
  "log_loss": 0.006853,
  "sigmoid(0)": 0.5,
  "gradiente_es_(p-y)x": "idéntico en forma al de la regresión lineal"
}

Errores comunes

Dónde se usa

Clasificación binaria, scoring crediticio, línea base en cualquier problema tabular y capa de salida de redes neuronales.

Idea rectora de la parte

El leakage produce métricas excelentes y modelos inútiles.

Error a evitar

Elegir hiperparámetros con el conjunto de test.

Conexión con IA

Estos algoritmos siguen siendo la línea base honesta contra la que se debe comparar cualquier modelo profundo.

Bibliografía de la clase

Archivos de la clase