En andra leksaksmodell
I den här övningen bygger du ytterligare en klassificerare med logistisk regression på ett bilddataset. Varje bild föreställer en siffra från 0 till 9. Målet är att klassificera varje bild som en siffra – till exempel en 7 eller en 9. De särdrag som används är specifika pixelvärden i intervallet 0–16 som bygger upp bilden. I stället för att utvärdera noggrannheten manuellt använder du accuracy_score() från sklearn.
Exempelbilddata är inläst som image_data tillsammans med sklearn och pandas som pd. LogisticRegression är tillgängligt via sklearn.linear_model.
Den här övningen är en del av kursen
Förutsäga CTR med maskininlärning i Python
Övningsinstruktioner
- Hämta antalet rader i
Xför att avgöra vid vilket index tränings- och testdata ska delas. - Skapa en logistisk regressionsklassificerare.
- Generera förutsägelser med klassificeraren och utvärdera noggrannheten med
accuracy_score()frånsklearn.metrics.
Interaktiv övning med praktiskt arbete
Testa den här övningen genom att slutföra den här exempelkoden.
# 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))