Six algorithmes de base de l'apprentissage automatique

Déplacez le fond de teint, ne le vaporisez pas si vous ne l'aimez pas, apprenez-le par vous-même 

Explications détaillées de six algorithmes, y compris la régression linéaire, la régression logistique, la descente de gradient, le réseau neuronal, l'arbre de décision et l'algorithme de clustering k-means.

Récemment, Wu Enda a mis à jour un article de blog sur son hebdomadaire d'intelligence artificielle "The Batch", résumant l'origine historique de plusieurs algorithmes de base dans le domaine de l'apprentissage automatique.

Au début de l'article, Ng Enda rappelait une décision dans son processus de recherche :

Il y a de nombreuses années, dans un projet, lors du choix d'un algorithme, il devait choisir entre un réseau de neurones et un algorithme d'apprentissage par arbre de décision. Compte tenu du budget de calcul, il a finalement opté pour le réseau de neurones, délaissant longtemps l'arbre de décision amélioré.

C'était une mauvaise décision, "Heureusement, mon équipe a rapidement revu mon choix et le projet a été un succès", a déclaré Wu Enda.

Il a soupiré qu'il est très important d'apprendre et de mettre à jour en permanence les connaissances de base. Comme d'autres domaines de la technologie, le domaine de l'apprentissage automatique évolue constamment avec plus de chercheurs et le nombre de résultats de recherche. Mais la contribution de certains algorithmes de base et idées fondamentales peut résister à l'épreuve du temps :

  • Algorithmes : régression linéaire et logistique, arbres de décision, etc.

  • Concepts : régularisation, optimisation des fonctions de perte, biais/variance, etc.

Selon Wu Enda, ces algorithmes et concepts sont au cœur de nombreux modèles d'apprentissage automatique, notamment les prédicteurs du prix de l'immobilier, les générateurs de texte-image (tels que DALL·E), etc.

Dans le dernier article, Wu Enda et son équipe ont enquêté sur les sources, les utilisations et l'évolution des six algorithmes de base, et ont fourni une explication plus détaillée.

Ces six algorithmes sont : la régression linéaire, la régression logistique, la descente de gradient, le réseau de neurones, l'arbre de décision et l'algorithme de clustering k-means.

1  Régression linéaire : droite et étroite

La régression linéaire est une méthode statistique clé dans l'apprentissage automatique, mais elle n'est pas gagnée sans combat. Il a été proposé par deux brillants mathématiciens, mais 200 ans plus tard, le problème reste irrésolu. La controverse de longue date démontre non seulement l'excellente utilité de l'algorithme, mais aussi sa simplicité fondamentale.

Alors, dont l'algorithme est la régression linéaire ?

En 1805, le mathématicien français Adrien-Marie Legendre a publié la méthode consistant à ajuster une ligne à un ensemble de points tout en essayant de prédire la position d'une comète (la navigation céleste était la direction scientifique la plus précieuse du commerce mondial à l'époque, tout comme l'intelligence artificielle aujourd'hui comme intelligent).

Légende : Un croquis du portrait d'Adrien-Marie Legendre

Quatre ans plus tard, le prodige allemand de 24 ans Carl Friedrich Gauss a insisté sur le fait qu'il l'utilisait depuis 1795, mais pensait que c'était trop trivial pour en parler. L'affirmation de Gauss a incité Legendre à publier un article anonyme déclarant qu '«un géomètre très éminent n'a pas hésité à adopter cette méthode».

Légende : Carl Friedrich Gauss

Pente et biais : la régression linéaire est utile lorsque la relation entre le résultat et les variables qui l'affectent suit une ligne droite. Par exemple, la consommation de carburant d'une voiture est linéairement liée à son poids.

  • La relation entre la consommation de carburant y d'une voiture et son poids x dépend de la pente w de la droite (de combien la consommation de carburant augmente avec le poids) et du terme de biais b (consommation de carburant à poids nul) : y=w*x+b.

  • Pendant l'entraînement, compte tenu du poids de la voiture, l'algorithme prédit la consommation de carburant attendue. Il compare la consommation de carburant prévue et réelle. Il minimise ensuite la différence au carré, généralement par des techniques ordinaires des moindres carrés, pour affiner les valeurs de w et b.

  • Considérer la traînée de la voiture peut générer des prédictions plus précises. Des variantes supplémentaires prolongent la ligne jusqu'au plan. De cette façon, la régression linéaire peut s'adapter à n'importe quel nombre de variables/dimensions.

Deux étapes de vulgarisation : l'algorithme a immédiatement aidé les navigateurs à suivre les étoiles, et plus tard les biologistes (notamment le cousin de Charles Darwin, Francis Galton) ont identifié des traits héréditaires chez les plantes et les animaux. Ces deux développements profonds libèrent le large potentiel de la régression linéaire. En 1922, les statisticiens britanniques Ronald Fisher et Karl Pearson ont montré comment la régression linéaire s'insère dans le cadre statistique général de corrélation et de distribution, ce qui la rend utile dans toutes les sciences. Et, près d'un siècle plus tard, l'avènement des ordinateurs a fourni les données et la puissance de traitement nécessaires pour les exploiter encore plus.

Faire face à l'ambiguïté : bien sûr, les données ne seront jamais mesurées parfaitement, et certaines variables sont plus importantes que d'autres. Ces réalités de la vie ont inspiré des variantes plus complexes. Par exemple, la régression linéaire avec régularisation (également connue sous le nom de «régression ridge») encourage le modèle de régression linéaire à ne pas trop dépendre d'une seule variable, ou plutôt à s'appuyer uniformément sur la variable la plus importante. Si pour simplifier, une autre forme de régularisation (L1 au lieu de L2) produit un lasso (estimation compressée), incitant le plus de coefficients possible à être nuls. En d'autres termes, il apprend à sélectionner des variables à fort pouvoir prédictif et à ignorer le reste. Les filets élastiques combinent les deux types de régularisation. Il est utile lorsque les données sont rares ou que les caractéristiques semblent être corrélées.

Dans chaque neurone : Maintenant, la version simple est toujours très utile. Le type de neurone le plus courant dans un réseau de neurones est un modèle de régression linéaire, suivi d'une fonction d'activation non linéaire, faisant de la régression linéaire un élément fondamental de l'apprentissage en profondeur.

2  Régression logistique : suivre la courbe

Il fut un temps où la régression logistique servait à classer une seule chose : si vous buviez une bouteille de poison, risquiez-vous d'être étiqueté « vivant » ou « mort » ? Les temps ont changé et aujourd'hui, non seulement appeler les services d'urgence est une meilleure réponse à cette question, mais la régression logistique est au cœur de l'apprentissage en profondeur.

Contrôle toxique :

La fonction logistique remonte aux années 1830, lorsque le statisticien belge PF Verhulst l'a inventée pour décrire la dynamique de la population : Au fil du temps, l'explosion initiale de la croissance exponentielle s'aplatit à mesure qu'elle consomme les ressources disponibles, ce qui donne la courbe logistique caractéristique. Plus d'un siècle plus tard, le statisticien américain EB Wilson et son étudiante Jane Worcester ont conçu une régression logistique pour calculer la quantité d'une substance dangereuse donnée qui est mortelle.

Légende : PF Verhulst

Fonction d'ajustement : La régression logistique adapte une fonction logistique à un ensemble de données afin de prédire la probabilité d'un événement donné (par exemple, l'ingestion de strychnine) pour un résultat particulier (par exemple, un décès prématuré).

  • La formation ajuste le centre de la courbe horizontalement et le milieu de la courbe verticalement pour minimiser l'erreur entre la sortie de la fonction et les données.

  • Ajuster le centre vers la droite ou vers la gauche signifie qu'il faut plus ou moins de poison pour tuer une personne moyenne. La raideur de la pente implique une certitude : avant la mi-parcours, la plupart des gens survivent ; plus de la moitié, « juste dire au revoir » (c'est-à-dire la mort). Les pentes douces sont plus indulgentes : en dessous du milieu de la courbe, plus de la moitié survivent ; plus haut, moins de la moitié survivent.

  • Mettez un seuil entre un résultat et un autre, disons 0,5, et la courbe devient un classifieur. Entrez simplement une dose dans le modèle et vous saurez si vous devez organiser une fête ou des funérailles.

Plus de résultats : Les travaux de Verhulst ont trouvé des probabilités de résultats binaires, ignorant d'autres possibilités, telles que de quel côté de l'au-delà une victime d'empoisonnement pourrait se retrouver. Ses successeurs ont étendu l'algorithme :

  • À la fin des années 1960, le statisticien britannique David Cox et le statisticien néerlandais Henri Theil ont travaillé indépendamment pour effectuer une régression logistique pour des situations avec plus de deux résultats possibles.

  • D'autres travaux ont produit une régression logistique ordinale, où le résultat est une valeur ordinale.

  • Pour traiter des données clairsemées ou de grande dimension, la régression logistique peut utiliser les mêmes techniques de régularisation que la régression linéaire.

 

Légende : David Cox

Courbes multifonctionnelles : les fonctions logistiques décrivent un large éventail de phénomènes de manière assez précise, de sorte que la régression logistique fournit des prédictions de base utiles dans de nombreuses situations. En médecine, il estime la mortalité et le risque de maladie. En science politique, il prédit les gagnants et les perdants des élections. En économie, il prédit les perspectives commerciales. Plus important encore, il pilote un sous-ensemble de neurones dans une grande variété de réseaux de neurones (où la non-linéarité est la fonction sigmoïde).

3  Descente en dégradé : tout est en descente

Imaginez faire une randonnée dans les montagnes après le crépuscule et découvrir que vous ne pouvez rien voir sous vos pieds. Et la batterie de votre téléphone est épuisée, vous ne pouvez donc pas utiliser l'application GPS pour retrouver votre chemin. Vous pourriez trouver le chemin le plus rapide avec une descente en gradient. Attention à ne pas descendre de la falaise.

Soleil et tapis :  la descente en pente est plus bénéfique que la descente à travers un terrain escarpé. En 1847, le mathématicien français Augustin-Louis Cauchy a inventé un algorithme pour approximer les orbites des étoiles. Soixante ans plus tard, son compatriote Jacques Hadamard l'a développé de manière indépendante pour décrire la déformation d'objets fins et flexibles tels que les tapis, ce qui pourrait faciliter la randonnée à genoux. Dans l'apprentissage automatique, cependant, son utilisation la plus courante consiste à trouver le point le plus bas de la fonction de perte d'un algorithme d'apprentissage.

 

Légende : Augustin-Louis Cauchy

Descente : Un réseau de neurones formé fournit une fonction qui calcule une sortie souhaitée en fonction d'une entrée. Une façon de former un réseau consiste à minimiser la perte ou l'erreur dans la sortie en calculant de manière itérative la différence entre la sortie réelle et la sortie souhaitée, puis en modifiant les valeurs des paramètres du réseau pour réduire la différence. La descente de gradient réduit la différence, minimisant la fonction qui calcule la perte. La valeur du paramètre du réseau équivaut à une position sur le terrain, et la perte est la hauteur actuelle. Au fur et à mesure que vous descendez, vous pouvez augmenter la capacité du réseau à calculer plus près de la sortie souhaitée. La visibilité est limitée car dans une situation typique d'apprentissage supervisé, l'algorithme ne repose que sur les valeurs des paramètres du réseau et le gradient, ou la pente, de la fonction de perte - c'est-à-dire l'endroit où vous vous trouvez sur la colline et la pente de votre pieds.

  • L'approche de base consiste à se déplacer dans la direction où le terrain descend le plus raide. L'astuce consiste à calibrer votre foulée. Une foulée trop petite, et il faut beaucoup de temps pour progresser ; trop grande, et vous sautez dans un territoire inexploré, peut-être en montée plutôt qu'en descente.

  • Compte tenu de la position actuelle, l'algorithme estime la direction de descente la plus rapide en calculant le gradient de la fonction de perte. Si le gradient pointe vers le haut, alors l'algorithme va dans la direction opposée en soustrayant une fraction du gradient. Une fraction α appelée taux d'apprentissage détermine la taille du pas avant que le gradient ne soit à nouveau mesuré.

  • Répétez ces quelques étapes et nous espérons que vous atteindrez une vallée. Toutes nos félicitations!

Coincé dans une vallée : Dommage que votre téléphone soit mort car l'algorithme ne vous a probablement pas poussé au fond de la montagne convexe. Vous pouvez être coincé dans un paysage non convexe composé de plusieurs vallées (minima locaux), de sommets montagneux (maxima locaux), de points de selle (points de selle) et de plateaux. En fait, des tâches telles que la reconnaissance d'images, la génération de texte et la reconnaissance vocale sont toutes non convexes, et de nombreuses variantes de descente de gradient ont vu le jour pour gérer cette situation. Par exemple, l'algorithme peut avoir une dynamique qui l'aide à amplifier les petits hauts et les bas, ce qui le rend plus susceptible d'atteindre un creux. Les chercheurs ont conçu tellement de variantes qu'il semble qu'il existe autant d'optimiseurs que de minima locaux. Heureusement, les minima locaux et les minima globaux ont tendance à être à peu près égaux.

Optimiseurs optimaux : La descente de gradient est le choix évident pour trouver le minimum de n'importe quelle fonction. Dans les cas où la solution exacte peut être calculée directement, par exemple, dans une tâche de régression linéaire avec un grand nombre de variables, elle peut se rapprocher d'une valeur, souvent plus rapidement et à moindre coût. Mais il joue un rôle dans les tâches non linéaires complexes. Avec une descente en pente et un sens de l'aventure, vous pourrez peut-être sortir des montagnes à temps pour le dîner.

4  réseaux de neurones : trouver des fonctions

Commençons par éliminer cela : le cerveau n'est pas un ensemble d'unités de traitement graphique, et si c'est le cas, il exécute un logiciel beaucoup plus complexe qu'un réseau de neurones artificiels typique. Les réseaux de neurones, d'autre part, ont été inspirés par la structure du cerveau : des couches de neurones interconnectés, dont chacun calcule sa propre sortie en fonction de l'état de ses voisins, et la cascade d'activité qui en résulte forme une pensée ou reconnaît un Une photo d'un chat.

Du biologique à l'artificiel : L'idée que le cerveau apprend par des interactions entre neurones remonte à 1873, mais ce n'est qu'en 1943 que les neuroscientifiques américains Warren McCulloch et Walter Pitts ont modélisé des réseaux de neurones biologiques à l'aide de règles mathématiques simples. En 1958, le psychologue américain Frank Rosenblatt a développé le capteur - un réseau visuel à une seule couche implémenté sur une carte perforée - dans le but de construire une version matérielle pour la marine américaine. Légende : Frank Rosenblatt

Plus c'est gros, mieux c'est : l'invention de Rosenblatt ne peut reconnaître que les classifications à une seule ligne. Plus tard, les mathématiciens ukrainiens Alexey Ivakhnenko et Valentin Lapa ont surmonté cette limitation en empilant des réseaux de neurones dans un nombre arbitraire de couches. En 1985, travaillant indépendamment, les informaticiens français Yann LeCun, David Parker et le psychologue américain David Rumelhart et leurs collègues ont décrit l'utilisation de la rétropropagation pour former efficacement de tels réseaux. Au cours de la première décennie du nouveau millénaire, des chercheurs tels que Kumar Chellapilla, Dave Steinkraus et Rajat Raina (en collaboration avec Andrew Ng) ont poussé plus loin le développement des réseaux de neurones en utilisant des unités de traitement graphique, ce qui a permis à des réseaux de neurones toujours plus grands d'apprendre de la grandes quantités de données générées par Internet.

Adapté à chaque tâche : Le principe des réseaux de neurones est simple : pour toute tâche, il existe une fonction qui l'exécute. Un réseau de neurones forme des fonctions entraînables en combinant plusieurs fonctions simples, chacune exécutée par un seul neurone. La fonction d'un neurone est déterminée par des paramètres réglables appelés "poids". Compte tenu de ces poids et exemples d'entrée et des valeurs aléatoires pour leurs sorties souhaitées, les poids peuvent être modifiés de manière itérative jusqu'à ce que la fonction entraînable effectue la tâche à accomplir.

  • Un neurone prend diverses entrées (par exemple, des nombres représentant des pixels ou des mots, ou la sortie d'une couche précédente), les multiplie avec des poids, ajoute les produits et dérive une fonction ou une activation non linéaire choisie par le développeur somme de fonctions. Pendant la période, il faut considérer qu'il s'agit d'une régression linéaire, plus une fonction d'activation.

  • L'entraînement modifie les poids. Pour chaque exemple d'entrée, le réseau calcule une sortie et la compare à la sortie attendue. La rétropropagation peut modifier les poids par descente de gradient pour réduire la différence entre la sortie réelle et la sortie attendue. Lorsque ce processus est répété suffisamment de fois avec suffisamment de (bons) exemples, le réseau peut apprendre à exécuter la tâche.

La boîte noire : Alors qu'avec de la chance un réseau bien formé peut faire son travail, on finit par lire une fonction, souvent si complexe - avec des milliers de variables et de fonctions d'activation imbriquées - qu'interpréter le réseau Comment réussir sa tâche est aussi très difficile. De plus, un réseau bien formé ne vaut que par les données dont il tire ses enseignements. Par exemple, si l'ensemble de données est biaisé, la sortie du réseau sera également biaisée. S'il ne contenait que des images haute résolution de chats, on ne saurait savoir comment il réagirait aux images à plus basse résolution.

Bon sens : Le New York Times a été le pionnier du battage médiatique sur l'IA lorsqu'il a rendu compte du capteur de Rosenblatt de 1958, notant que "la marine américaine veut avoir une machine qui marche, parle, voit, écrit et se reproduit." et des ordinateurs électroniques rudimentaires qui sont conscients de leur propre existence." Alors que le capteur de l'époque était insuffisant, il a produit un certain nombre de modèles impressionnants : réseaux de neurones convolutifs pour les images ; réseaux de neurones récurrents pour le texte ; et transformateurs pour les images, le texte, la parole, la vidéo, les protéines. structures, etc... Ils ont fait des choses incroyables, dépassant les performances humaines à Go, par exemple, et se rapprochant des performances humaines dans des tâches pratiques telles que le diagnostic d'images radiographiques. Cependant, ils ont encore du mal avec le bon sens et le raisonnement logique.

5  arbres de décision : de la racine à la feuille

Quel genre de "bête" était Aristote ? Un disciple du philosophe Porphyre, qui a vécu en Syrie au IIIe siècle, a proposé une manière logique de répondre à cette question. Il a regroupé les "catégories d'être" proposées par Aristote du général au particulier, plaçant Aristote dans chaque catégorie tour à tour : l'être d'Aristote est matériel plutôt que conceptuel ou spirituel ; son corps est animé plutôt qu'inanimé ; son esprit rationnel plutôt qu'irrationnel . Par conséquent, sa classification est humaine. Les professeurs de logique médiévale ont dessiné cette séquence sous la forme d'un organigramme vertical : un premier arbre de décision.

La différence des chiffres : Avance rapide jusqu'en 1963, lorsque le sociologue John Sonquist de l'Université du Michigan et l'économiste James Morgan ont mis en œuvre pour la première fois des arbres de décision dans les ordinateurs lors du regroupement des répondants à l'enquête. Ce travail est devenu courant avec l'avènement de logiciels qui entraînent automatiquement des algorithmes, et les arbres de décision sont maintenant utilisés par diverses bibliothèques d'apprentissage automatique, notamment scikit-learn et d'autres. Le code a été développé sur 10 ans par quatre statisticiens de l'Université de Stanford et de l'Université de Californie à Berkeley. À l'heure actuelle, écrire un arbre de décision à partir de zéro est devenu un devoir à la maison dans Machine Learning 101.

Des racines dans l'air : Les arbres de décision peuvent effectuer une classification ou une régression. Il se développe vers le bas, de la racine à la canopée, pour classer une hiérarchie de décision d'exemples d'entrée en deux (ou plus). Considérez le sujet du scientifique médical et anthropologue allemand Johann Blumenbach : les singes et les singes étaient regroupés avant cela, vers 1776, lorsqu'il a distingué pour la première fois les singes des singes (à l'exception des humains). Cette classification est basée sur divers critères, tels que s'ils ont des queues, des poitrines étroites ou larges, debout ou accroupis, et leur niveau d'intelligence. En utilisant un arbre de décision formé pour étiqueter ces animaux, chaque critère est considéré un par un, séparant finalement les deux groupes d'animaux.

  • L'arbre part d'un nœud racine qui peut être considéré comme une base de données biologique contenant tous les cas - chimpanzés, gorilles et orangs-outans, ainsi que des singes capucins, des babouins et des ouistitis. La racine offre le choix entre deux nœuds enfants de présenter ou non une caractéristique particulière, ce qui donne deux nœuds enfants contenant des exemples avec et sans cette caractéristique. Par analogie, le processus se termine par un nombre arbitraire de nœuds feuilles, chacun contenant la plupart ou la totalité d'une catégorie.

  • Pour grandir, un arbre doit trouver une décision racine. Pour faire un choix, considérez toutes les caractéristiques et leurs valeurs - appendices postérieurs, coffre en tonneau, etc. - et choisissez celle qui maximise la pureté de la segmentation. La "pureté optimale" est définie comme 100 % des instances d'une classe allant à un nœud enfant particulier et non à un autre nœud. Les fourches sont rarement pures à 100 % après une seule décision, et ne le seront probablement jamais. Au fur et à mesure que ce processus se poursuit, un niveau après l'autre de nœuds enfants est généré, jusqu'à ce que la pureté n'augmente pas beaucoup en considérant plus de fonctionnalités. À ce stade, l'arbre est entièrement formé.

  • Au moment de l'inférence, un nouvel exemple parcourt l'arbre de décision de haut en bas, complétant l'évaluation des différentes décisions à chaque niveau. Il obtiendra les étiquettes de données contenues dans son nœud feuille.

Entrer dans le Top 10 : étant donné la conclusion de Blumenbach (plus tard annulée par Charles Darwin) selon laquelle les humains se distinguent des singes par de larges bassins, des mains et des dents serrées, si nous voulons étendre l'arbre de décision pour classer non seulement les singes et les singes, mais quoi sur la classification des humains? L'informaticien australien John Ross Quinlan a rendu cela possible en 1986 avec ID3, qui étend les arbres de décision pour prendre en charge les résultats non binaires. En 2008, dans la liste des dix meilleurs algorithmes d'exploration de données prévus par la Conférence internationale sur l'exploration de données de l'IEEE, un algorithme de raffinement étendu nommé C4.5 figurait parmi les meilleurs. Dans un monde où l'innovation est effrénée, c'est de la résistance.

Couper les feuilles : les arbres de décision présentent certains inconvénients. Ils peuvent facilement suradapter les données en ajoutant plusieurs niveaux de hiérarchie de sorte qu'un nœud feuille ne comprend qu'un seul exemple. Pire, ils sont sujets à l'effet papillon : remplacez une instance et l'arbre résultant sera très différent.

Dans la forêt : le statisticien américain Leo Breiman et la statisticienne néo-zélandaise Adele Cutler ont tourné cette fonctionnalité à leur avantage, en développant une forêt aléatoire en 2001 - une collection d'arbres de décision, chacun d'entre eux étant traité et voté sur le résultat final. . Random Forest et son cousin XGBoost sont moins sujets au surajustement, ce qui en fait l'un des algorithmes d'apprentissage automatique les plus populaires. C'est comme avoir Aristote, Porphyre, Blumenbach, Darwin, Jane Goodall, Dian Fossey et 1 000 autres zoologistes dans la même pièce pour s'assurer que votre taxonomie est la meilleure possible. whaosoft  aiot  http://143ai.com

 Regroupement 6 K-Means : Pensée de groupe

Si vous vous tenez près d'autres personnes lors d'une fête, il y a de fortes chances que vous ayez quelque chose en commun. C'est l'idée d'utiliser le clustering k-means pour regrouper les points de données. Qu'il s'agisse de groupes formés par l'action humaine ou d'autres forces, l'algorithme les trouvera.

Des explosions à la tonalité : le physicien américain Stuart Lloyd, ancien élève de l'usine d'innovation emblématique des Bell Labs et du projet Manhattan qui a inventé la bombe atomique, a proposé pour la première fois le clustering k-means en 1957 pour distribuer des informations dans des signaux numériques, mais ce travail n'a pas été publié jusqu'en 1982 :

Adresse papier : https://cs.nyu.edu/~roweis/csc2515-2006/readings/lloyd57.pdf

Pendant ce temps, le statisticien américain Edward Forgy a décrit une méthode similaire en 1965, conduisant à son autre nom "algorithme de Lloyd-Forgy".

Trouver des hubs : Envisagez de diviser les clusters en groupes de travail partageant les mêmes idées. Compte tenu de l'emplacement des participants dans la salle et du nombre de groupes à former, le regroupement k-means peut diviser les participants en groupes de taille à peu près égale, chacun regroupé autour d'un point central ou centroïde.

  • Au cours de la formation, l'algorithme attribue initialement k centroïdes en sélectionnant au hasard k personnes. (K doit être choisi manuellement, trouver une valeur optimale est parfois très important.) Ensuite, il développe k clusters en associant chaque personne au centroïde le plus proche.

  • Pour chaque cluster, il calcule la position moyenne de toutes les personnes affectées à ce groupe et attribue cette position moyenne comme nouveau centroïde. Chaque nouveau centroïde peut ne pas être occupé par une seule personne, mais alors ? Les gens ont tendance à se retrouver autour du chocolat et de la fondue.

  • Après avoir calculé de nouveaux centroïdes, l'algorithme réaffecte les individus aux centroïdes les plus proches d'eux. Il calcule ensuite de nouveaux centroïdes, ajuste les clusters, etc. jusqu'à ce que les centroïdes (et les groupes qui les entourent) ne bougent plus. Après cela, il est facile d'affecter de nouveaux membres au bon cluster. Mettez-les en place dans la pièce et recherchez le centroïde le plus proche.

  • Soyez prévenu : compte tenu de l'affectation aléatoire initiale du centroïde, vous ne vous retrouverez peut-être pas dans le même groupe que les adorables experts en IA centrés sur les données avec lesquels vous espérez passer du temps. L'algorithme fait du bon travail, mais il n'est pas garanti de trouver une solution optimale.

Distances différentes : Bien sûr, la distance entre les objets groupés n'a pas besoin d'être très grande. Toute mesure entre les deux vecteurs fera l'affaire. Par exemple, plutôt que de regrouper les fêtards par distance physique, le regroupement k-means peut les segmenter en fonction de leurs vêtements, de leur profession ou d'autres attributs. Les boutiques en ligne l'utilisent pour segmenter les clients en fonction de leurs préférences ou de leur comportement, et les astronomes peuvent regrouper les étoiles du même type.

Le pouvoir des points de données : cette idée a entraîné des changements notables :

  • Les K-medoids  utilisent des points de données réels comme centroïdes, plutôt que la position moyenne dans un cluster donné. Le point central est le point où la distance à tous les points du cluster peut être minimisée. Cette variation est plus facile à interpréter car le centre de gravité est toujours le point de données.

  • Le clustering Fuzzy C-Means  permet aux points de données de participer à plusieurs clusters à des degrés divers. Il utilise le degré du cluster au lieu d'une affectation de cluster stricte basée sur la distance par rapport au centroïde.

N-Dimensional Carnival : Néanmoins, l'algorithme dans sa forme originale est toujours largement utile - d'autant plus que, en tant qu'algorithme non supervisé, il ne nécessite pas la collecte de données étiquetées coûteuses. Il est également utilisé de plus en plus vite. Par exemple, les bibliothèques d'apprentissage automatique, y compris scikit-learn, bénéficient de l'ajout de kd-trees en 2002, qui peuvent partitionner très rapidement des données de grande dimension.

 

Je suppose que tu aimes

Origine blog.csdn.net/qq_29788741/article/details/132309406
conseillé
Classement