Accueil Finances personnelles Comment utiliser les algorithmes de cluster K-means dans l'analyse prédictive - les nuls

Comment utiliser les algorithmes de cluster K-means dans l'analyse prédictive - les nuls

Vidéo: K Means Clustering Algorithm | K Means Example in Python | Machine Learning Algorithms | Edureka 2024

Vidéo: K Means Clustering Algorithm | K Means Example in Python | Machine Learning Algorithms | Edureka 2024
Anonim

K est une entrée de l'algorithme pour l'analyse prédictive; il représente le nombre de groupements que l'algorithme doit extraire d'un ensemble de données, exprimé algébriquement en k . Un algorithme K-means divise un ensemble de données donné en clusters k . L'algorithme effectue les opérations suivantes:

  1. Choisissez k éléments aléatoires de l'ensemble de données et étiquetez-les comme des représentants de cluster.

  2. Associez chaque élément restant de l'ensemble de données au représentant de grappe le plus proche, en utilisant une distance euclidienne calculée par une fonction de similarité.

  3. Recalculez les représentants des nouveaux clusters.

  4. Répétez les étapes 2 et 3 jusqu'à ce que les groupes ne changent pas.

Un représentant d'un cluster est la moyenne (moyenne) mathématique de tous les éléments appartenant au même cluster. Ce représentant est également appelé cluster centroid . Par exemple, considérons trois éléments de l'ensemble de données fruits où

Le type 1 correspond aux bananes.

Le type 2 correspond aux pommes.

La couleur 2 correspond au jaune.

La couleur 3 correspond au vert.

En supposant que ces éléments sont affectés au même groupe, le centroïde de ces trois éléments est calculé.

Article Caractéristique # 1 Type Caractéristique # 2 Couleur Caractéristique # 3 Poids (Onces)
1 1 2 5. 33
2 2 3 9. 33
3 1 2 2. 1

Voici les calculs d'un cluster représentatif de trois éléments appartenant au même cluster. Le représentant du cluster est un vecteur de trois attributs. Ses attributs sont la moyenne des attributs des éléments du cluster en question.

Article Caractéristique # 1 Type Caractéristique # 2 Couleur Caractéristique # 3 Poids (Onces)
1 1 2 5. 33
2 2 3 9. 33
3 1 2 2. 1
Représentant du cluster (vecteur centroïde) (1 + 2 + 1) / 3 = 1. 33 (2 + 3 + 2) / 3 = 2. 33 (5,33 + 9,33 +32,1) / 3 = 3

L'ensemble de données présenté ci-après comprend sept évaluations de deux produits, A et B par les clients. Le classement représente le nombre de points (entre 0 et 10) que chaque client a donné à un produit - plus il y a de points, plus le produit est classé.

En utilisant un algorithme K-means et en supposant que k est égal à 2, l'ensemble de données sera partitionné en deux groupes. Le reste de la procédure ressemble à ceci:

  1. Choisissez deux éléments aléatoires dans l'ensemble de données et étiquetez-les comme des représentants de cluster.

    Voici l'étape initiale de sélection des centroïdes aléatoires à partir desquels commence le processus de mise en grappe K-means.Les centroïdes initiaux sont sélectionnés au hasard parmi les données que vous êtes sur le point d'analyser. Dans ce cas, vous recherchez deux clusters, donc deux éléments de données sont sélectionnés aléatoirement: Clients 1 et 5.

    Au début, le processus de mise en cluster construit deux clusters autour de ces deux représentants de clusters initiaux (sélectionnés au hasard). Ensuite, les représentants du cluster sont recalculés. le calcul est basé sur les éléments de chaque grappe.

    ID client Classements client du produit A Classements client du produit B
    1 2 2
    2 3 4
    3 < 6 8 4
    7 10 5
    10 14 6
    9 10 7
    7 9 Inspectez tous les autres éléments (client) et attribuez-le au représentant de cluster auquel il est le plus similaire.
  2. Utilisez la distance euclidienne

    pour calculer à quel point un élément est similaire à un groupe d'éléments: Similitude de l'élément I au cluster X = sqrt {{{left ({{f_1} - {x_1 }} à droite)} ^ 2} + {{left ({{f_2} - {x_2}} à droite)} ^ 2} + cdots + {{left ({{f_n} - {x_n}} à droite)} ^ 2} }

    Les valeurs {f_1},; {f_2},; ldots,; {f_n} sont les valeurs numériques des entités décrivant l'objet en question. Les valeurs {x_1},; {x_2},; ldots,; {x_n} sont les entités (valeurs moyennes) du représentant du cluster (centroïde), en supposant que chaque élément possède des caractéristiques

    n . Par exemple, considérons l'article appelé Client 2 (3, 4): La note du client pour le produit A était de 3 et la note pour le produit B était de 4. La caractéristique représentant un cluster est (2, 2). La similarité entre le client 2 et le cluster 1 est calculée comme suit:

    Similarité de l'élément 2 vers le cluster 1 = sqrt {{{left ({3 - 2} right)} ^ 2} + {{left ({4 - 2 } right}} 2}} = 2. 23

    Voici à quoi ressemble le même processus avec le cluster 2:

    Similarité de l'article 2 vers le cluster 2 = sqrt {{{left ({3 - 10} right) } ^ 2} + {{left ({4 - 14} right)} ^ 2}} = 12. 20

    En comparant ces résultats, vous attribuez l'élément 2 (Customer 2) au cluster 1 car les chiffres indiquent L'élément 2 est plus similaire à Cluster 1.

    Applique la même analyse de similarité à tous les autres éléments de l'ensemble de données.

  3. Chaque fois qu'un nouveau membre rejoint un cluster, vous devez recalculer le représentant du cluster.

    Ceci représente les résultats de la première itération de l'algorithme K-mean. Notez que

    k est égal à 2, donc vous recherchez deux clusters, qui divisent un ensemble de clients en deux groupes significatifs. Chaque client est analysé séparément et affecté à l'un des clusters en fonction de la similarité du client avec chacun des représentants de cluster actuels. Réitérez l'ensemble de données en parcourant chaque élément; calculer la similarité entre chaque élément et son représentant de groupe actuel.

  4. Remarquez que le client 3 est passé du cluster 1 au cluster 2. En effet, la distance entre le client 3 et le cluster représentatif du cluster 2 est plus proche que celle du cluster 1.

    Représentant du cluster (vecteur centroïde) < Cluster 1

    ID client n ° 1 (2, 2)
    Cluster 2 ID client n ° 5 (10, 14)
    Itération n ° 1 Cluster client 1
    Cluster client 2 Client à examiner Identifiants du client appartenant au cluster 1
    Représentant du cluster Identifiants du client appartenant au cluster 1 Représentant du cluster 1 (2, 2) > 5
    (10, 14) 2 1, 2 (2.4, 3)
    5 (10, 14) 3 1, 2, 3 (3,6, 4,6)
    5 (10, 14) 4 1, 2, 3 (3,6, 4,6)
    4, 5 (8,4, 12) 6 1, 2, 3 (3,6, 4,6)
    4, 5, 6 (8,6, 11,4) 7 1, 2, 3 > (3.6, 4. 6) 4, 5, 6, 7
    (8. 2, 10. 8) Voici une deuxième itération de l'algorithme K-means sur les données client. Chaque client est en cours de ré-analyse. Le client 2 est affecté au cluster 1 car le client 2 est plus proche du représentant du cluster 1 que du cluster 2. Le même scénario s'applique au client 4. Notez qu'un représentant de cluster est recalculé chaque fois qu'un nouveau membre est affecté à un cluster. itération 2 Cluster client 1 Cluster client 2

Client à examiner

Comment utiliser les algorithmes de cluster K-means dans l'analyse prédictive - les nuls

Le choix des éditeurs

Tableaux et pointeurs en C ++ - le nom du tableau des mannequins

Tableaux et pointeurs en C ++ - le nom du tableau des mannequins

Est un pointeur sur le tableau lui-même. Le tableau est une séquence de variables stockée en mémoire. Le nom du tableau pointe vers le premier élément. C'est une question intéressante sur les pointeurs: Pouvez-vous avoir un en-tête de fonction, comme la ligne suivante, et juste utiliser sizeof pour déterminer comment ...

Boost Bibliothèques et C ++ - mannequins

Boost Bibliothèques et C ++ - mannequins

De nombreux développeurs utilisent les bibliothèques Boost car elles fournissent un code de haute qualité une partie de Boost est en train d'être normalisée pour être incluse dans la bibliothèque standard. L'une des meilleures choses à propos de Boost est que la bibliothèque elle-même est gratuite. Le site Web de Boost tient à faire savoir aux développeurs qu'ils ne ...

Casser les programmes Mis à part C ++ - les mannequins

Casser les programmes Mis à part C ++ - les mannequins

Le programmeur peut casser un seul programme en fichiers sources distincts généralement appelés modules. Ces modules sont compilés séparément dans le code machine par le compilateur C ++, puis combinés au cours du processus de génération pour générer un seul programme. Ces modules sont également connus par les geeks du compilateur en tant qu'unités de traduction C ++. Le processus de combinaison ...

Le choix des éditeurs

Comment régler les paramètres via l'affichage d'informations sur votre Nikon D5200 - mannequins

Comment régler les paramètres via l'affichage d'informations sur votre Nikon D5200 - mannequins

L'information l'affichage ne sert pas uniquement à vérifier les paramètres de prise de vue actuels; Cela vous donne également un accès rapide à certains des paramètres les plus critiques. La touche de cette fonction est le bouton Information Edit, situé à l'arrière de l'appareil photo, à droite du viseur. Voici comment cela fonctionne: Afficher les informations ...

Met en surbrillance le mode d'affichage sur votre Nikon D7100 - mannequins

Met en surbrillance le mode d'affichage sur votre Nikon D7100 - mannequins

En mode d'affichage hautes lumières sur votre Nikon D7100 pense que l'appareil photo peut être surexposé clignoter dans le moniteur de l'appareil photo. L'un des problèmes de photo les plus difficiles à corriger dans un programme de retouche photo est connu sous le nom de surbrillance dans certains cercles et de surbrillance dans d'autres. Les deux termes signifient que les zones les plus claires de ...

Comment régler les paramètres via la bande de contrôle Nikon D3300 - les tétines

Comment régler les paramètres via la bande de contrôle Nikon D3300 - les tétines

Présentes en bas à gauche Au coin du Nikon D3300, le bouton i active une bande de contrôle qui vous donne un accès rapide à certains paramètres de prise de vue critiques. Voici comment utiliser la bande de contrôle pour la photographie dans le viseur: Affichez l'écran d'informations. Vous pouvez le faire en appuyant sur le bouton Info. Appuyez sur le bouton i. Le haut ...

Le choix des éditeurs

Comment imprimer vos diapositives et notes Keynote - Les tétines

Comment imprimer vos diapositives et notes Keynote - Les tétines

Lorsque vous créez une présentation dans Snow Leopard Application Keynote, vous ne pouvez pas toujours vouloir imprimer des documents. Cependant, si vous présentez un long diaporama avec beaucoup d'informations que vous aimeriez que votre public se souvienne, rien ne vaut les documents qui incluent des images réduites de vos diapositives (et, facultativement, les notes de votre présentateur). Vous pouvez ...

Comment réorganiser ou supprimer les signets - les mannequins

Comment réorganiser ou supprimer les signets - les mannequins

Safari enregistre vos signets et vos dossiers de signets dans l'ordre dans lequel vous les créez, en les ajoutant au bas d'une liste toujours croissante. Si vous continuez à ajouter des marque-pages au menu Signets sans les placer dans des dossiers, vous pouvez constater que vous avez un nombre de signets gazillion indiqué bon gré mal gré et que vous ne vous en souvenez plus ...

Pour ouvrir et utiliser l'iDisk de Snow Leopard - les mannequins

Pour ouvrir et utiliser l'iDisk de Snow Leopard - les mannequins

Avec un compte MobileMe actif, iDisk est disponible et vous fournit un espace de stockage supplémentaire. Pour connaître l'espace de stockage utilisé et pour configurer l'accès à votre dossier Public, ouvrez les Préférences Système, cliquez sur l'icône MobileMe, puis sur le bouton iDisk pour afficher les paramètres. Vos paramètres iDisk sont disponibles dans les Préférences Système. Le ...

ID client appartenant au cluster 1 Cluster Representative ID client appartenant au cluster 2 > Représentant du Cluster
1 1 (3.6, 4. 6) 5 (8. 2, 10. 8)
2 1, 2 < (5, 2, 3) 5 (8,2, 10,8) 3
1, 2 (5,2, 3) 5, 3 (7,8, 10,2) 4
1, 2 (5,2, 3) 4, 5,3 (7,8, 10 2) 6
1, 2 (5,2, 3) 4, 5, 6,3 (7,8, 10,2) 7 < 1, 2
(5,2, 3) 3, 4, 5, 6, 7 (7,8, 10,2)