Deine erste Pipeline – nochmal!
Zurück im Arrhythmie-Startup steht dein monatliches Review an, und dabei wird eine Expertin bzw. ein Experte für Python deinen Code prüfen. Du entscheidest dich, aufzuräumen und Best Practices zu folgen: Ersetze dein Skript für Feature-Auswahl und Random-Forest-Klassifikation durch eine Pipeline. Du verwendest einen Trainingsdatensatz in X_train und y_train sowie mehrere Module: RandomForestClassifier, SelectKBest() und f_classif() für die Feature-Auswahl sowie GridSearchCV und Pipeline.
Diese Übung ist Teil des Kurses
Machine-Learning-Workflows in Python entwerfen
Anleitung zur Übung
- Erstelle eine Pipeline mit dem im Beispielcode angegebenen Feature-Selektor und einem Random-Forest-Klassifikator. Benenne den ersten Schritt
feature_selection. - Füge in
paramszwei Key-Value-Paare hinzu: eines für die Anzahl der Featureskim Selektor mit den Werten 10 und 20, und eines fürn_estimatorsim Forest mit den möglichen Werten 2 und 5. - Initialisiere ein
GridSearchCV-Objekt mit der gegebenen Pipeline und dem Parameter-Grid. - Fitte das Objekt auf die Daten und gib die bestperformende Parameterschätzung aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Create pipeline with feature selector and classifier
pipe = ___([
(___, SelectKBest(f_classif)),
('clf', ___(random_state=2))])
# Create a parameter grid
params = {
'feature_selection__k':___,
___:[2, 5]}
# Initialize the grid search object
grid_search = ___(___, ___=params)
# Fit it to the data and print the best value combination
print(grid_search.fit(___, ___).___)