Kom igångKom igång gratis

Sätt ihop allt

Du har två farhågor om din pipeline på startupföretaget för arytmidetektering:

  • Appen tränades på patienter i alla åldrar, men används främst av träningsanvändare som tenderar att vara unga. Du misstänker att det kan röra sig om domänskifte och vill därför bortse från alla exempel med patienter över 50 år.
  • Du är fortfarande orolig för överanpassning, och vill se om det hjälper att göra slumpskogsklassificeraren mindre komplex och välja ut ett antal särdrag.

Du ska skapa en pipeline med ett steg för särdragsurval med SelectKBest() och en RandomForestClassifier, som båda redan har importerats. Du har även tillgång till GridSearchCV(), Pipeline, numpy som np och pickle. Data finns tillgänglig som arrh.

Den här övningen är en del av kursen

Att designa maskininlärningsflöden i Python

Visa kurs

Övningsinstruktioner

  • Skapa en pipeline med SelectKBest() som steg ft och RandomForestClassifier() som steg clf.
  • Skapa ett parameterrutnät för att finjustera k i SelectKBest() och max_depth i RandomForestClassifier().
  • Använd GridSearchCV() för att optimera din pipeline mot det rutnätet och data som bara innehåller personer under 50 år.
  • Spara den optimerade pipelinen i en pickle-fil för produktion.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Create a pipeline 
pipe = Pipeline([
  ('ft', ____), ('clf', ____(random_state=2))])

# Create a parameter grid
grid = {'ft__k':[5, 10], '____':[10, 20]}

# Execute grid search CV on a dataset containing under 50s
grid_search = ____(pipe, param_grid=grid)
arrh = arrh.____[____(arrh['age'] < 50)]
____.____(arrh.drop('class', 1), arrh['class'])

# Push the fitted pipeline to production
with ____('pipe.pkl', ____) as file:
    pickle.dump(____, file)
Redigera och kör kod