Ein Modell bewerten
Teil des Abschnitts Überwachtes Lernen der Machine Learning-Journey von Coddy. Lektion 4 von 58.
Ist ein Modell gut? Seine Genauigkeit, also der Anteil der Testzeilen, bei denen es richtig liegt, gibt Aufschluss. Vergleiche sie mit einer einfachen Schätzung:
78 % der Testausleihen dieser Bibliothek kamen pünktlich zurück, daher ergibt es eine Bewertung von 0,78, immer pünktlich zu antworten. Das ist die Baseline.
from sklearn.metrics import accuracy_score
pred = model.predict(X_test)
print(accuracy_score(y_test, pred))
print(model.score(X_test, y_test))
common = y_train.value_counts().index[0]
print((y_test == common).mean())Dies gibt 0.88, 0.88, 0.78 aus. score sagt voraus und zählt in einem Aufruf; die Baseline gibt immer das häufigste Trainingslabel aus.
Ein Modell verdient seinen Platz nur, wenn es die Baseline übertrifft.
Aufgabe
EinfachDie Sensoren einer Imkerin überwachen 160 Bienenstöcke in hives.csv; swarm gibt an, ob ein Bienenstock geschwärmt hat. Kann ein Sensor sie warnen? Der Starter liest den Namen eines Sensors ein und trainiert ein Modell ausschließlich mit diesem Sensor.
- Gib dessen Testgenauigkeit, auf 3 Dezimalstellen gerundet, aus.
- Gib die Baseline aus und nenne dabei das Label, das sie immer vorhersagt.
- Gib aus, ob das Modell die Baseline übertrifft.
Für einen anderen Bienenstand und weight_change_kg:
Model on weight_change_kg: 0.775
Always "no": 0.7
Beats the baseline: yesProbier es selbst
import pandas as pd
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
# Eine Zeile pro Bienenstock: seine Sensoren und ob er geschwärmt hat
hives = pd.read_csv("hives.csv")
sensor = input()
X = hives[[sensor]]
y = hives["swarm"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
model = KNeighborsClassifier()
model.fit(X_train, y_train)
# Schreibe deinen Code unten
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Überwachtes Lernen
1Dein erstes Modell
Aus Beispielen lernenTrainings- und TestdatensätzeAnpassen und VorhersagenEin Modell bewertenRückblick: Saatgutsortierer4Logistische Regression
Ja-Nein-VorhersagenDie EntscheidungsschwelleGewichte als IndizienMehrere KlassenRückblick: Spamfilter2Nächste Nachbarn
So entscheidet k-NNk wählenEntscheidungsgrenzenSkalierung für NachbarnRückblick: Wein-Nachbarn5Klassifikatoren bewerten
Die KonfusionsmatrixPräzision und TrefferquoteDer F1-ScoreUnausgewogene KlassenROC-KurvenRückblick: Screeningtest3Lineare Regression
Zahlen vorhersagenMehrere MerkmaleFehler messenResiduenplotsZusammenfassung: Fahrradverleih6Entscheidungsbäume
Bäume stellen FragenEinen Baum lesenBaumtiefeMerkmalswichtigkeitRückblick: Kreditentscheidungen9Ensembleverfahren
Random ForestsWarum Random Forests funktionierenGradient BoostingRückblick: Förster des Waldes12Abschließende Herausforderungen
Diabetes-FortschrittKreditgenehmigungHandgeschriebene ZiffernKundenabwanderungÜbe selbstständig: Online-Python-Compiler