0% ont trouvé ce document utile (0 vote)
6 vues2 pages

Explication KNN

Le document explique le fonctionnement de l'algorithme des k plus proches voisins (KNN) en Python pour classer un nouveau point en fonction de ses voisins les plus proches. Il décrit les étapes clés, y compris le calcul des distances, le tri des voisins et la sélection de la classe majoritaire. Un exemple pratique illustre comment le programme fonctionne avec des données connues.

Transféré par

adam.tard24
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
6 vues2 pages

Explication KNN

Le document explique le fonctionnement de l'algorithme des k plus proches voisins (KNN) en Python pour classer un nouveau point en fonction de ses voisins les plus proches. Il décrit les étapes clés, y compris le calcul des distances, le tri des voisins et la sélection de la classe majoritaire. Un exemple pratique illustre comment le programme fonctionne avec des données connues.

Transféré par

adam.tard24
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats DOCX, PDF, TXT ou lisez en ligne sur Scribd

Explication simple du programme KNN

Algorithme des k plus proches voisins en Python

Ce document explique facilement un programme Python qui utilise la méthode des k plus proches
voisins, aussi appelée KNN. Le but est de classer un nouveau point en regardant les points connus
les plus proches de lui.

1. Idée générale du programme


Le programme reçoit une liste de points déjà connus. Chaque point possède une coordonnée et une
classe. Ensuite, pour un nouveau point, le programme cherche les k points les plus proches et choisit
la classe qui revient le plus souvent.

2. Calculer la distance entre deux points


La première fonction calcule la distance entre deux points dans un plan. Elle utilise la formule de
distance entre deux coordonnées.

from math import sqrt

def distance(p1, p2):


return sqrt((p1[0] - p2[0])**2 + (p1[1] - p2[1])**2)
Exemple : si p1 = (1, 2) et p2 = (4, 6), la fonction mesure l’écart entre ces deux points.

3. La fonction principale
La fonction principale s’appelle k_plus_proches_voisins. Elle prend trois informations :

 donnees : les points déjà connus avec leur classe.


 point : le nouveau point que l’on veut classer.
 k : le nombre de voisins les plus proches à regarder.

def k_plus_proches_voisins(donnees, point, k):

4. Calculer les distances


Le programme parcourt tous les points connus. Pour chaque point, il calcule la distance avec le
nouveau point, puis il stocke la distance avec la classe correspondante.

distances = []
for coord, classe in donnees:
d = distance(coord, point)
[Link]((d, classe))

5. Trier les voisins


Après avoir calculé toutes les distances, le programme trie la liste. Les points les plus proches se
retrouvent au début.

[Link]()

6. Garder les k plus proches classes


Ensuite, le programme récupère seulement les classes des k premiers voisins. Le symbole _ signifie
que la distance est ignorée, car on veut garder uniquement la classe.

k_classes = [classe for _, classe in distances[:k]]

7. Choisir la classe majoritaire


Enfin, le programme regarde quelle classe apparaît le plus souvent parmi les k voisins. Cette classe
est retournée comme résultat.

return max(set(k_classes), key=k_classes.count)

8. Exemple complet
donnees = [
((1, 2), "A"),
((2, 3), "A"),
((8, 9), "B"),
((9, 8), "B")
]

point = (2, 2)
resultat = k_plus_proches_voisins(donnees, point, 3)
print(resultat)
Dans cet exemple, le point (2, 2) est proche des points de classe A. Le programme affichera donc
probablement A.

Résumé
En résumé : pour classer un nouveau point, le programme regarde les k points connus les plus
proches de lui, puis choisit la classe la plus fréquente parmi ces voisins.

Vous aimerez peut-être aussi