Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Was ist eine Pipeline | Pipelines
ML-Einführung Mit Scikit-Learn

bookWas ist eine Pipeline

In der vorherigen Sektion haben wir drei Vorverarbeitungsschritte durchgeführt: Imputation, Kodierung und Skalierung.

Wir haben dies Schritt für Schritt gemacht, indem wir die benötigten Spalten transformiert und sie wieder im X-Array zusammengeführt haben. Dies ist ein mühsamer Prozess, insbesondere wenn ein OneHotEncoder verwendet wird, der die Anzahl der Spalten verändert.

Ein weiteres Problem dabei ist, dass für Vorhersagen neue Instanzen denselben Vorverarbeitungsschritten unterzogen werden müssen, sodass alle diese Transformationen erneut durchgeführt werden müssen.

Glücklicherweise stellt Scikit-learn die Pipeline-Klasse zur Verfügung – eine einfache Möglichkeit, alle diese Transformationen zusammenzufassen, sodass es einfacher ist, sowohl Trainingsdaten als auch neue Instanzen zu transformieren.

Eine Pipeline dient als Container für eine Abfolge von Transformatoren und schließlich einen Schätzer. Wenn die Methode .fit_transform() auf einer Pipeline aufgerufen wird, wird die Methode .fit_transform() jedes einzelnen Transformators nacheinander auf die Daten angewendet.

# 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)

Dieser optimierte Ansatz bedeutet, dass .fit_transform() nur einmal auf dem Trainingsdatensatz aufgerufen werden muss und anschließend die Methode .transform() verwendet werden kann, um neue Instanzen zu verarbeiten.

question mark

Was ist der Hauptvorteil der Verwendung einer Pipeline in scikit-learn für die Datenvorverarbeitung und das Modelltraining?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 1

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

Awesome!

Completion rate improved to 3.13

bookWas ist eine Pipeline

Swipe um das Menü anzuzeigen

In der vorherigen Sektion haben wir drei Vorverarbeitungsschritte durchgeführt: Imputation, Kodierung und Skalierung.

Wir haben dies Schritt für Schritt gemacht, indem wir die benötigten Spalten transformiert und sie wieder im X-Array zusammengeführt haben. Dies ist ein mühsamer Prozess, insbesondere wenn ein OneHotEncoder verwendet wird, der die Anzahl der Spalten verändert.

Ein weiteres Problem dabei ist, dass für Vorhersagen neue Instanzen denselben Vorverarbeitungsschritten unterzogen werden müssen, sodass alle diese Transformationen erneut durchgeführt werden müssen.

Glücklicherweise stellt Scikit-learn die Pipeline-Klasse zur Verfügung – eine einfache Möglichkeit, alle diese Transformationen zusammenzufassen, sodass es einfacher ist, sowohl Trainingsdaten als auch neue Instanzen zu transformieren.

Eine Pipeline dient als Container für eine Abfolge von Transformatoren und schließlich einen Schätzer. Wenn die Methode .fit_transform() auf einer Pipeline aufgerufen wird, wird die Methode .fit_transform() jedes einzelnen Transformators nacheinander auf die Daten angewendet.

# 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)

Dieser optimierte Ansatz bedeutet, dass .fit_transform() nur einmal auf dem Trainingsdatensatz aufgerufen werden muss und anschließend die Methode .transform() verwendet werden kann, um neue Instanzen zu verarbeiten.

question mark

Was ist der Hauptvorteil der Verwendung einer Pipeline in scikit-learn für die Datenvorverarbeitung und das Modelltraining?

Select the correct answer

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 3. Kapitel 1
some-alt