Skip to main content

Cet article présente l'algorithme "paresseux" le plus élémentaire dans de nombreux algorithmes - Knn (voisin près de K-plus proche). Savez-vous pourquoi c'est le plus paresseux?



01 | Résumé de l'algorithme:


Knn est une abréviation des voisins anglais-les plus proches, représentant le k le plus proche. L'algorithme est souvent utilisé pour résoudre le problème de la classification. Des algorithmes spécifiques doivent trouver la valeur K la plus récente de la valeur à la classe A, puis déterminer quelle classe est la plupart de cette valeur, puis classée une valeur de type A.


Cela convient vraiment aux méthodes d'évaluation humaine sur les personnes de notre vie. Vous voulez connaître une personne qui est une personne, il vous suffit de trouver une relation récente avec lui (bonne) K personnellement, puis regardez cela, vous pouvez le juger comme une personne.



02 | Algorithmes de trois éléments:


à traversLe principe de cet algorithme, nous pouvons décomposer l'algorithme à 3 parties. La première partie est de déterminer la valeur K, qui trouve quelques valeurs autour de lui; La deuxième partie est un calcul de distance, ce qui signifie trouver la distance de sa part. K valeur; La troisième partie est d'identifier les règles de classification, qui consiste à évaluer tout type standard.

1, choisissez la valeur K


La sélection de la valeur K aura un impact important sur les résultats de l'algorithme KNN, et ce qui suit est un exemple simple plus bas: Comme indiqué ci-dessous, le cercle vert sera décidé de prévoir quelle classe est un triangle rouge ou un quartier bleu? Si k = 3, puisque le triangle rouge est 2/3, le cercle vert sera créé pour le triangle rouge, si K = 5, car le quad bleu 3/5, de sorte que le cercle de couleur vert est créé en quatre carrés.


Vous pouvez voir que le choix de la valeur K affectera directement les résultats de l'évaluation. Si la valeur est sélectionnéeTrop gros, cela équivaut à des cas de formation dans les grandes écoles. Pour prévenir, cela semble avoir l'impression de penser que plus de données peuvent être plus précises, mais si vous souhaitez avoir plus de valeur K, vous devez développer la distance, précision précise qu'elle diminuera naturellement.


Prendre cette personne, nous évaluons ce qu'une personne ressemble à une affaire. Si vous choisissez une valeur K plus grande, telle qu'une classe, l'image d'une classe est prévue pour prédire ce qu'une personne de cette classe ressemble à ceci. Ceci est évidemment incorrect.

Si la valeur est trop petite, mais cela peut être un cas particulier et affecter les résultats des prévisions.



omparagor n'est pas bon, trop petit, alors que devrions-nous faire? Les personnes les plus stupides sont le moyen le plus efficace d'essayer, nous avons un moyen de choisir un moyen de vérifier la croix, d'apprendre la machine. Nous pouvons également utiliser une confirmation croisée lorsque TYG J'ai choisi.


2, les données de distance
Il n'y a pas de relations quantifiées lorsque la relation entre juges et personnes n'utilise que quelques mots pour décrire la différence entre la relation entre deux personnes, telles que une petite amie (petite) & gt; Amis & GT; camarade de classe.


Cependant, lorsque nous évaluons la relation distante entre les deux, nous pouvons quantifier, où nous utilisons la distance européenne.

La distance européenne s'appelle la distance européenne, faisant référence à la distance réelle entre les deux points de l'espace M-Direction.

Deux points A (x1, Y1) et B (x2, Y2) sur un plan bidirectionnel:


Euclidene entre trois Espace dimensionnel et B (x2, Y2, Z2):



Deux vecteurs n-dimensions A (x11, x12, .. x1n) et b ( X21, x22, .. x2n) Distance ELLIDIDER:



peut également être utilisée dans le formulaireCORTOR WORKS:



Nous pouvons également utiliser d'autres distances pour mesurer les relations sans preuve entre les deux, telles que la distance de Manhattan (pas, je pense que très élevé Nom), ajoutez click Détails : https://wenku.baidu.com/view/ebde5d0e763231126edb1113.html



3, Règles de classification:

Nous utilisons actuellement les règles de classification de la plupart Les votes, c'est-à-dire que les catégories de la plupart des valeurs de K les plus récentes sont la liste des valeurs prédites.



03 | Algorithme de classe Étape:


Collected Data: Recherchez des données de texte formées.

Préparer les données: écrire des fichiers texte avec python.

Données d'analyse: une analyse des statistiques de données a une compréhension de base.

Algorithme de formation: Knn n'a pas de pas, c'est pourquoi il s'appelle l'algorithme le plus paresseux.

Algorithme de test: données fournies par des donnéesc utilisé pour vérifier l'algorithme.
Utilisation de l'algorithme: L'algorithme a une grande précision d'essais directement à la réalité.



04 | Utilisez Python pour classer les films non spécifiés:



Supposons que la différence entre les films d'amour et les films d'action Oui, il peut être déterminé par le nombre de Les temps de combat et le nombre de baisers, et le type de film est fourni ci-dessous et le contenu du contenu et l'âge correspondant (ensemble de données de formation).

Il y a maintenant un film A. Il est connu de 18 ans, le nombre de baisers est 90, nécessite le type de film du film.

2, Données préparées



    3, Données analytiques


    4, l'algorithme de test

Par test final, si un film contient 18 chiffres, 90 fois, on peut déterminer que le film est un film d'amour.

5, algorithme d'application:

en modifiant la valeur de l'INX, LLe film peut être pris directement.

05 |Enfin:


Certains points de connaissance liés à la mise en œuvre de Python:

Les données de Pandas ont été converties en numpy, DF.MATHATRAX ()

MATPLOTLIB La Chine a affiché des problèmes brassés
Liste de génération de formule

NP.TILE () Fonction NP.Sum () NP.SUM () NP.ARGSORT () [) [)

Méthode dict.get Méthode DICT .Items ()

Opérateur.Imtemptter () [)

Sujets

Catégories