Klassifikationsbeispiel

Überwachtes Lernen mit scikit-learn

George Boorman

Core Curriculum Manager, DataCamp

Klassifikation von Labels für neue Daten

  1. Modell wird erstellt
  2. Modell lernt aus übergebenen Daten mit Labels
  3. Modell erhält Daten ohne Labels als Eingabe
  4. Modell sagt die Labels der neuen Daten voraus

 

  • Daten mit Labels = Trainingsdaten
Überwachtes Lernen mit scikit-learn

k-Nearest Neighbors (KNN)

  • Vorhersage des Labels eines unbeschrifteten Datenpunktes durch:

    • Auswahl der k nächstgelegenen Datenpunkte mit Labels

    • Abstimmung nach Mehrheitsprinzip

Überwachtes Lernen mit scikit-learn

k-Nearest Neighbors (KNN)

Streudiagramm mit blauen und roten Datenpunkten sowie einem schwarzen Datenpunkt

Überwachtes Lernen mit scikit-learn

k-Nearest Neighbors (KNN)

Dasselbe Streudiagramm mit hervorgehobenem Umkreis mit drei Datenpunkten, die dem schwarzen Punkt am nächsten liegen

Überwachtes Lernen mit scikit-learn

k-Nearest Neighbors (KNN)

Dasselbe Streudiagramm mit hervorgehobenem Umkreis mit fünf Datenpunkten, die dem schwarzen Punkt am nächsten liegen

Überwachtes Lernen mit scikit-learn

Visualisierung der KNN-Methode

Streudiagramm mit Gesamtgebühren für Telefonate am Abend und am Tag; blaue Punkte stehen für abgewanderte Kunden, rote Punkte für nicht abgewanderte Kunden

Überwachtes Lernen mit scikit-learn

Visualisierung der KNN-Methode

Streudiagramm mit eingezeichneter Entscheidungsgrenze, um die wahrscheinlich abwandernden von den wahrscheinlich nicht abwandernden Kunden zu trennen

Überwachtes Lernen mit scikit-learn

Anpassung eines Klassifikators mit scikit-learn

from sklearn.neighbors import KNeighborsClassifier

X = churn_df[["total_day_charge", "total_eve_charge"]].values y = churn_df["churn"].values
print(X.shape, y.shape)
(3333, 2), (3333,)
knn = KNeighborsClassifier(n_neighbors=15)

knn.fit(X, y)
Überwachtes Lernen mit scikit-learn

Vorhersagen für Daten ohne Labels

X_new = np.array([[56.8, 17.5],
                  [24.4, 24.1],
                  [50.1, 10.9]])

print(X_new.shape)
(3, 2)
predictions = knn.predict(X_new)

print('Predictions: {}'.format(predictions))
Predictions: [1 0 0]
Überwachtes Lernen mit scikit-learn

Lass uns üben!

Überwachtes Lernen mit scikit-learn

Preparing Video For Download...