Fonctions de perte et tâches

2 min

Objectif : aligner cible, couche de sortie et fonction de perte.

La perte fournit le signal d'entraînement. La métrique décrit la qualité selon le besoin. Une perte doit être dérivable presque partout ; une métrique métier peut ne pas l'être.

TâcheSortieCiblePerte PyTorch
Régression(N,1) ou (N,)flottantMSELoss, L1Loss, HuberLoss
Binaire1 logit0/1 flottantBCEWithLogitsLoss
K classesK logitsindice entierCrossEntropyLoss
MultilabelK logitsK valeurs 0/1BCEWithLogitsLoss

Entropie croisée

Pour la vraie classe y, la perte multiclasse vaut -log p_y. Une prédiction confiante et fausse est fortement pénalisée. CrossEntropyLoss combine log_softmax et la log-vraisemblance négative ; il ne faut pas lui fournir des probabilités déjà normalisées.

Réduction et déséquilibre

La perte d'un batch est généralement une moyenne. Avec des classes rares, on peut pondérer les classes, mais la pondération ne remplace ni un protocole de validation adapté ni des métriques telles que rappel, précision et PR-AUC.

python
import torch
from torch import nn

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

Label smoothing

Le lissage des étiquettes remplace une cible absolument certaine par une distribution légèrement adoucie. Il peut réduire la surconfiance, mais modifie la calibration et doit être validé, pas appliqué rituellement.

Vérification rapide

Pourquoi accuracy ne sert-elle pas directement de perte ? Faut-il appliquer softmax avant CrossEntropyLoss ?

Réponses

Accuracy est discontinue et ne fournit presque aucun gradient. Non, la perte attend les logits.

Activité de maîtrise — Perte, cible et métrique

Pour prix immobilier, fraude binaire, espèce parmi dix et tags indépendants, indiquez forme des logits, encodage de la cible, perte d'entraînement et métrique métier. Ajoutez un cas où MAE serait préférable à MSE. Réussite : la perte et la métrique ont des rôles explicitement distincts.

De la tâche à la fonction de perte

Lecture : la perte rend l'apprentissage différentiable, tandis que la métrique juge la valeur du modèle. Elles peuvent donc être différentes. Le piège principal est de choisir une perte uniquement parce que son nom ressemble à la métrique, sans vérifier le format de la cible, les logits attendus et le coût métier des erreurs.