Le défi de classification

Apprentissage supervisé avec scikit-learn

George Boorman

Core Curriculum Manager, DataCamp

Classer les étiquettes de nouvelles données

  1. Créer un modèle
  2. Le modèle apprend à partir des données étiquetées fournies
  3. Lui fournir des données non étiquetées en entrée
  4. Le modèle prédit les étiquettes des nouvelles données

 

  • Données étiquetées = données d'entraînement
Apprentissage supervisé avec scikit-learn

k plus proches voisins (k-NN)

  • Prédire l'étiquette d'un point de données en

    • Cherchant les k points étiquetés les plus proches

    • Prenant la majorité des votes

Apprentissage supervisé avec scikit-learn

k plus proches voisins (k-NN)

nuage de points avec des observations en bleu et en rouge, et une nouvelle observation en noir

Apprentissage supervisé avec scikit-learn

k plus proches voisins (k-NN)

rayon autour des trois observations les plus proches du point noir

Apprentissage supervisé avec scikit-learn

k plus proches voisins (k-NN)

rayon autour des cinq observations les plus proches du point noir

Apprentissage supervisé avec scikit-learn

Intuition KNN

nuage de points de la charge totale en soirée par rapport à la charge totale de jour, où les observations sont bleues si elles ont résilié et rouges sinon

Apprentissage supervisé avec scikit-learn

Intuition KNN

nuage de points de résiliation avec une frontière de décision séparant les observations selon que KNN prédit une résiliation ou non

Apprentissage supervisé avec scikit-learn

Utiliser scikit-learn pour ajuster un classificateur

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)
Apprentissage supervisé avec scikit-learn

Prédire sur des données non étiquetées

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]
Apprentissage supervisé avec scikit-learn

Passons à la pratique !

Apprentissage supervisé avec scikit-learn

Preparing Video For Download...