Conception et implémentation d’applications de Context-Awar
Aujourd’hui les utilisateurs d’internet ont du mal à trouver les données et les informations qu’ils cherchent à cause de la surcharge d’information du web, pour résoudre ce problème les systèmes de recommandations sont apparus. Ils ont comme buts : minimiser le temps de l’utilisateur passé à la recherche et suggérer des ressources pertinentes qu’ils n’auraient pas consultées.
Pour recommander des ressources plusieurs approches sont possibles : L’approche collaboratif qui se base sur l’opinion des utilisateurs ainsi la similarité entre utilisateurs, l’approche par contenu qui effectue des recommandations en comparant le contenu des ressources avec le gout des utilisateurs, l’approche hybride qui regroupe les deux approche précédentes et l’approche contextuel qui se base sur le contexte d’un utilisateurs(son environnement). Dans ce mémoire nous nous intéressons à l’approche hybride : par contenu en comparant les informations des patients avec les documents et collaboratif en recommandons le document qui a un taux de votes supérieur et à l’approche contextuel après avoir extraire le contexte d’utilisation d’une application de gestion des enregistrements électronique des patients: sa maladie, son âge, son sexe…
systèmes de recommandation
Définition des systèmes de recommandation
Les systèmes de recommandation peuvent être définis de plusieurs façons, qui peuvent se rapporter à différents types de données ou approches spécifiques. La définition que nous utiliserons est une définition générale de Robin Burke (Burke, 2002),
Système de recommandation : Système capable de fournir des recommandations personnalisées ou permettant de guider l’utilisateur vers des ressources intéressantes ou utiles au sein d’un espace de données important. En pratique, la plupart des systèmes de recommandation consistent en des applications Web qui proposent des listes de ressources à des utilisateurs. De telles ressources peuvent correspondre à différents types de données tels que des films (Miller et al., 2003), de la musique (Su et al., 2010), des livres (Mooney et Roy, 2000), des restaurants (Burke, 2007), des news (Das et al., 2007), des blagues, (Miyahara et Pazzani, 2000), des articles scientifiques (Pavlov et al., 2004), des pages Web (Pitkow et Pirolli, 1999), etc. Les données d’entrée pour un système de recommandation dépendent du type de l’algorithme de filtrage employé. Généralement, elles appartiennent à l’une des catégories suivantes
– Les estimations :(également appelées les votes), expriment l’opinion des utilisateurs sur les articles (exemple : 1 mauvais à 5 excellent).
– Les données démographiques : se réfèrent à des informations telles que l’âge, le sexe, le pays et l’éducation des utilisateurs. Ce type de données est généralement difficile à obtenir et est normalement collecté explicitement;
– Les données de contenu, qui sont fondées sur une analyse textuelle des documents liés aux éléments évalués par l’utilisateur. Les caractéristiques extraites de cette analyse sont utilisées comme entrées dans l’algorithme de filtrage afin d’en déduire un profil d’utilisateur.
Objectif des systèmes de recommandation
L’objectif est à la fois de minimiser le temps des utilisateurs passé à la recherche, mais aussi de les suggérer des ressources pertinentes qu’il n’aurait pas spontanément consultées et ainsi accroître sa satisfaction globale.
Classification des systèmes de recommandation
Il est possible de classer les systèmes de recommandation de différentes manières. La classification la plus fréquente est une classification selon trois approches :
1) les recommandations basées sur le contenu.
2) filtrage collaboratif (Shahabi et al. 2001 ; Adomavicius et Tuzhilin, 2005 ; Huang et Huang, 2009 ; Lousame et Sánchez, 2009).
3) le filtrage hybride qui combine les deux approches précédentes. En plus de ces trois approches, (Burke, 2007) propose de considérer trois autres approches : la recommandation basée sur les données démographiques, la recommandation basée sur l’utilité et la recommandation basée sur la connaissance.
Historique
Les interfaces de recommandation facilitent l’interaction humain-machine et l’accès à l’information pertinente aux besoins de l’utilisateur. On retrace les premiers travaux portant sur le filtrage d’information à un article de Luhn [Luhn, 1958] sous le nom de « diffusion sélective d’une nouvelle information ». Le terme « filtrage d’information » a été proposé par Denning [Denning, 1982], qui s’est concentré sur le filtrage des courriers électroniques. En 1987, deux catégories du filtrage d’information étaient proposées par Malone [Malone et coll., 1987]. La première catégorie est le filtrage cognitif nommé actuellement filtrage basé sur le contenu. La deuxième catégorie est le filtrage social qui correspond au filtrage collaboratif. Cet axe de recherche été très actif dans la dernière décennie et même plus tôt, et plusieurs laboratoires s’y sont consacré. Leurs travaux vont de la catégorisation du filtrage d’information au développement des techniques d’extraction des informations pour la sélection des messages. Par exemple, la conférence MUC (Message Understanding Conference) [Hirschman, 1991] rapporte une série d’études qui ont eu un impact non négligeable. Cette conférence était parrainée par l’agence DARPA (United States Advanced Research Projects Agency des États-Unis) en 1989. Après une année, DARPA a continué les travaux sur les techniques de filtrage d’information par le lancement d’un nouveau projet nommé Tapestry qui avait pour objectif la réunion des efforts de recherche des différents participants à MUC [Harman, 1992a].
Plusieurs systèmes de recherche et de filtrage d’information ont été développés. Donc il fallait trouver un moyen pour les évaluer. DARPA collabore avec NIST (National Institut of Standards and Technology) et parrainent un projet international TREC (Text REtrieval Conference) qui concerne l’évaluation de ces systèmes [Harman, 1992b. Suite à une conférence sur l’incertitude en intelligence artificielle, une étude séminale qui compare des algorithmes prédictifs pour le filtrage collaboratif était publiée par Breese, Heckerman, et Kadie dans [Breese, Heckerman, et Kadie, 1998]. Une interface ou un système de recommandation constitue un type de filtrage d’information qui a pour objectif de prévoir et de présenter les éléments d’informations tels que les cours, la musique, les films… qui correspondront aux intérêts et besoins de l’utilisateur. Ceci peut se faire par la comparaison entre les objets eux-mêmes (approche Item-Item) ou par la comparaison entre les choix des utilisateurs (approche UtilisateurUtilisateur). Une interface ou un système de recommandation nécessite une recherche et un filtrage d’information .
Le contexte
Définitions
La définition générale du contexte que l’on trouve dans les dictionnaires est la suivante : «Ensemble que forment, par leur liaison naturelle, les différentes parties d’un texte ou d’un discours». On peut également souligner les définitions suivantes :
– «Le contexte d’un événement inclut les circonstances et conditions qui l’entourent» ;
– «En informatique, le contexte est l’ensemble des conditions sous lesquelles un dispositif est en train d’être utilisé, par exemple l’occupation actuelle de l’utilisateur» ;
– «En intelligence artificielle, le contexte est très fortement relié à ses propriétés en communication, linguistique et philosophie. La recherche scientifique est effectuée sur la façon dont ces aspects peuvent être modélisés dans des systèmes informatiques (par exemple basés sur la logique) pour l’utilisation dans le raisonnement automatique».
Définition du Context-Awareness
L’informatique du context-aware a été discutée par Schilit et Theimer en 1994 pour être un logiciel qui s’adapte en fonction de son lieu d’utilisation, la collecte des personnes et des objets environnants, ainsi que des changements à ces objets dans le temps. Toutefois, il est généralement convenu que la première enquête de recherche de l’informatique du context-aware était l’Olivetti active Badge (Want, Hopper et al. 1992) en 1992. Depuis lors, il y a eu de nombreuses tentatives pour décrire l’informatique du context-aware. La première définition d’applications du context-aware donné par Schilit et Theimer (1994) a élargi l’idée de context-awareness des applications qui sont simplement informés sur le contexte des applications qui s’adaptent au contexte. context-aware est devenu un peu synonyme d’autres termes: adaptatif (Brown, 1996a), réactif (Cooperstock, Tanikoshi et al. 1995), sensible (Elrod, Hall et al. 1993), situé (Hull, Neaves et al. 1997), contextuelle (Rekimoto, Ayatsuka et al. 1998 ) et de l’environnement dirigée (Fickas, Kortuem et al., 1997). Définitions précédentes de l’informatique du context-aware se divisent en deux catégories: utilisant le contexte et adaptation au contexte. Voyons d’abord le cas le plus général d’utilisation context-aware. Hull et al. (1997) et Pascoe et al. (Pascoe, 1998; Pascoe, Ryan et al 1998; Ryan, Pascoe et al 1998) définissent l’informatique du context-aware qu’elle est la capacité des appareils informatiques de détecter, interpréter et répondre aux aspects de l’environnement local de l’utilisateur et l’informatique des dispositifs eux-mêmes. Dey et al. ont défini context-awareness pour être l’utilisation de contexte pour automatiser un logiciel , de modifier une interface, et de fournir un maximum de flexibilité d’un service informatique (Dey 1998; Dey, Abowd et al 1998;.. Salber, Dey et al, 1999b).
L’historique des applications de Context-Aware
Comme mentionné précédemment, le système de Active Badge (Vous et al., 1992) est généralement considéré comme le premier système context-aware. Dans cette application, les utilisateurs portaient Les badges actifs, émetteurs infrarouges qui transmettent un code d’identification unique. Comme les utilisateurs déplacent tout au long de leur bâtiment, une base de données avait été mis à jour dynamiquement des informations sur chaque emplacement actuel d’utilisateur, l’extension du téléphone le plus proche, et la probabilité de trouver quelqu’un à cet endroit (selon l’âge des données disponibles. Lors d’un appel téléphonique a été reçu pour un utilisateur particulier, la réceptionniste a utilisé la base de données pour transférer l’appel à la dernière position connue de cet utilisateur, plutôt que de transférer aveuglément l’appel au bureau d’utilisateur, où il ne peut pas être localisé. Cette application, avec beaucoup des premiers travaux dans le context-aware a été axée sur l’informatique de la location courante, ou comme ils sont connus aujourd’hui, les services basés sur la localisation.
L’autre travail séminal dans le context-aware a été réalisé par le groupe Ubicomp au (Xerox PARC, au début des années 1990). Schilit et al. inventent le terme contextawareness, et construisent une architecture de système qui a soutenu la construction des applications (1994, 1995_, dans le cadre des travaux les très influent de PARCTAB _Want et al., 1995). Dans le travail du PARCTAB, les systèmes fournis présente de l’information aux utilisateurs en fonction de la proximité des services par exemple, des imprimantes et des personnes, tourne les dispositifs ou les reconfigurer en fonction des personnes qui sont à proximité , les informations ou les services basés sur l’endroit où se trouve l’utilisateur , et d’exécuter automatiquement un service d’une manière particulière en fonction de mouvement ou de la proximité des utilisateurs à des locaux ou des dispositifs spécifiques. Depuis lors, il y a eu un travail ayant appliqué contextawareness dans un grand nombre de domaines.
Les applications de Context-Aware
Il existe trois catégories canoniques d’applications: les guides touristiques, les systèmes de rappel et contrôle de l’environnement.
Les guides touristiques
Comme décrit précédemment, le guide mobile est l’application la plus canonique du context-aware. Lors de l’interaction avec un système de guide mobile, les utilisateurs portent un dispositif informatique portable comme ils voyagent à travers une certaine région comme un musée ou une ville. Comme les utilisateurs participent à différentes expositions ou des lieux touristiques, leurs appareils mobiles présentent des informations pertinentes à ces endroits. Alors que les premiers systèmes fortement axées sur la l’emplacement (Bederson, 1996;. Abowd et al, 1997), les systèmes ultérieurs ont pris en compte les intérêts des utilisateurs et la durée qu’ils ont passé à un lieu touristique ou le temps qu’ils ont eu à visiter, à choisir quelles informations et à afficher (Brown, 1996b;. Davies et al, 1998) quelles sites touristiques à recommander.
Reminders
Une deuxième application context-aware c’est le système de rappel context aware. context-aware reminders présente aux individus les rappels déclenchés par les changements dans le contexte, Un réveil utilise un déclencheur contextuel simple, temps, pour déclencher une alarme, un simple formulaire de rappel. De même, les services basés sur la localisation peuvent envoyer des rappels lorsque les utilisateurs sont à un endroit particulier ou dans une certaine proximité les uns des autres _Schilit, 1995). Systèmes de rappel plus sophistiqués utilisent une combinaison de différentes formes de contexte d’utilisateur pour déclencher un rappel. En étant plus sophistiqué, ces applications peuvent rappeler aux utilisateurs de façon plus appropriée, offrant le droit de rappel dans la bonne situation de _Dey et Abowd, 2000;. Ludford et al, 2006).
Les contrôles environnementaux
Une troisième application canonique context-aware est un système de contrôle du chauffage et d’éclairage de l’environnement, généralement pour économe en énergie ou économiser les efforts des utilisateurs. Comme beaucoup de gens laissent souvent les lumières allumées inutilement, ou modifier manuellement le chauffage ou le niveau de refroidissement pour rester confortable, de nombreux systèmes ont été développés qui peuvent contrôler ces activités au nom des utilisateurs. Certains sont basés sur des règles simples _Elrod et al., 1993), tandis que d’autres utilisent des mécanismes plus sophistiqués pour savoir comment les utilisateurs utilisent un espace et définit chauffage et d’éclairage en conséquence (Mozer, 1998).
Les applications contemporaines de Context-Aware
Au-delà de ces trois domaines canoniques, les chercheurs et les développeurs ont créé des applications dans une grande variété de domaines, y compris:
– Communications interpersonnelles, y compris la messagerie instantanée (Avrahami et al, 2008;)
– Appels téléphoniques (Schmidt et al, 2000.);
– Santé (Bardram et Nørskov, 2008);
– Systèmes de géo localisation;
– Agriculture (Kjaer, 2008);
– Personnalisation de l’application (Weiss et al., 2008)
– A périphériques qui affichent des informations ( Wisneski et al, 1998);
Conclusion
Ce projet de fin d’étude représente le fruit de tant d’années d’études, il nous a permis d’avoir de nouvelles connaissances dans différents domaines. Dans ce mémoire nous avons abordé le problème de la recommandation contextuel des documents médicaux exactement dans le domaine de la cardiologie.
Comme nous avons vu l’objectif principal de notre système est de recommandé des documents scientifiques approprier au contexte d’utilisation d’une application de gestion des enregistrements électronique des patients. Cette recommandation est effectuée par la comparaison du contexte avec les documents du corpus via l’indexation et la mesure de similarité pour trouver les documents proches du contexte, on prend en compte aussi les avis et les votes des autres médecins de la même spécialité. En réalisant ce PFE, nous avons essayé de développer une application médicale qui permet le filtrage collaboratif en se basant sur le taux des votes et le filtrage par contenu concrétiser par la mesure de similarité. L‘application permet aussi de donner un avis sur un document consulter.
|
Table des matières
Introduction générale
1 Les systèmes de recommandation
1.1 Introduction
1.2 Définition des systèmes de recommandation
1.3 Objectif des systèmes de recommandation
1.4 Classification des systèmes de recommandation
1.5 Historique
1.6 Recommandation basée sur le contenu
1.6.1 Approche geéneérale
1.6.2 Profils de ressource
1.6.3 Profils d’utilisateur
1.6.4 Limitations de la recommandation baseée sur le contenu
1.7 Filtrage collaboratif
1.7.1 Les limites du filtrage collaboratif
1.8 Filtrage Hybride
1.9 Recommandation basée sur les données démographiques
1.10 Recommandation basée sur l’utilité
1.11 Recommandation basée sur la connaissance
1.12 Les problèmes des systèmes de recommandation
1.13 Conclusion
2 Le contexte
2.1 Introduction
2.2 Définitions
2.3 L’historique des applications de Context-Aware
2.4 Les applications de Context-Aware
2.5 Conception et implémentation d’applications de Context-Aware
2.6 La construction d’applications Context-Aware
2.7 Conclusion
3 La recommandation contextuelle
3.1 Introduction
3.2 Conception du système
3.3 Diagramme de cas d’utilisation
3.4 Diagramme de séquence
3.5 Diagramme de classe
3.6 Indexation et appariement dans la recommandation par contenu
3.7 Processus d’indexation
3.7.1 Analyse lexicale
3.7.2 Pondeération des termes
3.7.3 Creéation d’index
3.8 Appariement : Document-requête
3.9 Recommandation collaborative
3.10 Implémentation et mise en œuvre
3.11 Outils de réalisation
3.12 Réalisation de l’application
3.13 Conclusion
4 Conclusion
Télécharger le rapport complet