Contenu principal

Clustering de données avec l’application Neural Net Clustering

Cet exemple indique comment entraîner un réseau de neurones peu profond pour regrouper des données avec l’application Neural Net Clustering.

Ouvrez l’application Neural Net Clustering avec nctool.

nctool

Sélectionner les données

L’application Neural Net Clustering comporte des exemples de données pour vous aider à commencer à entraîner un réseau de neurones.

Pour importer un exemple de données de regroupement d’iris, sélectionnez Import > Import Iris Flowers Data Set. Si vous importez vos propres données depuis un fichier ou l’espace de travail, vous devez spécifier les prédicteurs et si les observations sont organisées en lignes ou en colonnes.

Les informations sur les données importées apparaissent dans le Model Summary. Ce jeu de données contient 150 observations avec quatre caractéristiques chacune.

Créer un réseau

Le réseau SOM (Self-Organizing feature Map) est le plus utilisé pour les problèmes de clustering. Ce réseau comporte une couche avec des neurones organisés dans une grille. Les cartes auto-organisatrices (SOM) apprennent à regrouper les données en fonction de leur similarité. Pour plus d’informations sur les SOM, veuillez consulter Cluster with Self-Organizing Map Neural Network.

Pour créer le réseau, spécifiez la taille de la carte, qui correspond au nombre de lignes et de colonnes de la grille. Pour cet exemple, définissez la valeur Map size (taille de la carte) à 10, ce qui correspond à une grille avec 10 lignes et 10 colonnes. Le nombre total de neurones est égal au nombre de points dans la grille. Dans cet exemple, la carte comporte 100 neurones. Vous pouvez voir l’architecture du réseau dans le volet Network.

Entraîner le réseau

Pour entraîner le réseau, cliquez sur Train. Vous pouvez voir la progression de l'apprentissage dans le volet Training. L'apprentissage se poursuit jusqu’à ce que l'un des critères d’arrêt soit rempli. Dans cet exemple, l’apprentissage continue jusqu’à ce que le nombre maximal d’epochs soit atteint.

Analyser les résultats

Générez des tracés afin d’analyser les résultats de l’apprentissage. Pour l’apprentissage de la SOM, le vecteur de poids associé à chaque neurone se déplace pour devenir le centre d’un cluster de vecteurs d’entrée. Par ailleurs, les neurones adjacents les uns aux autres dans la topologie doivent également se rapprocher les uns des autres dans l’espace d’entrée, il est alors possible de visualiser un espace d’entrée de dimension élevée dans les deux dimensions de la topologie du réseau. La topologie par défaut de la SOM est hexagonale.

Pour tracer les Sample Hits de la SOM, dans la section Plots, cliquez sur Sample Hits. Cette figure montre les emplacements des neurones dans la topologie et indique combien d'observations sont associées à chacun des neurones (les centres des clusters). La topologie est une grille de 10 par 10. Il y a donc 100 neurones. Le nombre maximum de correspondances associées à un neurone est de 5. Il y a donc 5 vecteurs d’entrée dans ce cluster.

Tracez les plans de pondérations (également nommés plans de composantes). Dans la section Plots, cliquez sur Weight Planes. Cette figure représente un plan de pondérations pour chaque élément des caractéristiques d’entrée (quatre dans cet exemple). Ce tracé représente les poids qui associent chaque entrée à chacun des neurones. Les couleurs foncées représentent des pondérations élevées. Si les patterns d’associations de deux caractéristiques sont très similaires, vous pouvez considérer que les caractéristiques sont fortement corrélées.

Si vous n’êtes pas satisfait des performances du réseau, vous disposez des possibilités suivantes :

  • Entraîner à nouveau le réseau. Pour chaque apprentissage le réseau aura des poids et des biais initiaux différents et offrira potentiellement une fois l'apprentissage terminé un meilleur réseau.

  • Augmenter le nombre de neurones en augmentant la taille de la carte.

  • Utiliser un jeu de données d’apprentissage plus grand.

Vous pouvez également évaluer les performances du réseau sur un jeu de test supplémentaire. Pour charger des données de test supplémentaires pour l'évaluation du réseau, dans la section Test, cliquez sur Test. Générez des tracés afin d’analyser les résultats des tests supplémentaires.

Générer du code

Sélectionnez Generate Code > Generate Simple Training Script afin de créer du code MATLAB pour reproduire les étapes précédentes en ligne de commande. Il peut être utile de créer le code MATLAB si vous voulez apprendre comment utiliser la fonctionnalité en ligne de commande de la toolbox pour personnaliser le processus d’apprentissage. Dans Utiliser les fonctions en ligne de commande pour le clustering de données, vous étudierez les scripts générés de manière plus détaillée.

Exporter un réseau

Vous pouvez exporter votre réseau entraîné vers l’espace de travail ou Simulink®. Vous pouvez également déployer le réseau avec les outils MATLAB Compiler™ et d’autres outils de génération de code MATLAB. Pour exporter votre réseau entraîné et vos résultats, sélectionnez Export Model > Export to Workspace.

Voir aussi

| | | |

Rubriques