0Pricing
Learn AI with Python · Leçon

Construire des pipelines de prétraitement

Pipeline de sklearn, ColumnTransformer et combinaison de transformateurs pour des flux de prétraitement propres.

Construire des pipelines de prétraitement est une leçon Learn AI with Python 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 Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.

Pourquoi utiliser des chaînes de traitement ?

Une chaîne de traitement scikit-learn enchaîne les étapes de prétraitement et un modèle dans un seul objet. Elle garantit que les mêmes transformations s'appliquent aux données d'entraînement et d'évaluation, évitant les fuites et le code difficile à gérer.

Une chaîne de traitement de base

Pipeline reçoit une liste de tuples (nom, étape). Appeler fit exécute chaque étape dans l'ordre ; la dernière étape est généralement un estimateur.

from sklearn.pipeline import Pipeline
from sklearn.preprocessing import StandardScaler
from sklearn.linear_model import LogisticRegression

pipe = Pipeline([
    ("scale", StandardScaler()),
    ("model", LogisticRegression()),
])

fit et predict sur toute la chaîne de traitement

Traitez la chaîne de traitement comme un modèle unique. fit apprend l'outil de mise à l'échelle AND entraîne le modèle ; predict applique l'outil de mise à l'échelle puis le modèle, automatiquement et de manière cohérente.

pipe.fit(X_train, y_train)
preds = pipe.predict(X_test)   # scaling applied automatically

Aucune fuite grâce à la conception

Comme la chaîne de traitement ajuste l'outil de mise à l'échelle uniquement pendant fit (sur les données d'entraînement) et se contente de transformer les données pendant predict, elle élimine automatiquement l'erreur consistant à ajuster le modèle sur le jeu d'évaluation.

Types de colonnes mixtes

Les jeux de données réels mélangent des colonnes NUMERIC et CATEGORICAL qui nécessitent un prétraitement différent. ColumnTransformer applique un transformateur différent à chaque sous-ensemble de colonnes.

ColumnTransformer

Fournissez des tuples de (nom, transformateur, colonnes). Les colonnes numériques sont mises à l'échelle et les colonnes catégorielles sont encodées à l'aide de variables indicatrices, le tout en une seule étape.

from sklearn.compose import ColumnTransformer
from sklearn.preprocessing import OneHotEncoder

pre = ColumnTransformer([
    ("num", StandardScaler(), ["age", "income"]),
    ("cat", OneHotEncoder(handle_unknown="ignore"), ["city"]),
])

Imbrication dans une chaîne de traitement complète

Placez le ColumnTransformer comme première étape d'une chaîne de traitement, suivi du modèle, afin d'obtenir un flux de travail complet et exempt de fuite de données.

full = Pipeline([
    ("prep", pre),
    ("model", LogisticRegression()),
])
full.fit(X_train, y_train)

Gestion des valeurs manquantes dans une étape

Ajoutez un SimpleImputer dans la branche numérique, souvent elle-même une petite chaîne de traitement, afin de remplir les valeurs manquantes avant la mise à l'échelle, en conservant l'ensemble du traitement dans la chaîne.

from sklearn.impute import SimpleImputer
num_pipe = Pipeline([
    ("impute", SimpleImputer(strategy="median")),
    ("scale", StandardScaler()),
])

Ajustement-transformation sur l'entraînement, transformation sur le test

La même règle d'or s'applique à l'ensemble de la chaîne de traitement : elle apprend chaque paramètre à partir des données d'entraînement lors de l'appel à fit, puis transforme uniquement les données de test lors de l'appel à predict ou transform.

full.fit(X_train, y_train)        # learns imputer, scaler, encoder, model
full.predict(X_test)              # transform-only path

Conservation d'une chaîne de traitement

Enregistrez sur le disque l'ensemble de la chaîne de traitement ajustée, prétraitement et modèle compris, avec joblib. Son chargement ultérieur applique un prétraitement identique en production, sans étapes manuelles à reproduire.

import joblib
joblib.dump(full, "model.joblib")
loaded = joblib.load("model.joblib")
loaded.predict(X_new)   # same preprocessing guaranteed

Pourquoi cela compte en production

Une chaîne de traitement conservée garantit que le modèle déployé prétraite les données entrantes EXACTLY comme lors de l'entraînement. Cette cohérence constitue la meilleure défense contre les erreurs de divergence entre l'entraînement et le service.

Vérification rapide

Testez vos connaissances sur les chaînes de traitement.

Récapitulatif

Boîte à outils des chaînes de traitement :

  • Pipeline enchaîne le prétraitement et le modèle en un seul objet d'ajustement et de prédiction
  • Aucune fuite de données : les paramètres sont appris lors de l'appel à fit, puis appliqués lors de l'appel à predict
  • ColumnTransformer gère les colonnes numériques et catégorielles mélangées
  • SimpleImputer permet de traiter les valeurs manquantes à l'intérieur de la chaîne de traitement
  • Conservez la chaîne avec joblib pour garantir un prétraitement cohérent en production

Questions Fréquemment Posées

La leçon « Construire des pipelines de prétraitement » est-elle gratuite ?

Oui — le texte complet de « Construire des pipelines de prétraitement » 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 Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Construire des pipelines de prétraitement » ?

Pipeline de sklearn, ColumnTransformer et combinaison de transformateurs pour des flux de prétraitement propres. Tu pratiques Learn AI with Python 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 Learn AI with Python ?

Aucune expérience préalable n'est requise. Learn AI with Python 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 « Construire des pipelines de prétraitement » ?

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 Learn AI with Python ?

Oui. Chaque leçon Learn AI with Python 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. Détection et suppression des valeurs aberrantes
  2. Encodage des variables catégorielles
  3. Mise à l’échelle des caractéristiques : normalisation et standardisation
  4. Construire des pipelines de prétraitement
← Retour à Learn AI with Python