0Pricing
Deep Learning Academy · Leçon

Poids des classes pour les données déséquilibrées

Empêchez la classe majoritaire de dominer.

Poids des classes pour les données déséquilibrées est une leçon Deep Learning Academy gratuite sur CoddyKit. Ceci est la leçon 4 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Deep Learning Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Deep Learning Academy comprend 4 leçons au total.

Certaines parties de cette leçon n'ont pas encore été traduites et s'affichent en anglais.

When One Class Dominates

If 95 percent of your samples are one class, the model can score high by always guessing it. That is the class imbalance trap. ⚖️

Why Accuracy Lies Here

A lazy model that ignores the rare class still looks 95 percent accurate. So accuracy hides total failure on the minority you actually care about.

The Loss Follows the Majority

Each sample contributes equally to the loss, so the abundant class pulls the gradient hardest. The model learns mostly from the majority class.

Reweight the Loss

The fix is to give rare classes a heavier voice. Class weights multiply each sample's loss so minority mistakes count for more.

Bigger Weight for Rarer Class

A common recipe sets each weight inversely proportional to its class frequency. The rarer the class, the larger its weight grows.

Pass Weights to CrossEntropy

For multiclass tasks, hand a weight tensor of length C to the loss. Each entry scales the penalty for that class's errors.

import torch.nn as nn
w = torch.tensor([1.0, 9.0])
loss_fn = nn.CrossEntropyLoss(weight=w)

pos_weight for Binary Tasks

For two-class problems, BCEWithLogitsLoss takes pos_weight, a single number that boosts the positive class to offset its rarity.

loss_fn = nn.BCEWithLogitsLoss(pos_weight=torch.tensor([9.0]))

Sample, Don't Just Weight

Weighting is not the only tool. You can also oversample the rare class or undersample the common one to balance each batch.

Balance Batches With a Sampler

A WeightedRandomSampler draws minority samples more often, so every batch the DataLoader serves is roughly balanced by design.

from torch.utils.data import WeightedRandomSampler

Focal Loss for Hard Cases

For extreme imbalance, focal loss down-weights easy, well-classified examples so the model focuses on the hard, rare ones.

Judge by the Right Metric

After rebalancing, drop accuracy and track F1 or precision and recall. They reveal whether the rare class is finally being learned.

Quick Check

Your dataset is 95 percent negative. How do you stop the model from ignoring positives?

Recap: Give the Rare Class a Voice

Imbalance lets the majority hijack training, so you fight back with class weights, balanced sampling, or focal loss, and you judge results with F1. 💪

Questions Fréquemment Posées

La leçon « Poids des classes pour les données déséquilibrées » est-elle gratuite ?

Oui — le texte complet de « Poids des classes pour les données déséquilibrées » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Deep Learning Academy, passe à CoddyKit PRO. Le cours Deep Learning Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Poids des classes pour les données déséquilibrées » ?

Empêchez la classe majoritaire de dominer. Tu pratiques Deep Learning Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Deep Learning Academy ?

Aucune expérience préalable n'est requise. Deep Learning Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 4 sur 4.

Combien de temps prend la leçon « Poids des classes pour les données déséquilibrées » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Deep Learning Academy ?

Oui. Chaque leçon Deep Learning Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. MSE et MAE pour la régression
  2. Entropie croisée binaire avec logits
  3. Entropie croisée pour plusieurs classes
  4. Poids des classes pour les données déséquilibrées
← Retour à Deep Learning Academy