Een tweede speelgoedmodel
In deze oefening bouw je nog een classifier met logistic regression op een gegevensset met afbeeldingen. Elke afbeelding stelt een cijfer voor van 0 tot en met 9. Het doel is om elke afbeelding te classificeren als een cijfer – bijvoorbeeld een 7 of een 9. De features zijn specifieke pixelwaarden van 0–16 waaruit de afbeelding is opgebouwd. In plaats van de nauwkeurigheid met de hand te bepalen, evalueer je de nauwkeurigheid van het model met accuracy_score() uit sklearn.
Voorbeelddata met afbeeldingen is geladen als image_data, en sklearn en pandas als pd zijn beschikbaar. LogisticRegression is te importeren via sklearn.linear_model.
Deze oefening maakt deel uit van de cursus
CTR voorspellen met Machine Learning in Python
Oefeninstructies
- Haal het aantal rijen van
Xop om de index te bepalen waarop je de trainings- en testdata splitst. - Maak een logistic regression-classifier.
- Maak voorspellingen met de classifier en evalueer de nauwkeurigheid met
accuracy_score()uitsklearn.metrics.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# Define X and y
X = image_data.data
y = image_data.target
# Define training and testing
split = int(0.7 * ____(X))
X_train, X_test, y_train, y_test = \
X[:split], X[split:], y[:split], y[split:]
# Create logistic regression classifier
clf = ____()
# Train classifier - predict label and evaluate accuracy
y_pred = clf.fit(X_train, y_train).____(X_test)
print(____(y_test, y_pred))