Qu'est-ce qu'un pipeline
Glissez pour afficher le menu
Dans la section précédente, trois étapes de prétraitement ont été réalisées : imputation, encodage et mise à l'échelle.
Les étapes de prétraitement ont été appliquées une par une, en transformant des colonnes spécifiques puis en les réintégrant dans le tableau X. Cette méthode peut s'avérer fastidieuse, en particulier avec OneHotEncoder, qui modifie le nombre de colonnes.
Un autre inconvénient est que toute nouvelle donnée utilisée pour la prédiction doit suivre la même séquence de transformations, ce qui nécessite de répéter l'ensemble du processus.
La classe Pipeline de Scikit-learn simplifie cela en combinant toutes les transformations dans un seul flux de travail, facilitant ainsi l'application cohérente du prétraitement aussi bien aux données d'entraînement qu'aux nouvelles instances.
Un Pipeline sert de conteneur pour une séquence de transformateurs, et finalement, un estimateur. Lorsque vous invoquez la méthode .fit_transform() sur un Pipeline, il applique séquentiellement la méthode .fit_transform() de chaque transformateur aux données.
# Create a pipeline with three steps: imputation, one-hot encoding, and scaling
pipeline = Pipeline([
('imputer', SimpleImputer(strategy='most_frequent')), # Step 1: Impute missing values
('encoder', OneHotEncoder()), # Step 2: Convert categorical data
('scaler', StandardScaler()) # Step 3: Scale the data
])
# Fit and transform the data using the pipeline
X_transformed = pipeline.fit_transform(X)
Cette approche simplifiée signifie qu'il suffit d'appeler .fit_transform() une seule fois sur l'ensemble d'entraînement puis d'utiliser la méthode .transform() pour traiter de nouveaux exemples.
Merci pour vos commentaires !
Demandez à l'IA
Demandez à l'IA
Posez n'importe quelle question ou essayez l'une des questions suggérées pour commencer notre discussion