Rückblick: Wein-Nachbarn
Teil des Abschnitts Überwachtes Lernen der Machine Learning-Journey von Coddy. Lektion 10 von 58.
Aufgabe
EinfachZeichne eine Karte wie die erste in diesem Kapitel, für Wein. Der Starter teilt 178 Weine auf (zwei Merkmale, Rebsorten 0 bis 2), listet ks auf und beschriftet das Diagramm.
- Skaliere beide Datensätze und passe die Skalierung an die Trainingsweine an.
- Gib das k mit der besten Testgenauigkeit aus (vorerst: Kapitel 7 hat einen faireren Prüfer).
- Fülle mit diesem k die Karte: Raster
xx,yy, 100 mal 100, -3 bis 3 in beide Richtungen, Ergebnisse inzz. - Stelle die skalierten Trainingsweine darüber als Streudiagramm dar, beschriftet mit
names; füge eine Legende hinzu.
Ausgehend von Alkohol und Flavonoiden:
Best k: 13 (test accuracy 0.956)Coddy beschreibt deine Karte.
Probier es selbst
import numpy as np
import matplotlib.pyplot as plt
from sklearn.datasets import load_wine
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier
from sklearn.preprocessing import StandardScaler
# 178 Weine aus drei Rebsorten, Klassen 0, 1, 2
wine = load_wine()
# Spalten 6 und 12: flavanoids und Prolin
X = wine.data[:, [6, 12]]
y = wine.target
names = ["cultivar A", "cultivar B", "cultivar C"]
X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.25, random_state=0)
ks = range(1, 32, 2) # k = 1, 3, 5, ..., 31
fig, ax = plt.subplots()
ax.set_title("Wine Neighbors")
ax.set_xlabel("flavanoids (scaled)")
ax.set_ylabel("proline (scaled)")
# Schreibe deinen Code unten
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