Funciones de pérdida y tareas

2 min

Objetivo: alinear objetivo, capa de salida y función de pérdida.

La pérdida proporciona la señal de entrenamiento. La métrica describe la calidad según la necesidad. Una pérdida debe ser derivable casi en todas partes; una métrica de negocio puede no serlo.

TareaSalidaObjetivoPérdida PyTorch
Regresión(N,1) o (N,)flotanteMSELoss, L1Loss, HuberLoss
Binaria1 logit0/1 flotanteBCEWithLogitsLoss
K clasesK logitsíndice enteroCrossEntropyLoss
MultietiquetaK logitsK valores 0/1BCEWithLogitsLoss

Entropía cruzada

Para la clase verdadera y, la pérdida multiclase vale -log p_y. Una predicción confiada y errónea se penaliza fuertemente. CrossEntropyLoss combina log_softmax y la log-verosimilitud negativa; no hay que pasarle probabilidades ya normalizadas.

Reducción y desequilibrio

La pérdida de un batch es generalmente una media. Con clases raras, se pueden ponderar las clases, pero la ponderación no reemplaza ni un protocolo de validación adaptado ni métricas como recall, precisión y PR-AUC.

python
import torch
from torch import nn

weights = torch.tensor([1.0, 4.0])
criterion = nn.CrossEntropyLoss(weight=weights)

Label smoothing

El suavizado de etiquetas reemplaza un objetivo absolutamente cierto por una distribución ligeramente suavizada. Puede reducir la sobreconfianza, pero modifica la calibración y debe validarse, no aplicarse de forma ritual.

Comprobación rápida

¿Por qué la accuracy no sirve directamente como pérdida? ¿Hay que aplicar softmax antes de CrossEntropyLoss?

Respuestas

La accuracy es discontinua y casi no proporciona gradiente. No, la pérdida espera los logits.

Actividad de dominio — Pérdida, objetivo y métrica

Para precio inmobiliario, fraude binaria, especie entre diez y etiquetas independientes, indica la forma de los logits, la codificación del objetivo, la pérdida de entrenamiento y la métrica de negocio. Añade un caso en el que MAE sería preferible a MSE. Éxito: la pérdida y la métrica tienen papeles explícitamente distintos.

De la tarea a la función de pérdida

Lectura: la pérdida hace que el aprendizaje sea diferenciable, mientras que la métrica juzga el valor del modelo. Por tanto pueden ser diferentes. La trampa principal es elegir una pérdida únicamente porque su nombre se parece a la métrica, sin comprobar el formato del objetivo, los logits esperados y el costo de negocio de los errores.