0Pricing
Deep Learning Academy · Leçon

Séparer entraînement, validation et test

Pourquoi vous avez besoin de trois ensembles plutôt que d’un seul.

Séparer entraînement, validation et test est une leçon Deep Learning Academy gratuite sur CoddyKit. Ceci est la leçon 1 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.

One Pile Is Not Enough

If you train and judge a model on the same data, you only learn that it memorized those rows. To trust it, you must split your data into separate roles.

Meet the Training Set

The training set is the data your model actually learns from. Its weights are nudged again and again to fit exactly these examples well.

Meet the Validation Set

The validation set is held back during training and checked along the way. It tells you how the model does on data it has never updated on.

Meet the Test Set

The test set is touched once, at the very end. It gives an honest, final score after every choice has already been made.

Why Validation Is Separate

You tune knobs like learning rate by watching validation results. That quietly leaks the validation set into your choices, so it can no longer be a clean final judge.

The Test Set Stays Sealed

Because validation guided your decisions, you need one untouched pile for the truth. Keep the test set sealed until you are completely done.

A Common Split

A typical starting point is roughly 80/10/10: most data for training, smaller slices for validation and test. Adjust based on how much data you have.

Split with random_split

PyTorch gives you random_split to carve a dataset into pieces by length. It shuffles which samples land in each set for you.

from torch.utils.data import random_split
train, val, test = random_split(ds, [800, 100, 100])

Seed for Reproducible Splits

The split is random, so set a seed if you want the same pieces every run. That keeps experiments comparable across sessions.

g = torch.Generator().manual_seed(42)
train, val, test = random_split(ds, [800, 100, 100], generator=g)

Stratify for Balance

With rare classes, a plain random split may leave some out. Stratifying keeps each set's class mix close to the original so scores stay meaningful.

Never Peek at Test

The golden rule is simple: do not let the test set shape any decision. The moment it does, your final number stops being trustworthy.

Quick Check

Which set should you look at only once, at the very end?

Recap

Three sets, three jobs: training teaches the model, validation guides your tuning, and test gives the final honest score. Keep test sealed until the end. 🎯

Questions Fréquemment Posées

La leçon « Séparer entraînement, validation et test » est-elle gratuite ?

Oui — le texte complet de « Séparer entraînement, validation et test » 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 « Séparer entraînement, validation et test » ?

Pourquoi vous avez besoin de trois ensembles plutôt que d’un seul. 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 1 sur 4.

Combien de temps prend la leçon « Séparer entraînement, validation et test » ?

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. Séparer entraînement, validation et test
  2. Une boucle d’époque avec validation
  3. Enregistrer et charger avec state_dict
  4. Arrêt précoce selon la perte de validation
← Retour à Deep Learning Academy