Projet de Data Mining pour la découverte et la caractérisation de points d'intérêts dans la ville de Lyon, à partir de données Flickr. Projet réalisé sur KNIME dans le cadre de mes études à l'INSA Lyon.
Le méta-noeud Filtrage permet de conserver seulement les photos pertinentes, en retirant :
- les photos sans tags,
- les doublons possédant le même id,
- les photos dont la date d'envoi est antérieure à la date de prise de vue,
- les photos prises hors de la ville de Lyon.
Un Column Filter permet ensuite de conserver seulement les colonnes id, user, les coordonnées GPS et les tags.
Le bloc Row Sampling permet de conserver seulement 1000 photos aléatoires du jeu de données initial, pour assurer un temps d'exécution acceptable. Le clustering hiérarchique est ensuite effectué en Complete link et génère 40 clusters, qui sont ensuite affichés avec des couleurs différentes sur une carte.
Le méta-noeud Test de Stabilité exécute 100 clusterings k-Means avec des centroïdes initiaux différents à chaque exécution, et compare le résultat avec un k-Means de référence via un Entropy Scorer. Le méta-noeud renvoie le résultat du k-Means de référence, les coordonnées des centres de chaque cluster, et une table donnant le minimum et maximum d'entropie lors des tests de stabilité. Les différentes sorties sont affichées sous forme de tableaux et de cartes.
Le méta-noeud Double DBSCAN permet de visualiser le résultat d'une exécution de DBSCAN sur toutes les données, puis divise les données en deux parties (le centre par un Geo-Coordinate Row Filter, puis la périphérie par un Reference Row Filter) et exécute deux DBSCAN avec des paramètres différents avant de les regrouper (String Manipulation et Concatenate). On peut également observer les deux clusterings indépendamment sur une carte. La sortie du méta-noeud est la fusion des deux clusterings. Ces clusters sont ensuites affichés sous forme de tableau et de carte, et le Text Mining est réalisé sur ce jeu de données.
Grâce à ce méta-noeud, l'on peut visualiser 10 images parmi celles que l'on a préalablement mises en évidence (HiLite). Les photos sont téléchargées sur Flickr puis affichées dans un tableau, ce qui peut aider à donner du sens à un cluster.
Le traitement des mots-clés comporte les étapes suivantes :
- création d'un document à partir de l'ensemble des mots-clés
- suppression de la ponctuation, des mots de moins de 3 lettres, des nombres, passage en minuscules, suppression des mots de liaison (prépositions, etc.), radicalisation (suppression des marques de féminin, pluriel, etc.)
- filtrage des mots-clés en fonction de la fréquence d'apparition dans les documents (on ne garde que ceux présents dans au moins 1% des documents)
- création d'un vecteur de bits représentant la présence de chaque mot-clé dans le document
Un Row Filter permet de conserver uniquement le cluster 23 (ce qui représentait Fourvière lors de notre étude). Puis une recherche des ensembles fréquents (avec l'algorithme Apriori permettant de trouver les ensembles fermés) est effectuée par Item Set Finder. Les résultats sont ensuite affichés dans une table, on peut alors interpréter le cluster à l'aide des tags les plus représentés dans le cluster.
Un bloc One to Many permet de remplacer la colonne Cluster en créant une colonne par cluster. Dans ce cas, une photo possèdera un 1 dans la colonne correspondant à son cluster, et 0 dans les autres. Ceci permet ensuite de créer un vecteur de bits, qui pourra être utilisé par le Association Rule Learner qui recherchera des règles d'association à partir des étiquettes de cluster et des tags. Un Row Filter permet de conserver uniquement les règles comportant une étiquette de cluster dans ses antécédents. Une table permet enfin de visualiser les règles du type Cluster_XX -> tags-correspondants.