Partage de technologie

Explorer le secret de la proximité : application de l'algorithme K-plus proche voisin (KNN) dans SKlearn

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Explorer le secret de la proximité : application de l'algorithme K-plus proche voisin (KNN) dans SKlearn

Dans le monde de l'apprentissage automatique, l'algorithme K-Nearest Neighbours (KNN) est connu pour sa simplicité et son intuitivité. KNN est une méthode de classification et de régression de base, et son principe de fonctionnement est très simple à comprendre : prédire à quelle catégorie ou valeur appartient un nouveau point de données en mesurant la distance entre les différentes valeurs de caractéristiques. Scikit-learn (sklearn en abrégé), en tant que bibliothèque d'apprentissage automatique largement utilisée en Python, fournit l'implémentation de l'algorithme KNN. Cet article présentera en détail comment utiliser l'algorithme KNN dans sklearn et fournira des exemples de code pratiques.

1. Principes de base de l'algorithme du K-plus proche voisin

L'idée centrale de l'algorithme des K-plus proches voisins est la suivante : si la plupart des K voisins les plus proches d'un échantillon dans l'espace des caractéristiques appartiennent à une certaine catégorie, alors l'échantillon est susceptible d'appartenir également à cette catégorie.

2. Éléments clés de l'algorithme du K-plus proche voisin
  • Sélection de la valeur K: Le choix de K a un impact important sur les performances du modèle.
  • mesure de distance: Différentes méthodes de mesure de distance peuvent être utilisées dans l'algorithme KNN, comme la distance euclidienne, la distance de Manhattan, etc.
  • fonction de poids: Les voisins peuvent se voir attribuer différentes pondérations, telles qu'une pondération réciproque basée sur la distance.
3. Classification utilisant KNN dans sklearn

Voici les étapes de base de la classification KNN à l’aide de sklearn :

3.1 Importer le classificateur KNN
from sklearn.neighbors import KNeighborsClassifier
  • 1
3.2 Préparer les données

Supposons que vous disposiez déjà d'un ensemble de données avecXest la matrice caractéristique,yest la variable cible.

from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
  • 1
  • 2
3.3 Créer une instance de classificateur KNN
knn = KNeighborsClassifier(n_neighbors=3)
  • 1
3.4 Modèle de formation

Utilisez l'ensemble de données pour entraîner le modèle KNN.

knn.fit(X, y)
  • 1
3.5 Faire des prédictions

Utilisez le modèle entraîné pour faire des prédictions.

y_pred = knn.predict(X)
  • 1
4. Utiliser KNN pour la régression dans Sklearn

KNN peut également être utilisé pour des tâches de régression.

4.1 Importer le régresseur KNN
from sklearn.neighbors import KNeighborsRegressor
  • 1
4.2 Créer une instance de régresseur KNN
knn_reg = KNeighborsRegressor(n_neighbors=3)
  • 1
4.3 Modèle de formation

Utilisez l'ensemble de données pour entraîner un modèle de régression KNN.

knn_reg.fit(X, y)
  • 1
4.4 Faire des prédictions

Utilisez le modèle entraîné pour la prédiction de régression.

y_pred_reg = knn_reg.predict(X)
  • 1
5. Avantages et inconvénients de l'algorithme K-Nearest Neighbour
  • avantage: L'algorithme est simple et facile à comprendre, sans supposer la distribution des données, il a une forte adaptabilité aux données ;
  • défaut: Forte complexité informatique, en particulier sur de grands ensembles de données sensibles aux valeurs aberrantes ;
6. Conclusion

L'algorithme K-plus proche voisin est une méthode d'apprentissage automatique simple mais puissante adaptée aux tâches de classification et de régression. sklearn fournit une implémentation KNN facile à utiliser, nous permettant d'appliquer rapidement cet algorithme à des problèmes pratiques.

Cet article explique comment utiliser l'algorithme KNN dans sklearn et fournit des exemples de code pratiques. J'espère que cet article pourra aider les lecteurs à mieux comprendre l'algorithme du K-voisin le plus proche et à maîtriser les méthodes de mise en œuvre de ces techniques dans sklearn. À mesure que la quantité de données continue de croître et que la technologie d’apprentissage automatique se développe, l’algorithme du K-plus proche voisin continuera à jouer un rôle important dans l’analyse des données et la modélisation prédictive.