Intégration de données géographiques pour la recommandation de quartiers
Abstract
Rapport de stage de Licence 3.
Full text
Université Claude Bernard Lyon 1 Rapport de stage Intégration de données géographiques pour la recommandation de quartiers Du 2 mai au 27 juillet 2018 LIRIS, Laboratoire d'Informatique en Image et Systèmes d'information 8 Boulevard Niels Bohr 69622 Villeurbanne Étudiante Nelly Barret (Licence 3 Informatique, UCBL1) Tuteurs entreprise Fabien Duchateau (Maître de conférences, LIRIS) Franck Favetta (Maître de conférences, LIRIS) Tuteur universitaire Fabien De Marchi (Maître de conférences, LIRIS) Rapporteur Matthieu Heitz (Doctorant, LIRIS)
Remerciements Tout d'abord, je souhaite remercier Fabien Duchateau et Franck Favetta, mes maîtres de stage, sans qui ce stage n'aurait pas été possible. Ce sont eux qui m'ont suivi, avec patience et pédagogie, tout au long de ces trois mois. J'adresse ensuite mes remerciements à la start-up HiL (Home in Love) avec qui le LIRIS collabore sur le projet Home in Love. Je remercie aussi les membres du projet, Maryvonne Miquel, Loïc Bonneval et Aurélien Gentil, avec qui j'ai pu échanger pendant les réunions. Je souhaite aussi remercier le LabEx IMU (Laboratoire d'Excellence, Intelligence des Mondes Urbains), qui a nancé ce stage à titre exceptionnel puisque c'est un stage de Licence. Je souhaite aussi remercier tout le personnel du LIRIS pour leur accueil. Enn, je souhaite remercier l'Université Claude Bernard Lyon 1 pour mes trois années de Licence pendant lesquelles j'ai beaucoup appris et, en plus, découvert la recherche. 1
Table des matières 1 Introduction 3 2 État de l'art 5 3 Vue d'ensemble des réalisations 8 4 Module d'intégration de données 10 5 Module de recommandation 13 6 Prototype et résultats préliminaires 16 6.1 Prototype ................................... 16 6.2 Protocole ................................... 18 6.3 Résultats.................................... 20 6.4 Discussion................................... 21 7 Conclusion et perspectives 23 8 Annexes 24 2
1 Introduction Étant en troisième année de Licence informatique à l'Université Claude Bernard Lyon 1, je dois eectuer un stage validant mon premier cycle d'études supérieures. Ce stage peut se faire en entreprise ou en laboratoire pour une durée de 12 semaines (de mai à juillet). Il a pour but de nous faire acquérir une expérience professionnelle enrichissante et de nous faire prendre conscience des contraintes du monde professionnel. Envisageant un master recherche à Lyon 1, faire un stage au LIRIS est pour moi une opportunité rêvée. Ma principale attente vis-à-vis de ce stage est de découvrir le monde de la recherche an de consolider mon projet professionnel proche et futur. Je souhaite aussi découvrir les contraintes du monde professionnel à travers ce stage, comme les projets pluridisciplinaires et l'intégration sur un projet en cours. C'est ainsi que j'ai pris contact avec mes professeurs pour leur faire part de mon souhait. Ce sont Fabien Duchateau et Franck Favetta, chercheurs au LIRIS, qui m'ont alors proposé un stage orienté recherche dans leur équipe et plus particulièrement sur un de leurs projets. Le LIRIS, Laboratoire d'InfoRmatique en Imagerie et Systèmes d'information, est une unité mixte de recherche (UMR 5205). Il dépend du CNRS, de l'INSA Lyon, de l'Université Claude Bernard Lyon 1, de l'Université Lumière Lyon 2 et de l'École Centrale de Lyon. Il s'intéresse à l'informatique et plus généralement aux sciences et technologies de l'information. Le LIRIS est composé de 14 équipes réparties en 6 pôles de recherche. Le pôle Science des données est composé de 3 équipes : BD (Bases de Données), D2ML (Data Mining et Machine Learning) et GOAL (Graphes, algOrithmes et AppLications). Les principaux objectifs de l'équipe Bases de données sont la conception de nouveaux modèles face à la génération massive de données hétérogènes. Elle s'intéresse aussi à développer des outils pour maîtriser ces données (accès, diusion, usage...). Les projets de recherche du LIRIS sont nancés par diérentes sources dont le LabEx IMU (Laboratoire d'Excellence, Intelligence des Mondes Urbains) qui nance des projets pluridisciplinaires. Le LabEx IMU fédère un ensemble de travaux et de projets de recherche qui traitent de la ville et des phénomènes urbains dans leurs relations aux processus de mondialisation. Il nance le projet pluridisciplinaire Home in Love dans lequel s'inscrit mon stage. Le LabEx IMU nance le projet HiL qui a pour intitulé : Système de recommandation avec visualisation spatiale et non spatiale pour la recherche immobilière . Ce projet met en collaboration des chercheurs en informatique du LIRIS, des chercheurs en sociologie du Centre Max Weber et la start-up Home in Love. Il a pour but de proposer une plateforme qui aide à la recherche de logements en améliorant la recommandation actuelle et en intégrant des critères sociologiques lors de la recommandation. Mon stage, nancé par IMU, porte principalement sur la recommandation de quartiers. Il se compose de deux parties : l'analyse des quartiers et la recommandation de quartiers. Pour recommander des quartiers pertinents, il faut avoir des informations sur ces quartiers. Ces informations proviennent de diérentes sources, c'est pourquoi une étape d'intégration de données est nécessaire. Mon stage étant à connotation recherche, il y a eu une étape de recherche bibliographique. À partir de la lecture de plusieurs articles sur l'intégration de données et la recommandation, un état de l'art a pu être établi. Plusieurs contributions ont été identiées : l'implémentation d'un module d'intégration et l'implémentation de diérentes stratégies de recommandation. Ces stratégies ont été 3
testées pour évaluer leur pertinence sur des données réelles fournies par la start-up. Dans ce rapport, nous résumons ce travail de recherche et développement. 4
2 État de l'art L'état de l'art porte sur deux domaines : l'intégration de données et la recommandation. L'intégration de données est un processus de regroupement de données provenant de diérentes sources en une source d'information commune et pertinente. Cela permet de créer une vue logique homogène même si les données physiques sont hétérogènes. Plusieurs étapes se distinguent dans l'intégration de données : l'identication et la compréhension des sources, la détection des correspondances et des mappings et éventuellement la fusion des données. C'est un domaine qui est fortement étudié depuis des décennies et de nombreux travaux ont été proposés dans le but d'automatiser cette tâche [2]. L'automatisation n'est pas nécessaire dans le cadre du projet puisque ce n'est pas une tâche récurrente. L'intégration des données a donc été manuelle. L'intégration de diérentes sources de données apporte de facto des conits d'identité et de noms d'attributs. Les conits d'identité apparaissent lorsque le même concept est identié par des attributs diérents ou lorsque la même clé dans deux sources diérentes n'a pas la même signi- cation. Deux types de conits de noms d'attributs peuvent survenir : l'homonymie (le même nom est utilisé pour désigner des concepts diérents) et la synonymie (le même concept est décrit par plusieurs noms diérents). Dans la littérature, des solutions sont proposées pour les résoudre. Un exemple de solution pour les conits d'identité est la dénition d'une fonction de conversion de clé et, pour les conits de noms d'attributs, le renommage. La recommandation est un domaine très étudié depuis les années 1990. Les systèmes de recommandation sont des systèmes capables de proposer des recommandations personnalisées ou de guider un utilisateur vers des ressources intéressantes. Face au volume de données toujours plus grand, il est nécessaire de ltrer et de hiérarchiser les informations. Par exemple, en magasin, un utilisateur aura le choix parmi des centaines de DVD tandis que sur Internet ce même utilisateur aura le choix parmi des milliers de DVD. Les outils de recommandation n'ont cessé de s'améliorer et d'enrichir l'expérience utilisateur. Plusieurs stratégies peuvent être adoptées face à un système de recommandation. Ils se divisent principalement en trois catégories [3] : Basiques (utilisant la similarité ou la popularité, e.g. dans le cadre de la recommandation de lms, la saga Harry Potter et la trilogie Le Seigneur Des Anneaux sont similaires). Basés sur le contenu ( content-based ltering ) [4]. Ce type de système de recommandation va proposer des recommandations similaires aux goûts d'un utilisateur. La Figure (1a) illustre un exemple simple de ltrage sur le contenu. L'utilisatrice aime la saga Harry Potter et le système sait que la saga Twilight est une saga similaire à Harry Potter. Le système va donc lui recommander Twilight. Basés sur le collaboratif ( collaborative ltering ) [5]. Ce type de système de recommandation va détecter des utilisateurs qui partagent les mêmes goûts pour leur proposer des recommandations similaires. La Figure (1b) illustre un exemple simple de ltrage collaboratif. Une utilisatrice aime la saga Harry Potter ainsi que les séries policières. Un utilisateur aime la saga Harry Potter, les séries policières et la saga Twilight. Ces deux utilisateurs ayant des préférences similaires, le système va recommander la saga Twilight à l'utilisatrice. 5
(a) Illustration du ltrage sur le contenu (b) Illustration du ltrage collaboratif Figure 1 Illustration du ltrage sur le contenu et du ltrage collaboratif Quatre algorithmes de recommandation ont été étudiés parmi les plus populaires : SVD, NMF, KNN et decision tree. Chacun de ces algorithmes appartient à un type de système de recommandation. L'algorithme SVD ( Singular-Value Decomposition ) [1], algorithme de type collaborative ltering, a été popularisé grâce à Netix, entreprise américaine qui propose un service de location de DVD en ligne. Chaque client peut noter (entre 1 et 5) les lms qu'il a vu. Grâce à ces retours utilisateurs, Netix propose à ses clients des lms qu'ils seraient susceptibles d'aimer. Ces propositions étaient générées par leur système de recommandation CinéMatch. Netix juge alors qu'un système de recommandation plus évolué leur permettrait de déliser leurs clients et d'augmenter leurs bénéces. Netix décide de lancer, en 2009, un concours, Le Netix Prize . Le but de ce concours était de construire un algorithme de recommandation qui pourrait surpasser les tests de 10%, i.e. de réduire de 10% la RMSE (Root-Mean-Square Error) de CinéMatch. La RMSE est une mesure qui permet de calculer la diérence entre les valeurs prédites par un modèle et les valeurs réellement observées. L'équipe de recherche gagnante a construit un système de recommandation à partir d'une centaine de modèles, dont la SVD. Son principe est de décomposer une matrice en trois sous-matrices an de faire apparaître des prols . Dans le cas de Netix par exemple, en décomposant leur matrice de notes, des prols de lms et d'utilisateurs vont apparaître. Comme 99% des notes ne sont pas connues, la matrice n'est pas dense et la diculté sera de prédire les notes manquantes. Ainsi le système pourra recommander des lms susceptibles d'intéresser les utilisateurs grâce aux notes qu'il aura prédites. L'intuition de l'algorithme NMF ( Non negative Matrix Factorization ) [6], algorithme de type collaborative ltering, est de décomposer une matrice non-négative en deux sousmatrices non-négatives, toujours dans le but de faire apparaître des prols. Comme pour la SVD, le système pourra prédire les notes manquantes et ainsi recommander des lms pertinents à un utilisateur. La diérence entre les algorithmes SVD et NMF est que la SVD propose une décomposition unique tandis que la NMF en propose plusieurs. En eet, la SVD permet d'obtenir des prols de lms et d'utilisateurs ainsi qu'une matrice de pondération . C'est cette matrice qui rend la SVD unique. La SVD est donc plus robuste puisqu'elle propose toujours les mêmes recommandations pour une matrice donnée mais la NMF favorise la sérendipité puisqu'elle propose plusieurs décompositions. 6
L'algorithme KNN ( K-Nearest Neighbors ), algorithme de type content-based et collaborative ltering, permet de classier un objet en fonction de son voisinage. Les données d'entrée sont un ensemble d'objets et un ensemble de classes. Chaque objet appartient à une classe et peut être représenté en tant que point dans un graphe. L'objectif est de classier les nouveaux objets, qui prendront comme identité la classe majoritaire de leurs k voisins les plus proches. L'intuition des arbres de décision est de diviser les critères en décisions an de recommander un produit qui s'approche au plus près des critères souhaités. Les arbres de décision peuvent aussi servir à justier une recommandation. Dans notre contexte, il n'existe qu'un seul article traitant de la recommandation immobilière et celui-ci a été écrit en Corée du Sud. Cet article [7] est peu détaillé au niveau de la partie technique de la recommandation basée sur le CBR (Case-Based Reasoning) et algorithme ou librairie n'ont pas été mentionnés. Il est plutôt focalisé sur l'étude de l'ergonomie de l'interface an de faciliter la recherche de logement. Il faut donc adapter un des algorithmes existants à notre contexte immobilier. Pour baser notre approche sur le collaboratif, dans le cadre de recommandations au niveau de la France, il faudrait avoir plusieurs avis sur les quartiers et les communes pour un même groupe d'utilisateurs. Or ce type de données n'est pas disponible. Ainsi, la comparaison des quatre algorithmes détaillés ci-dessus a permis de baser notre approche sur le contenu et non sur le collaboratif. 7
3 Vue d'ensemble des réalisations Cette section présente une vue d'ensemble de l'approche utilisée où nous cherchons à recommander des quartiers à partir de leurs caractéristiques. Les principaux verrous scientiques de ce projet sont la performance et la qualité. D'une part, il est nécessaire de choisir un algorithme de recommandation ecient tout en limitant la recherche d'IRIS candidats à un sous-ensemble idéalement sélectionné (e.g. selon une distance). D'autre part, la recommandation doit orir une qualité acceptable, ce qui nécessite de détecter et de regrouper en amont les indicateurs les plus pertinents. Les données sur les quartiers sont spatialement découpées en IRIS. Un IRIS, anagramme de Ilots Regroupés pour l'Information Statistique, est un découpage du territoire en mailles de taille homogène. L'IRIS est l'unité de référence pour la diusion de données infra-communales. Il existe trois types d'IRIS : habitat, activité et divers. Par exemple, les IRIS d'habitat ont une population entre 1 800 et 5 000 habitants. La Figure 2 illustre un schéma de système de recommandation adapté pour la recommandation d'IRIS. Figure 2 Schéma d'un système de recommandation adapté pour la recommandation d'IRIS Les sources de données intégrées dans le système de recommandation sont l'INSEE (Institut National de la Statistique et des Études Économiques) et le site des Meilleurs Agents. Le site meilleursagents.com fournit les prix moyens au mètre carré (pour les maisons et les appartements) par commune. L'INSEE fournit des indicateurs bruts pour chaque IRIS. Un indicateur brut est une valeur représentant le nombre de services, par exemple le nombre de boulangeries ou le nombre de terrains de foot. Comme les sources sont multiples et hétérogènes, un module d'intégration de données est nécessaire, comme le montre le premier rectangle de la Figure 2. L'INSEE fournit beaucoup d'indicateurs bruts, environ 800. Avoir autant d'indicateurs ne permet pas de caractériser les IRIS à un bon niveau de détail. Par exemple, connaître le nombre de restaurants ou le nombre de cinémas pour un IRIS n'est pas forcément pertinent, en revanche savoir si un IRIS est animé semble beaucoup plus pertinent dans le cadre d'un système de recommandation. An d'avoir des critères pertinents, un regroupement des indicateurs bruts a été eectué avec l'aide des sociologues. 8
SVM sont des modèles d'apprentissage supervisé auxquels on associe des algorithmes d'apprentissage qui analysent les données pour faire de la classication ou de la régression. Le choix entre la classication et la régression peut être déterminé par le type de sortie de l'algorithme. La classication est utilisée lorsque la sortie est une valeur discrète (e.g. une catégorie) tandis que la régression est utilisée dans le cas d'une sortie continue (e.g. une valeur). Selon les données de départ, chaque élément appartiendra à une classe. L'algorithme d'apprentissage va construire un modèle et sera capable de prédire la classe d'un nouvel élément. Il a donc besoin de données d'apprentissage ( training data ). Dans notre cas, ce sont les IRIS de départ qui servent de données d'entraînement. Pour one-class-svm, une seule classe est nécessaire donc les IRIS de départ représentent la classe (classe 1). Pour les autres algorithmes de type SVM, deux classes sont nécessaires. Dans ce cas, les IRIS de départ sont de classe 1, et les voisins directs de chaque IRIS de départ (qui ne font pas partie des IRIS de départ) sont de classe 0. Les coecients appris lors de l'entraînement ( training ) servent de vecteur représentatif des IRIS de départ. Enn, pour recommander, soit la similarité cosine soit le clustering sont appliqués en utilisant ce vecteur représentatif. En eet, ce vecteur peut être utilisé comme IRIS de départ avec un autre algorithme (e.g. mesure cosine ou clustering). Lorsque les données ne peuvent pas être classiées, on ne peut pas utiliser l'apprentissage supervisé. Il existe alors une autre approche, celle de l'apprentissage non-supervisé. Cette approche tente de trouver un regroupement entre les données. Dans le prototype, les données peuvent être classiées donc c'est l'apprentissage supervisé qui a été retenu. 15
6 Prototype et résultats préliminaires Dans cette section, l'implémentation du prototype et l'évaluation sur données réelles seront présentées. 6.1 Prototype Le prototype permet de faire la recommandation d'un IRIS ou d'appliquer les algorithmes sur les IRIS au niveau de la France. Dans la suite, nous montrerons les principales fonctionnalités du prototype en prenant comme étude le département du Rhône. Plusieurs cas de gures sont possibles et les données en entrée peuvent varier (soit un IRIS, soit une liste d'IRIS). Le premier cas est la recommandation simple pour un IRIS. Dans ce cas, c'est la similarité cosine qui est appliquée. Le second est le clustering simple qui permet de regrouper et de visualiser les IRIS similaires (i.e. qui appartiennent au même cluster). Dans ce cas, le clustering est appliqué sur tous les IRIS. Le dernier est la recommandation via le clustering. Dans ce cas, le clustering s'applique sur les IRIS du Rhône an de les regrouper en clusters et de déterminer dans quel cluster mettre l'IRIS à recommander. Les IRIS qui composent le cluster le plus pertinent seront les IRIS recommandés. Les captures d'écran ci-dessous illustrent ces cas de gure. Par défaut les IRIS sont bleus, l'IRIS sélectionné est violet et les IRIS recommandés sont colorés. Le prototype est sous la forme d'un site web. La structure a été codée en HTML et la mise en page en CSS. Le JavaScript a été utilisé pour les interactions avec la carte et les menus. Le lien entre les choix faits par l'utilisateur et l'exécution des fonctions est réalisé avec des requêtes AJAX. Comme mentionné précédemment, la recommandation est faite en Python. Figure 6 Recommandations (vert) pour l'IRIS de la Part-Dieu La Figure 6 montre les recommandations proposées pour l'IRIS de la Part-Dieu grâce à l'algorithme de la similarité cosine. Les quartiers recommandés sont des IRIS animés puisque celui de la Part-Dieu est animé du fait de son nombre de restaurants (indicateur majeur pour le critère d'animation). 16
Figure 7 Recommandations (blanc) pour l'IRIS du parc de la Tête d'or La Figure 7 montre les recommandations pour le parc de la Tête d'or, toujours avec l'algorithme de la similarité cosine. La similarité cosine renvoie plutôt des IRIS d'activité puisque le parc de la Tête d'or recense peu de services. Figure 8 Clustering appliqué via l'algorithme Mean Shift La Figure 8 montre l'application du clustering sur les IRIS du Rhône avec l'algorithme Mean Shift. Cet algorithme permet de faire apparaître les zones les plus denses, e.g. les quartiers animés de Lyon et les centres villes des autres villes comme Tarare, Villefranche ou Givors. 17
Figure 9 Clustering appliqué via l'algorithme Agglomerative Clustering La Figure 9 montre l'application du clustering sur les IRIS du Rhône avec l'algorithme Agglomerative Clustering. Cet algorithme permet de démarquer les centres (très colorés) des zones moins denses (majoritairement bleues). Figure 10 Recommandations (violet) pour l'IRIS de la Part-Dieu via le clustering La Figure 10 montre la recommandation via le clustering. Les clusters sont d'abord calculés grâce à l'algorithme Mean Shift. Ensuite, le module de recommandation cherche dans quel cluster l'IRIS de la Part-Dieu serait placé. Le cluster déterminé est alors le cluster le plus pertinent donc ses IRIS sont recommandés. Ce sont les zones animées des centres du Rhône qui sont recommandées, ce qui est pertinent par rapport à leurs indicateurs. 6.2 Protocole Lorsqu'un système de recommandation est développé, il est nécessaire d'évaluer sa capacité à répondre aux objectifs dénis. Cela nécessite à la fois un jeu de données et 18
des métriques d'évaluation. Les métriques, mesures quantiables de la performance, permettent d'évaluer les algorithmes implémentés. Par exemple, lorsqu'un utilisateur lance une requête (e.g. une recommandation de quartiers), il s'attend à avoir un certain nombre de réponses qui correspondent à sa question. Ses attentes peuvent se caractériser par une mesure de précision/rappel. Ce couple de mesures permet de mesurer les performances d'un algorithme. La précision représente la probabilité qu'un élément recommandé soit pertinent et se dénit par : pr´ecision =nombre d0IRIS pertinents trouv´es nombre d0IRIS pertinents stock´es Le rappel représente la probabilité qu'un élément pertinent soit recommandé et se dénit par : rappel =nombre d0IRIS pertinents propos´es `a l0utilisateur nombre d0IRIS total propos´es pour une recommandation Un système parfait aurait une précision à 1 (aucune erreur dans les éléments recommandés) et un rappel à 1 (tous les éléments pertinents sont recommandés). En plus des mesures de précision et de rappel, une troisième mesure d'évaluation peut être utilisée, c'est la moyenne harmonique. Elle combine la précision et le rappel et se dénit par : f measure = 2 ×pr´ecision×rappel pr´ecision+rappel Des mesures telles que les vrais et faux positifs ainsi que les vrais et faux négatifs permettent aussi d'évaluer un algorithme. Les vrais positifs sont les IRIS pertinents qui sont détectés comme pertinents alors que les faux positifs sont les IRIS non pertinents détectés pertinents. Les vrais négatifs sont les IRIS non pertinents détectés en tant que tel alors que les faux négatifs sont les IRIS pertinents détectés comme non pertinents. Ces mesures permettent de calculer la sensibilité et la spécicité d'un algorithme. La sensibilité mesure la capacité d'un algorithme à donner un résultat positif quand l'hypothèse est vériée tandis que la spécicité mesure la capacité à donner un résultat négatif quand l'hypothèse n'est pas vériée. La sensibilité permet de détecter tous les IRIS qui ne sont pas à recommander car ils ne sont pas pertinents, sachant que cet ensemble ne contient pas forcément que des IRIS non pertinents. À l'inverse la spécicité permet de ne détecter que les IRIS non pertinents. Après avoir déni les métriques d'évaluation, il est important de dénir le jeu de données. Il n'existe pas de benchmark sur la France pour les IRIS. Nous avons donc utilisé les données réelles que nous fournit Home in Love. Sur la centaine de clients fournis, seuls 67 prols étaient valides (i.e. un IRIS de départ, un IRIS d'arrivée et un IRIS de travail). Le Tableau 1 illustre les statistiques des 67 prols valides et des IRIS candidats à la recommandation. Pour environ 50% des prols (30/67), la distance entre l'IRIS de travail et l'IRIS du nouveau domicile est inférieure à 5 kilomètres (première ligne de la Figure 1). Cela ne restreint pas forcément le nombre d'IRIS candidats à la recommandation, car il y a des prols avec une distance inférieure à 5 kilomètres qui contiennent plusieurs centaines d'IRIS candidats (e.g. dans les grandes villes). La somme des deux dernières lignes du Tableau 1 montre qu'environ les 3/4 des prols ont une zone 19
de recherche contenant plus de 50 IRIS candidats à la recommandation. Ce nombre peut monter jusqu'à plusieurs milliers d'IRIS candidats pour quelques cas. Nombre de prols Distance (en kilomètres) 0 < distance < 5 30 5 < distance < 10 16 10 < distance < 20 9 distance > 20 12 Nombre d'IRIS candidats candidats < 10 3 10 < candidats < 50 13 50 < candidats < 500 38 candidats > 500 13 Table 1 Statistiques sur les prols et les IRIS candidats 6.3 Résultats Les résultats préliminaires de notre prototype permettent de montrer la pertinence de la recommandation sur un top 10. Les résultats ci-dessous sont eectués sur 67 prols et les 50000 IRIS qui composent la France. Chaque prol inclut l'IRIS de départ, l'IRIS d'arrivée et l'IRIS du futur lieu de travail de l'utilisateur. L'IRIS de départ est le lieu de vie actuel et l'IRIS d'arrivée est le nouveau domicile, dans le cadre d'une mutation professionnelle par exemple. À partir de l'IRIS de départ, nous souhaitons vérier que les algorithmes utilisés obtiennent (parmi les 10 recommandations) l'IRIS d'arrivée (où la personne a nalement emménagé). C'est le rappel qui indique si l'IRIS recherché fait partie des IRIS recommandés. Les IRIS candidats sont détectés à partir de l'IRIS de travail. En eet, la personne cherchera à habiter à proximité de son nouveau lieu de travail. Les algorithmes de type SVM qui nécessitent au moins deux classes (e.g. linear SVM et nu SVM) n'ont pas été inclus car les expérimentations ont été réalisées avec un seul IRIS de départ. C'est pourquoi seulement l'algorithme one-class SVM a été utilisé pour ces expérimentations. Le Tableau 2 montre les résultats obtenus lors des expérimentations. 20
Stratégie Faux positifs Vrais positifs Faux négatifs Précision Rappel Fmeasure Cosine similarity 645 13 54 0.02 0.19 0.04 Standard deviation 645 13 54 0.02 0.19 0.04 Spectral clustering 29751 60 7 0.0 0.9 0.0 Agglomerative clustering 29751 60 7 0.0 0.9 0.0 DBSCAN 29751 60 7 0.0 0.9 0.0 Mini Batch k-means 5573 18 49 0.0 0.27 0.01 K-means 5739 18 49 0.0 0.27 0.01 Meanshift 18586 36 31 0.0 0.54 0.0 Anity propagation 3406 8 59 0.0 0.12 0.0 Birch 6168 20 47 0.0 0.3 0.01 One-class SVM 6316 21 46 0.0 0.31 0.01 Table 2 Résultats des évaluations pour 67 prols et 50000 IRIS Les résultats obtenus avec la similarité cosine sont encourageants. En eet, le rappel est de 0.19, soit 20% donc environ une recommandation sur 5 est trouvée. Mon approche avec l'écart-type (standard deviation) propose des résultats cohérents avec la mesure cosine, qui est une mesure très utilisée. Elle obtient un rappel de 0.19 comme la similarité cosine. C'est un résultat préliminaire encourageant. Le clustering obtient de bons résultats car son rappel est proche de 1. Certains algorithmes de clustering nécessitent de spécier le nombre de clusters tandis que d'autres sélectionnent ce nombre automatiquement. Lorsqu'il faut fournir ce nombre, le nombre de clusters est déni par le nombre d'IRIS candidats divisé par 10, pour avoir en moyenne 10 IRIS par cluster. Cependant, en pratique, les algorithmes peuvent construire des clusters regroupant de nombreux IRIS (e.g. le spectral clustering trouve environ 30000 IRIS pour les 67 prols, soit des clusters d'une taille de 445 IRIS en moyenne). Même si une majorité d'IRIS d'arrivée sont trouvés, ceux-ci sont donc perdus au milieu d'un grand nombre de recommandations, ce qui rend l'algorithme peu pratique à utiliser. 6.4 Discussion Pour terminer, nous analysons plus nement ces premiers résultats an d'extraire des perspectives pour la n de mon stage. L'hypothèse de départ choisie est très forte. 21
En eet, elle considère que les utilisateurs cherchent un quartier semblable à celui où ils habitaient. Or, cette hypothèse n'est pas toujours vraie. En eet, les sociologues ont analysé les pentes de carrière qui montrent que les utilisateurs cherchent, dans la plupart des cas, des quartiers diérents de leur quartier actuel car leur situation (notamment nancière) a évolué positivement lors de la mutation. Par exemple, les utilisateurs qui sont en ascension positive voient souvent leur salaire augmenté et donc peuvent chercher un quartier/logement au plus près de leurs attentes. Les alternants faussent également cette hypothèse puisqu'ils partent de chez leurs parents, donc ils cherchent souvent un quartier diérent de celui de leurs parents (e.g. des quartiers à résidences étudiantes). Même constat pour les utilisateurs qui ont des liens forts avec leur ancien domicile ou leur famille car ils sont prêts à faire les allers-retours le week-end. Les diérents algorithmes utilisés ont chacun beaucoup de paramètres. Il faudrait pousser encore plus loin les expérimentations pour essayer de personnaliser au mieux les recommandations. En eet, les paramètres de ces algorithmes inuencent les résultats obtenus. Par exemple, pour les algorithmes K-Means et Spectral Clustering, le nombre de clusters à former peut être modié. Pour l'algorithme DBSCAN, c'est la taille du voisinage qui peut être changée. Ainsi, la paramétrage de ces algorithmes peut faire varier la précision des résultats obtenus et donc aner les recommandations. La n de mon stage devrait permettre d'approfondir cette analyse des paramètres. Notre approche se base pour l'instant sur les données de l'INSEE et des prix immobiliers mais des aspects sociologiques seront aussi à prendre en compte. Le post-doctorant est en train de convertir les prols donnés par la start-up HiL et d'en extraire des aspects sociologiques (e.g. la situation familiale, l'âge, la catégorie socio-professionnelle), dans le respect de la CNIL (Commission Nationale de l'Informatique et des Libertés). Ces aspects seront à intégrer dans un second temps an d'améliorer les recommandations. Il n'existe pas de critères sociologiques comme source de données, c'est pourquoi le travail d'analyse des sociologues permettra de prendre en compte ces critères. Le regroupement des indicateurs est une première ébauche que les sociologues vont aner une fois qu'ils auront mieux identié les critères importants. Ces perspectives se placent dans l'ajout de données utilisateur , comme l'indique le rond de la Figure 2. 22
7 Conclusion et perspectives Je suis ravie d'avoir pu faire mon stage au LIRIS et ce mois et demi est une très belle expérience pour moi. La première partie de mon stage s'est penchée sur la découverte de la recommandation. J'ai ainsi pu lire un article sur la recommandation immobilière [7] et en faire un résumé. J'ai aussi fait un état de l'art sur les algorithmes de recommandation (voir Section 2). Il m'a permis de lire des articles scientiques en anglais, de synthétiser les données lues et de les organiser en une présentation claire et concise. Enn, je me suis renseignée sur les méthodes d'apprentissage des algorithmes. En parallèle de mon travail au LIRIS, j'ai assisté aux réunions organisées par Home in Love. Elles ont pour objectif de faire le point entre les avancées informatiques, les analyses sociologiques et les souhaits de la start-up. Cette collaboration entre diérents domaines est pour moi une découverte d'une grande richesse. Ce stage m'a aussi été très protable sur le plan technique puisque la deuxième partie de celui-ci se concentre sur le prototype. J'ai pu découvrir le langage Python ainsi que les requêtes AJAX. J'ai aussi pu mieux comprendre comment imbriquer les langages entre eux pour séparer la vue et le traitement. Grâce au module d'intégration de données, j'ai découvert la gestion de données hétérogènes. La suite de mon stage me permettra de continuer à travailler sur le prototype ainsi que d'approfondir les expérimentations actuelles. Il me permettra éventuellement d'intégrer des critères sociologiques aux recommandations. Le prochain objectif est de soumettre un article. Il faudra d'abord résoudre les diérents problèmes d'ergonomie et de performances du prototype ainsi que préparer les interfaces pour dérouler les scénarios que nous proposerons dans l'article. Ensuite, je participerai à la rédaction de l'article de démonstration qui sera soumis à EGC (conférence Extraction et de Gestion des Connaissances). La soumission de cet article est prévue pour octobre 2019. Ce stage est une belle expérience professionnelle en plus d'avoir pu faire mes premiers pas en recherche. Sur le plan humain, j'apprécie beaucoup la pédagogie et l'implication de mes maîtres de stage. Ils prennent le temps de m'expliquer clairement mes missions et de m'aider lorsque je n'arrive pas à résoudre certains problèmes techniques. Ce stage m'a permis d'apprendre à mieux m'organiser et à être plus autonome dans la recherche de solutions. J'ai énormément apprécié ce mois et demi au sein du LIRIS et cette expérience me conforte dans mon envie de faire un master recherche. 23
8 Annexes Les annexes ci-dessous illustrent l'instanciation du vecteur des indicateurs regroupés ainsi qu'un aperçu du prototype. animationCommerceNonalimentaire animationCommerceAlimentaireGrandesurface animationCommerceAlimentaireP roximite animationCulturel animationDivertissement csp educationCreche educationPrimairePrive educationPrimairePublic educationSecondaireCycle1P rive educationSecondaireCycle1P ublic educationSecondaireCycle2GeneralPrive educationSecondaireCycle2GeneralPublic educationSecondaireCycle2P rofessionnelP rive educationSecondaireCycle2P rofessionnelP ublic educationSuperieurP rive educationSuperieurP ublic espacevert logementAnnee logementResidence logementResident logementT ype loisir securite serviceActionsociale serviceDiversPrive serviceDiversPublic serviceEmploi serviceJustice serviceSante transportBusmetrotram transportLonguedistance transportV elo = 209.0 4.0 7.0 0.0 102.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 2.0 0.0 0.0 0.0 0.0 0.0 1.0 0.0 0.0 39.0 126.0 5.0 1.0 1.0 0.0 1.0 0.0 Figure 11 Exemple d'instance des indicateurs regroupés pour l'IRIS de la Part-Dieu 24