So entscheidet k-NN
Teil des Abschnitts Überwachtes Lernen der Machine Learning-Journey von Coddy. Lektion 6 von 58.
In diesem Kapitel nehmen wir k-NN auseinander. Am Ende kannst du seine Karte für beliebige Daten zeichnen, wie diese für milde und scharfe Chilischoten:
Um eine neue Chili zu klassifizieren, sucht k-nächste Nachbarn die k Trainings-Chilis, die ihr am nächsten sind, und diese stimmen ab:
„Closest“ bedeutet den kleinsten Abstand, dem du in Abschnitt 2 begegnet bist. Du wählst k:
model = KNeighborsClassifier(n_neighbors=5)n_neighbors ist k, standardmäßig 5, sofern du nichts anderes angibst. Bei zwei Klassen kann es bei einem ungeraden k niemals zu einem Gleichstand kommen.
Aufgabe
EinfachEin Astronomieclub ordnet die Sterne in stars.csv anhand von Temperatur und Magnitude Zwergen und Riesen zu. Das Starterprogramm liest einen neuen Stern und k ein.
- Finde von Hand die k nächsten Sterne: Füge eine Spalte
distancehinzu und sortiere dann. - Gib an, wie viele davon Riesen sind, und danach den Gewinner der Abstimmung.
- Überprüfe das Ergebnis mit einem k-NN-Modell mit diesem k, das mit allen Sternen trainiert wurde.
Für den Stern und k = 5 eines anderen Clubs:
Giants among the nearest 5: 4
By hand: giant
Model: giantProbier es selbst
import numpy as np
import pandas as pd
from sklearn.neighbors import KNeighborsClassifier
# Eine Zeile pro Stern: Temperatur in Tausend Kelvin, Magnitude (kleiner bedeutet heller), Zwerg oder Riese
stars = pd.read_csv("stars.csv")
X = stars[["temp_kK", "magnitude"]]
y = stars["type"]
# Der neue Stern und k
temp = float(input())
mag = float(input())
k = int(input())
new_star = pd.DataFrame({"temp_kK": [temp], "magnitude": [mag]})
# 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