Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage...

29
Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage 8.1.1.1. Principe général L’accès à l’information s’effectue à l’heure actuelle selon différentes modalités : la recherche active de documents via des systèmes de recherche d’information, la réception de documents par des tierces personnes, la rencontre fortuite d’un document par navigation sur Internet par exemple, etc. Parmi les systèmes informatiques permettant ce type d’activités, les systèmes de filtrage s’inscrivent parmi ceux permettant la réception de documents jugés intéressants. Par opposition aux moteurs de recherche d’information, qui requièrent de l’utilisateur une activité de formulation systématique de son besoin, les systèmes de filtrage pérennisent ce besoin d’information et permettent l’acheminement au cours du temps des documents intéressants. Ainsi les premiers permettent la découverte ponctuelle de documents, les seconds leur réception permanente. En ce sens, les deux types de systèmes se complètent. Etre informé étant une nécessité professionnelle et citoyenne, recevoir des informations ayant un certain niveau d’intérêt individuel permet à chacun d’apprendre, d’analyser, de critiquer toute nouvelle source d’information. Ainsi recevant toute nouveauté, l’utilité du filtrage permet donc d’éviter de procéder régulièrement à une Chapitre rédigé par Catherine BERRUT et Nathalie DENOS.

Transcript of Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage...

Page 1: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Chapitre 8

Filtrage collaboratif

8.1. Introduction

8.1.1. Motivation et application des systèmes de filtrage

8.1.1.1. Principe général

L’accès à l’information s’effectue à l’heure actuelle selon différentes modalités :la recherche active de documents via des systèmes de recherche d’information, laréception de documents par des tierces personnes, la rencontre fortuite d’undocument par navigation sur Internet par exemple, etc.

Parmi les systèmes informatiques permettant ce type d’activités, les systèmes defiltrage s’inscrivent parmi ceux permettant la réception de documents jugésintéressants. Par opposition aux moteurs de recherche d’information, qui requièrentde l’utilisateur une activité de formulation systématique de son besoin, les systèmesde filtrage pérennisent ce besoin d’information et permettent l’acheminement aucours du temps des documents intéressants. Ainsi les premiers permettent ladécouverte ponctuelle de documents, les seconds leur réception permanente. En cesens, les deux types de systèmes se complètent.

Etre informé étant une nécessité professionnelle et citoyenne, recevoir desinformations ayant un certain niveau d’intérêt individuel permet à chacun d’apprendre,d’analyser, de critiquer toute nouvelle source d’information. Ainsi recevant toutenouveauté, l’utilité du filtrage permet donc d’éviter de procéder régulièrement à une

Chapitre rédigé par Catherine BERRUT et Nathalie DENOS.

Page 2: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

242 Assistance intelligente à la RI

recherche d’éventuelles avancées. Cela procure à l’utilisateur bien évidemment uneéconomie d’effort mais également une certaine sérénité.

De nombreux systèmes de filtrage existent à l’heure actuelle. A l’origine, lessystèmes de filtrage se sont appliqués aux forums électroniques, exemple typique desource d’informations où de nouveaux documents fleurissent chaque jour. On trouveégalement des systèmes de filtrage du courrier électronique, qui permettent decatégoriser les messages reçus automatiquement. Plus récemment, les systèmes defiltrage permettent d’exploiter les archives électroniques de documents, qui sontalimentées régulièrement par les écrivains de certaines communautés. Il ne faut pasnon plus négliger l’utilisation à but commercial, culturel, ou de divertissement deces systèmes.

Ce chapitre a pour objectif de présenter le filtrage d’informations dit collaboratif.Pour cela, nous présentons tout d’abord le filtrage et les grandes familles de filtrage,dont le filtrage collaboratif. La deuxième partie présente de façon détaillée ce typede filtrage et les algorithmes classiques qu’il utilise. Enfin la troisième partie permetde faire un tour d’horizon des systèmes les plus connus, et des fonctionnalitésperceptibles dans les systèmes existants sur la toile (web).

8.1.1.2. Fonctionnement des systèmes de filtrage

Habituellement, on considère qu’un système de recherche d’information a pourfonction « d’amener à l’utilisateur les documents qui vont lui permettre de satisfaireson besoin en information » [BEL 92]. Un système de filtrage d’information« achemine des documents qui se présentent vers des groupes de personnes, en sebasant sur leurs profils à long terme », et élaborés à partir de données d’apprentissage[CRO 93].

Le filtrage d’information est l’expression utilisée pour décrire une variété deprocessus se rapportant à la fourniture de l’information adéquate aux personnes quien ont besoin [BEL 92]. Le filtrage est souvent interprété comme l’éliminationde données indésirables sur un flux entrant, plutôt que la recherche de donnéesspécifiques sur ce flux. L’approche la plus répandue est basée sur le contenusémantique des documents. Elle trouve ses racines dans le monde de la recherched’information, et utilise plusieurs de ses principes ; les documents textuels sontproposés sur la base d’une comparaison de leur contenu et du profil de l’utilisateur.Ce profil est présenté sous forme d’un ensemble de termes et de pondérations,établis à partir de documents que l’utilisateur a jugés pertinents. Cette méthode estsimple, rapide et a fait ses preuves en recherche d’information classique [BAL 97].

Les applications de filtrage impliquent typiquement des flux de données entrantes[BEL 92], données émises par une source distante ou envoyées directement par

Page 3: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 243

d’autres sources. Le filtrage est basé sur des descriptions d’individus et de groupes,souvent appelées profils. De tels profils représentent généralement un ensemble dethèmes d’intérêts à long terme.

Dans la figure 8.1, le filtrage d’information commence avec des personnes (lesutilisateurs du système de filtrage d’information) qui ont des objectifs ou des désirs(exemple : tâche professionnelle, passe-temps, etc.) relativement stables, à long-terme ou périodiques. Des groupes, aussi bien que des personnes peuvent êtrecaractérisés par de tels buts. Ceci amène à des besoins réguliers d’information(exemple : être à jour sur un sujet) qui peuvent évoluer lentement au cours du tempsau fur et à mesure que les conditions, objectifs et connaissances changent. De telsintérêts engagent les utilisateurs dans un processus relativement passif de recherched’information. Ce processus est réalisé à travers la représentation des besoinsen information par des profils ou des requêtes destinés au système de filtraged’information.

Figure 8.1. Modèle général pour le filtrage d’information, adapté de [BEL 92]

D’un autre côté, les producteurs de documents, qui sont souvent des institutions,entreprennent de distribuer leurs produits dès qu’ils sont générés. Pour accomplircette tâche, on associe aux documents une représentation de leur contenu, qui estensuite comparée aux profils. Les documents sont utilisés et évalués en termes deréponse aux besoins exprimés. Cette évaluation peut mener à la modification desprofils et des domaines d’intérêt.

Page 4: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

244 Assistance intelligente à la RI

8.1.2. Filtrage d’information versus recherche d’information

Bien que proches dans un certain nombre de fonctionnalités, recherched’information et filtrage d’information s’opposent en un certain nombre de points :

– la recherche d’information est typiquement concernée par des usages singuliersdu système, avec une personne avec un objectif et une requête à la fois, alors que lefiltrage d’information est concerné par des usages répétitifs du système, par unepersonne ou des personnes avec des buts et des intérêts à long terme ;

– la recherche d’information reconnaît des problèmes inhérents à l’adéquationdes requêtes comme représentation des besoins en information. Le filtraged’information fait lui l’hypothèse que l’évolution des profils peut compenser cesproblèmes ;

– collecter et organiser les documents est une des fonctionnalités des systèmesde recherche d’information, distribuer des documents à des groupes ou à desindividus demeure la priorité fonctionnelle des systèmes de filtrage ;

– la recherche d’information permet la sélection de documents à partir d’unebase relativement classique. En contrepartie, le filtrage d’information sélectionne ouélimine des documents à partir d’un flux dynamique de données ;

– la recherche d’information permet l’interaction de l’utilisateur avec le documentdurant une session unique de recherche. De son côté, le filtrage d’informationautorise des changements à long terme à travers des séries de session de recherche.Cette comparaison est résumée dans le tableau 8.1.

Recherche d’information Filtrage basé sur le contenu

ApprocheTrouver l’informationrecherchée

Filtrer l’information non désirée

Livraison Corpus statique, sur demande Flux dynamique

Persistance Des besoins à court terme Des intérêts à long terme

Personnalisation Non personnalisé Profil d’utilisateur requis

Analysedu contenu

Utilise souvent des mots-clésDifférents et multiples dispositifsutilisés

Fonctionnalités

Non personnalisé

Non adaptatif

Non dynamique

A court terme

Personnalisé

S’adapte au changementdu profil de l’utilisateur

Filtre dynamiquement l’informationentrante

A long terme

Tableau 8.1. Recherche d’information et filtraged’information basés sur le contenu : comparaison

Page 5: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 245

8.1.3. Grandes familles de filtrage

Le filtrage d’information se décline selon plusieurs grandes familles :

– le filtrage basé sur le contenu (aussi appelé filtrage cognitif) : le choix desdocuments proposés est basé sur une comparaison des thèmes abordés dans lesdocuments par rapport aux thèmes intéressant l’utilisateur (voir figure 8.2) ;

– le filtrage collaboratif : le choix des documents proposés est basé sur les opinionsd’utilisateurs sur ces documents (voir figure 8.3) ;

– le filtrage hybride : combine les approches de ces deux familles.

Figure 8.2. Filtrage basé sur le contenu : la prédiction de l’opinion qu’un utilisateur aurad’un document donné, est calculée en rapprochant les thèmes énoncés par l’utilisateurcomme constituant son profil, et les thèmes extraits des documents par un processusd’indexation.

Figure 8.3. Filtrage collaboratif : la prédiction de l’opinion qu’un utilisateur 0 aura d’undocument donné, est calculée en rapprochant les évaluations passées de l’utilisateur desévaluations que d’autres utilisateurs de la communauté ont données par le passé sur lesmêmes documents.

Page 6: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

246 Assistance intelligente à la RI

8.1.3.1. Filtrage basé sur le contenu (ou filtrage cognitif)

Le filtrage basé sur le contenu peut être vu comme un système de recherched’information dont la fonction de correspondance entre une requête et un corpus dedocuments joue le rôle d’un filtre permanent entre un profil (sorte de requête à longterme et évolutive) et le flot de documents entrant (sorte de corpus évolutif). Deuxfonctionnalités centrales ressortent, pour un système de filtrage :

– la sélection des documents pertinents vis-à-vis du profil ;

– la mise à jour du profil en fonction du retour de pertinence fourni parl’utilisateur sur les documents qu’il a reçus ; la mise à jour se fait par intégration desthèmes abordés dans les documents jugés pertinents.

Ces systèmes présentent un certain nombre de limitations :

– tout d’abord, citons la difficulté d’indexation de documents multimédia. Lefiltrage basé sur le contenu s’appuie sur un profil qui décrit le besoin de l’utilisateurdu point de vue thématique, de façon analogue à une requête qui serait destinée à unsystème de recherche d’information. Ce profil peut prendre diverses formes, mais ilrepose toujours sur des termes qui seront comparés aux termes qui indexent ledocument. De ce fait, la difficulté d’indexer des documents, multimédia ou non, estun goulet d’étranglement pour cette approche ;

– l’incapacité à traiter d’autres critères de pertinence que les critères strictementthématiques pose également problème. Le filtrage des documents basé sur lecontenu ne permet pas d’intégrer d’autres facteurs de pertinence que le facteurthématique. Pourtant il existe de nombreux autres facteurs de pertinence comme parexemple l’adéquation entre le public visé par l’auteur et l’utilisateur, ou encore laqualité scientifique des faits présentés, la fiabilité de la source d’information, ledegré de précision des faits présentés, etc. ;

– enfin l’effet dit « entonnoir » restreint le champ de vision des utilisateurs. Eneffet, le profil évolue toujours dans le sens d’une expression du besoin de plus enplus spécifique, qui ne laisse pas de place à des documents pourtant proches maisdont la description thématique diffère fortement. Par exemple, lorsqu’un nouvel axede recherche surgit dans un domaine, avec de nouveaux termes pour décrire lesnouveaux concepts, ces termes n’apparaissent pas dans le profil, ce qui élimineautomatiquement les documents par filtrage ; l’utilisateur n’aura donc jamais l’occasiond’exprimer un retour de pertinence positif envers ce nouvel axe de recherche, àmoins d’en avoir connaissance par ailleurs et de modifier son profil manuellementen ajoutant les termes pertinents.

8.1.3.2. Filtrage collaboratif

Le paradigme du filtrage collaboratif apporte précisément une réponse à cesproblèmes, en s’appuyant sur la communauté des utilisateurs du système.

Page 7: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 247

Le principe est de filtrer le flot de documents entrant en fonction de l’opinionque d’autres utilisateurs de la communauté ont déjà portée sur les documents. Si undocument a été jugé intéressant par un utilisateur, il sera diffusé automatiquementaux utilisateurs qui ont eu des opinions similaires par le passé.

Les trois limitations des systèmes basés sur le contenu (difficulté d’indexation,incapacité à traiter d’autres critères, effet « entonnoir ») n’apparaissent pas dans cesnouveaux systèmes.

En réponse à la difficulté d’indexation, la sélection ne s’appuie plus sur lecontenu des documents, mais sur une sorte d’indexation parallèle qui traduit lesopinions que les utilisateurs ont émises sur les documents. La difficulté d’indexer lesdocuments selon leur contenu (premier problème) est ainsi contournée.

Par conséquent, cette « indexation parallèle » présente un autre avantage, celuide refléter non seulement les goûts des utilisateurs relativement aux thèmes, maisaussi d’autres facteurs de pertinence utiles aux utilisateurs. En effet, lorsqu’unutilisateur émet une opinion positive sur un document, il affirme non seulement quele document traite bien d’un sujet qui l’intéresse, mais aussi que ce document est debonne qualité, et qu’il lui convient à lui personnellement (public visé). Ainsi leproblème de l’incapacité à traiter d’autres critères est également résolu.

Enfin, l’effet « entonnoir » est lui aussi éliminé du fait que les documentsentrants ne sont pas filtrés en fonction du contenu. Pour qu’un utilisateur reçoive undocument, il suffit qu’un autre utilisateur de profil proche l’ait jugé intéressant, etcela quels que soient les termes qui indexent le contenu du document. L’utilisateurpeut alors ouvrir son profil sur un nouveau thème en donnant simplement un retourde pertinence positif sur ce document.

Bien entendu, le filtrage collaboratif présente lui aussi des limitations, que nousdétaillerons plus loin. Nous pouvons dès à présent indiquer que des approcheshybrides (collaboratif et basé sur le contenu) permettent de tirer profit des avantagesdes deux approches, en limitant les problèmes qui leur sont liés.

8.2. Filtrage collaboratif

8.2.1. Principes

Le filtrage collaboratif se base sur l’hypothèse que les gens à la recherched’information devraient pouvoir se servir de ce que d’autres ont déjà trouvé etévalué. Cette approche résout les problèmes de l’approche basée sur le contenusémantique ; il devient possible de traiter n’importe quelle forme de contenu et de

Page 8: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

248 Assistance intelligente à la RI

diffuser des ressources non nécessairement similaires à celles déjà reçues. Pour cefaire, pour chaque utilisateur d’un système de filtrage collaboratif, un ensemble deproches voisins est identifié, et la décision de proposer ou non un document à unutilisateur dépendra des appréciations des membres de son voisinage.

Le filtrage collaboratif emploie des méthodes statistiques pour faire desprévisions basées sur des configurations des intérêts des utilisateurs. Ces prévisionssont exploitées pour faire des propositions à un utilisateur individuel, en se fondantsur la corrélation entre son propre profil personnel et les profils d’autres utilisateursqui présentent des intérêts et goûts semblables. Pour le filtrage collaboratif, lesutilisateurs fournissent des évaluations des documents, sous forme de notes, pourconstituer leur profil. Ces estimations sont comparées à celles d’autres utilisateurs etdes similitudes sont mesurées. Des prévisions sont calculées comme moyennepondérée des avis d’autres utilisateurs avec des goûts soit semblables, soitcomplètement opposés.

Il n’y a donc pas d’analyse du sujet ou du contenu et un document n’est connuque par son identifiant. Les systèmes de filtrage d’information collaboratifsfonctionnent en impliquant des personnes dans le système, et nous pouvons espérerque les évaluations produites par des personnes satisfont globalement les utilisateursdu système. En effet, les lecteurs humains ne partagent pas les difficultés desordinateurs avec la synonymie, le polysémie, et le contexte en jugeant la pertinencedu texte [MIL 97]. Les systèmes de filtrage automatiques courants essayent detrouver des ressources d’intérêt pour leurs utilisateurs, souvent en employant unecertaine fonction de calcul de score pour évaluer les documents. Ils leur renvoientensuite les documents avec les scores les plus hauts. Des personnes peuvent sansgrand effort évaluer les documents qui sont importants pour d’autres, mais seraientdifficiles à détecter automatiquement. Les exemples de tels critères sont le styled’écriture, la lisibilité du document, ou la clarté et la force de son argumentation(imaginez la difficulté qu’un système de filtrage automatique aurait pour déterminerlaquelle, de deux recettes de cuisine, est la plus facile à suivre).

Une autre motivation pour le filtrage collaboratif [MAL 95] vient de lacomparaison de la richesse de l’environnement des objets réels et de la pauvretédans laquelle les utilisateurs des systèmes opèrent. Quand un utilisateur lit un fichierélectronique il n’a généralement aucune manière de savoir s’il est en train deconsulter la référence la plus communément utilisée ou s’il est la première personneà la lire. Le filtrage collaboratif fonctionne en partie en associant aux documentsnumériques l’histoire de leur utilisation. Les objets que nous employons dans la viequotidienne accumulent leur usage et leur usure comme partie normale de leurutilisation : les pages des livres deviennent froissées, des attaches plissées, et lesmarges tachetées avec des empreintes digitales. Les objets les plus utilisés sontgénéralement préférés. Un exemple sont les ouvrages de référence qui s’ouvrent en

Page 9: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 249

tombant sur un bureau sur le chapitre le plus intéressant. Donner à des utilisateursl’accès à l’histoire d’usage passé les laisse tirer profit des conseils subtiles que nousemployons généralement pour prendre des décisions de lecture ou de non lecturedans le monde réel. L’usage agit ainsi en tant qu’index à l’information appropriée àl’intérieur de l’objet.

8.2.2. Architecture générale

L’architecture générale d’un système de filtrage collaboratif s’articule autour dedeux fonctionnalités centrales : le calcul de la proximité entre les utilisateurs, et lecalcul de la prédiction de l’évaluation qu’un utilisateur fera d’un document. S’ajoutela fonctionnalité de mise à jour perpétuelle des profils d’utilisateurs, au fur et àmesure de la collecte de leurs évaluations.

Dans ce type de système, où l’utilisateur contribue de façon décisive au bonfonctionnement du système dans son ensemble, on ne peut négliger les fonctionnalitésinteractives du système. Les fonctionnalités indispensables sont les suivantes :

– une interface permettant d’évaluer un document ;

– une interface permettant de visualiser les documents reçus par filtrage.

D’autres fonctionnalités interactives peuvent exister, notamment celle permettantaux utilisateurs d’effectuer ce que l’on appelle du « filtrage actif » : le terme « filtrageactif » [MAL 95] traduit le fait que l’utilisateur décide, de sa propre initiative, d’envoyerdes documents à certains membres de la communauté. Cette possibilité peut s’avérertrès utile lors de l’amorçage du système, pour faire croître les chances derecoupement des profils d’utilisateurs. En effet, un utilisateur qui reçoit un documentenvoyé par un autre est amené à l’évaluer lui aussi ; à la suite de cette évaluation,son propre profil et celui de l’auteur du filtrage actif se recouperont nécessairement.

Figure 8.4. Architecture générale d’un système de filtrage collaboratif

Page 10: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

250 Assistance intelligente à la RI

8.2.3. Calcul de la prédiction pour un système de filtrage collaboratif

Breese et al. [BRE 98] proposent une classification intéressante des techniquesde filtrage collaboratif : les algorithmes basés « mémoire », et les algorithmes basés« modèle ». Delgado [DEL 00] y ajoute une nouvelle catégorie : les algorithmesd’apprentissage en ligne.

8.2.3.1. Algorithmes basés « mémoire »

Les algorithmes basés mémoire utilisent l’ensemble de la base de données desévaluations des utilisateurs pour faire les prédictions : les évaluations de l’utilisateuractif sont prédits à partir d’informations partielles concernant l’utilisateur actif, et unensemble de poids calculés à partir de la base de données des évaluations desutilisateurs.

Si Ii est l’ensemble des items évalués par l’utilisateur i, alors l’évaluationmoyenne pour l’utilisateur i peut être définie comme :

,1

∈= ∑

i

i i ji j I

v vI

L’évaluation prédit sur l’item j pour l’utilisateur actif a est une somme pondéréedes évaluations des autres utilisateurs :

, ,1

( , )( )=

= + −∑n

a j a i j ii

p v w a i v vκ

où n est le nombre d’utilisateurs dans la base de données qui ont un poids non nul, etest un facteur de normalisation tel que la somme des valeurs absolues des poids fait 1.Le poids w(a,i) est déterminé de façon variable, selon l’algorithme.

Les détails de calcul de ces poids donnent lieu à des algorithmes différents. Nousprésentons ici l’algorithme basé sur la corrélation, et l’algorithme basé sur lasimilarité de vecteurs.

Pour l’algorithme basé sur la corrélation (projet GroupLens [RES 94]), le poidsest calculé comme la corrélation entre les utilisateurs a et i, comme suit :

, ,

2 2, ,

( )( )

( , )( ) ( )

a j a i j ij

a j a i j ij j

v v v v

w a iv v v v

− −

=− −

∑ ∑

Page 11: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 251

où les sommes sur les j concernent les items pour lesquels à la fois i et a ont donnédes évaluations.

Pour l’algorithme basé sur la similarité des vecteurs, le poids est calculé commeun cosinus entre les vecteurs formés par les évaluations des utilisateurs, comme suit :

, ,

2 2, ,

( , )

a i

a j i j

j a k i kk I k I

v vw a i

v v∈ ∈

= ∑∑ ∑

où les termes du dénominateur servent à normaliser les évaluations pour que lesutilisateurs qui ont évalué plus d’items ne soient pas favorisés.

Des extensions à ces algorithmes existent, notamment celles proposées parBreese et al. [BRE 98] pour améliorer les performances de ces algorithmes (voirarticle 25 section 2.2).

8.2.3.2. Algorithmes basés « modèle »

Les algorithmes basés « modèle » utilisent la base de données des évaluationsdes utilisateurs pour estimer ou apprendre un modèle qui est alors utilisé pour lesprédictions.

Du point de vue probabiliste, la tâche de prédiction d’une évaluation peut êtrevue comme le calcul de la valeur espérée d’une évaluation, étant donné ce que l’onsait d’un utilisateur.

Supposons que les évaluations se fassent sur une échelle d’entiers de 0 à m.Alors la valeur prédite sera :

, , , ,0

( ) Pr( , )=

= = = ∈∑m

a j a j a j a k ai

p E v v i v k I i

où la probabilité exprimée est celle dont l’utilisateur actif fera l’évaluation particulièrei pour l’item j compte tenu des évaluations observées auparavant.

Nous présentons ici deux modèles probabilistes : le modèle à base de clusters, etle modèle à base de réseau bayésien.

Le modèle à base de clusters repose sur le principe que certains groupes ou typesd’utilisateurs capturent un ensemble commun de préférences et de goûts. Etantdonné un tel groupe, les préférences concernant les différents items (sous la formed’évaluations) sont indépendantes.

Page 12: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

252 Assistance intelligente à la RI

Du point de vue formel, on s’appuie sur un classifieur bayésien, où la probabilitédes évaluations est conditionnellement indépendante sachant l’appartenance à unevariable de classe C non observée comportant un ensemble de valeurs discrètesrelativement petit. Le modèle de probabilité qui met en relation les probabilitésjointes des classes et des évaluations, et un ensemble de distributions conditionnelleset marginales, est la formulation standard « naïve » de Bayes :

11

Pr( , ,..., ) Pr( ) Pr( )=

= = = =∏n

n ii

C c v v C c v C c

La partie gauche est la probabilité d’observer un individu d’un classe particulièreet un ensemble complet de valeurs d’évaluations. Dans ce contexte, on peut calculerdirectement les expressions de probabilité requises pour l’équation précédentedonnant la valeur prédite.

Les paramètres du modèle, les probabilités d’appartenance à une classe Pr(C = c),et les probabilités conditionnelles des évaluations sachant la classe sont estimées àpartir d’un ensemble d’exemples d’évaluations d’utilisateurs, appelé la base desévaluations.

Le modèle à base de réseau bayésien associe un nœud à chaque item du domaine.Les états pour chaque nœud correspondent aux valeurs d’évaluation possibles pourchaque item. On inclut également un état correspondant à l’absence d’évaluationpour les domaines où il n’y a pas d’interprétation naturelle pour les donnéesmanquantes.

On peut alors appliquer un algorithme d’apprentissage de réseau bayésien surla base d’exemples, où les évaluations manquantes sont associées à une valeur« pas d’évaluation ». L’algorithme d’apprentissage cherche sur plusieurs structuresde modèle en termes de dépendances pour chaque item. Dans le réseau résultantde l’apprentissage, chaque item a un ensemble d’items « parent » qui sont lesmeilleurs prédicteurs de ses évaluations. Chaque table de probabilité conditionnelleest représentée par un arbre de décision qui code les probabilités conditionnellespour ce nœud.

8.2.3.3. Algorithmes d’apprentissage en ligne

Le principe de cette approche proposée par Delgado est de voir le problèmecomme un ensemble d’agents de prédiction indépendants, un pour chaque utilisateurdu système. Chaque agent est confronté à un ensemble d’essais avec une prédictionà faire à chaque étape. L’hypothèse sous-jacente à l’apprentissage est que pourchaque agent, les agents qui l’entourent ont un comportement similaire, neutre, ouopposé à la fonction que cet agent cherche à atteindre. Du point de vue opérationnel,

Page 13: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 253

l’algorithme associé à chaque agent est une combinaison d’un algorithme deprédiction « basé-mémoire » (voir plus haut) et d’un algorithme de « vote en ligne àmajorité pondérée ».

Les algorithmes d’apprentissage en ligne reposent sur le principe d’apprentissageà partir de l’avis d’experts. Le modèle d’apprentissage repose sur un processuscontinu et interactif, où un ensemble d’algorithmes, considérés comme des « expertsprédicteurs », sont associés à des poids qui mesure leur confiance envers la tâche deprédiction qu’ils réalisent. A chaque étape, une instance valide est présentée auxalgorithmes, et chaque prédicteur donne son verdict (une valeur binaire, 0 ou 1). Lecalcule de majorité pondérée donne :

{ }0 1,

( )arg max∈

∑ &

i iRR R R

a x w

où { }0 ( ) 0;= = ∀ ≤&

iR a x i n , { }1 ( ) 1;= = ∀ ≤&

iR a x i n , et ( )&

ia x est le résultat de la

prédiction du i-ième algorithme sur les n algorithmes qui votent sur &

x . Après cela,le bon résultat est montré à l’algorithme, qui met alors à jour les poids wi qu’ilassocie aux autres algorithmes. Pour cela, il applique une stratégie qui fait décroîtreles poids des algorithmes qui se sont trompés, et qui augmente ou laisse inchangésles poids de ceux qui ont donné la bonne réponse.

On peut alors définir une prédiction binaire pour l’utilisateur actif a sur l’item j :

{ }0 1

, , , )

,

(arg maxa j a i i jRR R R

p w v∈

= ∑

où { }0 , 0;= = ∀ ≤i jR v i n , { }1 , 1;= = ∀ ≤i jR v i n . Les poids ,a iw ne sont pas basés

sur les données présentes dans la base de données, mais initialisés comme desnombres positifs ou nuls mis à jour à chaque essai. Delgado donne également lesalgorithmes pour des évaluations et des prédictions continues dans l’intervalle [ ]0,1 .

8.2.4. Difficultés

Le filtrage collaboratif se base sur l’hypothèse que les gens à la recherched’information devraient pouvoir se servir de ce que d’autres ont déjà trouvé etévalué. Cette approche résout les problèmes de l’approche basée sur le contenusémantique ; il devient possible de traiter n’importe quelle forme de contenu et dediffuser des ressources non nécessairement similaires à celles déjà reçues.

Page 14: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

254 Assistance intelligente à la RI

Toutefois, des problèmes subsistent pour les nouveaux documents ; ils nepeuvent être diffusés que si un minimum d’informations les concernant est collecté àpartir de l’avis de l’un des utilisateurs. D’un autre côté, les personnes ayant desgoûts peu fréquents risquent de ne pas recevoir de propositions. Ces deux problèmessont en réalité liés à la taille et à la composition de la population d’utilisateurs.

Ces systèmes souffrent aussi tous du problème de démarrage à froid. Lesnouveaux utilisateurs commencent avec un profil vide et doivent le constituer àpartir de zéro. Même avec un profil de démarrage, une période d’apprentissage esttoujours nécessaire avant que le profil ne reflète concrètement les préférences del’utilisateur. Pendant cette période le système ne peut pas filtrer efficacement pour lecompte de l’utilisateur.

8.3. Quelques systèmes de filtrage

Afin de présenter des systèmes de filtrage, nous avons souhaité le faire en deuxgrandes parties : tout d’abord une présentation de sept systèmes de filtrage, puisnous ferons une synthèse de huit systèmes plus récents accessibles via Internet.

8.3.1. Tapestry

Le concept du filtrage collaboratif [MAL 95] a été lancé avec le projet Tapestryà Xerox Parc. La gestion des e-mails est sa motivation première [GOL 92].

L’implication de l’utilisateur n’est pas limitée à fournir de simples jugementsbinaires d’acceptation ou de rejet [RES 94]. Il donne la possibilité de faire desannotations en texte libre ou des appréciations dans le style « J’ai bien aimé » ou« Je déteste », ainsi les utilisateurs peuvent transmettre des jugements sur la valeurdes documents qu’ils lisent. Les autres utilisateurs peuvent alors opérer desrecherches parmi ces documents non seulement sur la base de leur contenu, maiségalement sur la base des jugements qu’ont portés d’autres utilisateurs à leur sujet.Tapestry a aussi introduit la prise en compte de la confiance dans la source del’information. Le système a souffert de deux problèmes [MAL 95]. Le premier est lataille de sa base d’utilisateurs. Puisque Tapestry est basée sur un systèmecommercial de base de données, il ne peut être fourni librement. De plus, il n’a pasété conçue pour l’usage d’un grand nombre de personnes géographiquementdistribuées. Ces deux facteurs se combinent pour limiter la population d’utilisateurspotentiels aux chercheurs à Xerox Parc. Cependant, cette population ne semblait pasassez grande pour constituer une masse critique d’utilisateurs et la grande majoritédes documents passaient sans annotations. Ainsi le système souffrait d’un manqued’informations pour pouvoir fonctionner normalement.

Page 15: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 255

Le deuxième problème avec Tapestry est le moyen par lequel les utilisateursinteragissent avec les filtres. Une interface commune exigeait des utilisateursd’indiquer des requêtes en un langage dérivé de SQL. Cette forme d’interface a étéun obstacle à l’exploration de nouveaux secteurs et a rendu difficile la visualisationde l’information disponible.

Il n’en demeure pas moins que Tapestry fut un des premiers systèmes de filtrageexistants.

8.3.2. GroupLens

Plusieurs systèmes se sont intéressés aux articles newsgroups du Usenet, et le butdes premiers était d’évaluer la masse critique d’utilisateurs que les technologiesdisponibles permettaient de supporter, en permettant une large dispersiongéographique [MAL 95]. Un des résultats les plus importants de ces travaux étaitd’apporter la preuve que les lecteurs adhèrent au concept et évaluent des documents,bien qu’aucune sorte de récompense ou d’incitation matérielle n’ait été offerte auxutilisateurs de ces systèmes.

GroupLens [MIL 97], système expérimental de l’université du Minnesota, estl’un des plus célèbres et solides dans ce domaine. Il est semblable dans son esprit àTapestry : les lecteurs sont appelés à noter les articles qu’ils lisent sur une échellenumérique de cinq niveaux. Le système trouve alors des corrélations entre lesdifférents utilisateurs RI d’estimations et identifie des groupes d’utilisateurs dont lesintérêts sont semblables, et ensuite il emploie ces estimations pour prédire l’intérêtque porteront les lecteurs à chaque article.

GroupLens prolonge Tapestry de deux manières [RES 94] : d’abord, Tapestry estconçu pour partager des évaluations dans un même lieu. Avec GroupLens, lesestimations sont réparties en plusieurs emplacements et son architecture est ouverteà la création de nouveaux clients de newsgroups et serveurs d’estimation quiemploieraient l’évaluation d’une manière différente. En second lieu, Tapestry nesupporte pas de requêtes globales. Les serveurs d’estimation qui ont été mis en placepour GroupLens prennent en considération les estimations globales de plusieursexperts, basées sur la corrélation de leurs estimations passées. Un lecteur n’a pasbesoin de voir à l’avance les évaluations à employer et n’a pas besoin de savoir à quiles évaluations sont destinées réellement. Dans GroupLens, les estimations fourniessous un pseudonyme sont aussi utiles que celles qui sont signées.

Pour son évaluation, la corrélation entre l’évaluation faite par le système etl’évaluation individuelle d’un utilisateur après la lecture d’un article, a été utilisée.

Page 16: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

256 Assistance intelligente à la RI

GroupLens a aussi permis de démontrer [PAL 97] que la consultation desestimations des autres utilisateurs ne constituait pas un risque de biais pourl’évaluation. Et contrairement à ce que l’on pourrait penser, il n’y avait pas decorrélation entre la taille et la durée de consultation d’un article, ainsi lacombinaison du temps et des estimations a donné de bons résultats.

En raison du grand nombre de différents documents, ce système dépend beaucoupdu nombre de lecteurs et de leurs évaluations sur les mêmes documents [MAL 95].De plus, il souffre d’un problème de démarrage à froid [MIL 97]. Beaucoupd’utilisateurs ont abandonné son utilisation ; ils avaient un grand nombre dedocuments à noter avant de commencer à recevoir des recommandations et donc àbénéficier du système (problème de motivation). En outre, les premiers utilisateursne recevaient pratiquement que des documents qu’ils avaient déjà lus et notés, enraison de la lenteur de l’apprentissage.

8.3.3. Phoaks

Phoaks (people helping one another know stuff) est un système expérimentalde reconnaissance, de correspondance et de redistribution automatiques derecommandations sur les ressources web, extraits des messages des newsgroups deUsenet [TER 87]. Il effectue une recherche contextuelle de mentions d’URL dansces messages, qui dans 23 % des cas mentionnent des ressources web (sous formed’URL), et 30 % de ces mentions sont des recommandations.

Phoaks compte toute mention comme recommandation si elle passe un certainnombre de tests : (i) un message ne doit pas être posté à plusieurs groupes en mêmetemps, il devient alors trop général et ne peut être assez proche thématiquement del’ensemble des groupes ; (ii) si l’URL fait partie de la signature de l’expéditeur, iln’est pas considéré comme recommandation, c’est une forme d’auto-promotion ;(iii) si l’URL apparaît dans une partie entre « quotes » du message (inclus dans lapartie message d’origine dans une réponse à un message), elle n’est pas retenue.Enfin, (iv) si le contexte textuel de l’URL indique qu’il s’agit d’une recommandationet qu’elle n’est pas l’objet d’une publicité, l’URL est retenu et classé.

Phoaks se différencie des autres systèmes par la distinction qu’il fait entre lesrôles de fournisseur et consommateur ; il prend ainsi en considération le fait queseule une minorité d’utilisateurs prend la peine d’évaluer les ressources et de fairepartager leur opinions avec les autres. Aussi, la réutilisation des conversations enligne existantes comme source des recommandations ne demande aucune interventionde la part des recommandeurs.

Page 17: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 257

Avec d’autres règles plus complexes, Phoaks sélectionne et catégorise lesressources. Le nombre de recommandeurs distincts d’une même ressource a étéretenu comme mesure de la qualité d’une recommandation. Une étude a montré quela multiconfirmation est une source de recommandation pertinente. En effet, uneressource a d’autant plus de chance de paraître dans une foire aux questions (FAQ),bases maintenues par des experts humains) qu’elle est recommandée par différentespersonnes.

Son efficacité est évaluée par la mesure de la précision (pourcentage desressources que les règles classifient dans la bonne catégorie) et du rappel (lepourcentage de ressources qui appartiennent à une catégorie et que la règle classeréellement dans cette catégorie). Des tests ont montré que Phoaks offre un rappel de88 % et une précision de 87 %.

Comme continuation, les auteurs de Phoaks projettent d’améliorer le calcul de lacrédibilité des recommandeurs et la recherche d’affinités entre ceux qui offrent etceux qui sont à la quête des recommandations dans un domaine particulier. Il tententaussi de combiner une recherche d’information par mots-clés avec le filtragecollaboratif, dans une « recherche classée par communauté ». Le principe est detraiter des requêtes en utilisant un moteur de recherche par mots-clés classique, et defiltrer les résultats des requêtes à travers la base de Phoaks. Les résultats sont alorsclassés par groupe de newsgroups qui les mentionnent. Ceci permet de réduirel’ambiguïté des requêtes et de classer les résultats en fonction de leurs fréquences demention.

8.3.4. Siteseer

Siteseer [RUC 97] est également un système de recommandation de pages webqui utilise les bookmarks personnels et leur organisation en répertoires pour prédireet recommander des pages pertinentes. Il utilise chaque bookmark d’utilisateurcomme une déclaration implicite d’intérêt pour le contenu, et le classement de cesbookmarks comme une indication de cohérence sémantique ou un regroupementpertinent entre des sujets.

Au cours du temps, Siteseer apprend les préférences et les catégories à traverslesquelles les utilisateurs perçoivent le monde, et en même temps, apprend pourchaque page web, quelles sont les différentes communautés ou groupes d’affinitésqui s’y intéressent. Siteseer génère alors des recommandations organisées etcontextualisées en les délivrant dans leur répertoire d’origine.

Les bookmarks offrent un mécanisme de collecte d’information sur lespréférences, directement géré par l’utilisateur, et qui ne requiert pas de comportement

Page 18: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

258 Assistance intelligente à la RI

additionnel pour la tâche d’information du système de recommandation. A ladifférence d’un clic de souris inutile pour évaluer un document, car il peut êtreaccidentel, et qui engage rarement un grand effort ou investissement personnel, lesbookmarks sont le résultat d’un acte très intentionnel qui prend, surtout s’ils sontplacés dans des répertoires, un certain effort de réflexion.

Siteseer consulte les bookmarks de chaque utilisateur et mesure le degré dechevauchement (URL communs par exemple) de chaque répertoire avec lesrépertoires d’autres utilisateurs, pour donner un poids additionnel aux URL ; lechevauchement de contenu permet de déterminer les similarités entre répertoires etde former dynamiquement des communautés virtuelles d’intérêt, particulière pourchaque utilisateur et spécifique à chaque catégorie d’intérêt. En calculant l’adhésionrelative d’une communauté à chaque répertoire, et en évitant de former un ensembledéfinitif de clusters, Siteseer n’impose pas de catégorisation rigide.

Le système ne tire aucune sémantique ni du contenu des URL ni du nom durépertoire. Il utilise l’URL simplement d’une ressource comme identifiant unique etignore complètement le titre.

Toutefois les bookmarks ont des limitations spécifiques ; les utilisateursmarquent moins que la moitié des sites/pages qu’ils trouvent intéressants, souventparce qu’un site est facilement accessible à travers d’autres chemins, comme uneautre page web ou un moteur de recherche. De plus, les utilisateurs ont tendance àmarquer des sites/pages pour différentes raisons, allant du véritable intérêt au simplebesoin de revisiter ou de retourner. Enfin, les bookmarks peuvent exister ou non.Aussi, il n’y a pas de bookmarks partiels qui permettent d’indiquer un intérêtmarginal, et il n’y a pas de moyen de montrer un manque d’intérêt ou sujet, qu’unsystème explicite de feed-back peut demander.

Les principales limites de Siteseer proviennent de son approche purementcollaborative. Il est incapable de servir les premiers utilisateurs ou un utilisateurcréant une nouvelle catégorie.

8.3.5. Fab

Fab [BAL 87] est un système hybride qui essaye de combiner les deuxapproches : l’approche basée sur le contenu sémantique et l’approche collaborativedu filtrage pour en récupérer les avantages et en réduire les inconvénients. La notionde profil basée sur l’analyse du contenu y est maintenue et les profils y sontsystématiquement comparés pour identifier les similarités entre utilisateurs. Unutilisateur reçoit un document soit parce qu’il correspond à son profil soit parce qu’ila été apprécié par un autre utilisateur ayant un profil ressemblant.

Page 19: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 259

Le processus de recommandation peut être répartie en deux phases : une phasede collecte de ressources pour constituer une base ou un index et une phase desélection de ressources de cette base pour des utilisateurs particuliers. La phase decollecte peut être triviale dans le cas général mais pose un vrai problème dans le casdu web, pour le concepteur du système. Dans Fab, cette phase consiste à rassemblerdes pages pertinentes pour un nombre réduit de sujets, et qui sont regroupéesautomatiquement suivant les domaines d’intérêt des utilisateurs. Ces pages sontensuite diffusées à un large nombre d’utilisateurs dans la phase de sélection. Unsujet peut intéresser plusieurs personnes et une personne peut être intéressée parplusieurs sujets.

Pour l’implémentation, des agents sont utilisés ; les pages retrouvées par l’agentde collecte sont envoyées à un routeur central qui se charge de les transférer auxutilisateurs dont les profils correspondent, à partir d’un certain seuil. D’autresfonctionnalités sont assurées par les agents personnels de chaque utilisateur ; lespages déjà consultées sont éliminées, et sur les pages présentées, ils assurent qu’il ya au plus une page d’un même site.

Une fois que l’utilisateur a envoyé une requête, reçu et consulté desrecommandations, il lui est demandé de fournir une note de 0 à 7. Ces notes serventd’une part à mettre à jour les profils personnels et à informer l’agent de collection.De plus, toute page très bien notée est automatiquement passée aux utilisateursestimés les plus proches.

La construction de profils représentatifs est une condition importante pour lesuccès du système. Ils permettent à la composante basée sur le contenu sémantiqued’assurer des recommandations appropriées, et à la composante collaborative defournir les utilisateurs ayant des profils proches.

La population des agents de collecte s’adapte à la population d’utilisateurs, etnon à un utilisateur particulier. Pour aider ce processus, les agents de collecte« impopulaires », dont les pages ne sont pas visualisées par un grand nombred’utilisateurs ou ont peu de succès (faibles scores) sont constamment détruits et lesmeilleurs profils dupliqués pour les remplacer. Ainsi, la spécialisation des agents decollecte n’a pas à être fixée d’avance, mais peut être déterminée dynamiquement etmodifiée au cours du temps.

Plusieurs autres types d’agents de collecte sont employés. Des agents derecherche exécutent une recherche sur le web, pour trouver des pages approchant aumieux les profils existants. Les agents d’indexation construisent des requêtes à poseraux différents moteurs de recherche commerciaux sur le web, qui ont déjà réaliséune indexation exhaustive. D’autres agents sont employés à des fins comparatives :ils peuvent proposer des pages sélectionnées aléatoirement (random), ou retrouvées

Page 20: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

260 Assistance intelligente à la RI

dans les index « sites du jour », ou tenter de servir un utilisateur moyen, dont leprofil est la moyenne de l’ensemble des profils des utilisateurs. Les agents decollecte permettent aussi d’identifier les communautés d’intérêt émergentes, offrantla possibilité d’établir des liens et des interactions entre des gens culturellementproches.

Fab est un exemple-type de la combinaison des approches basées sur le contenusémantique et collaborative dans les systèmes de recommandation.

8.3.6. Referralweb

De nombreuses recherches ont montré que les réseaux de collaborateurs, decollègues et d’amis sont parmi les canaux les plus efficaces de diffusion del’information et de l’expertise, dans les entreprises et les organisations. De ce fait,les réseaux sociaux sont au moins aussi importants que la structure organisationnelleofficielle pour des tâches de choix, de résolution de problèmes.

Une des raisons du succès des réseaux sociaux est la limite à la quantitéd’information qu’une personne voudrait ou pourrait rendre publique ; un expert dansun domaine particulier est incapable d’étaler toutes ses connaissances sur un sujet, etne voudrait pas réécrire des données déjà publiées à chaque fois que des personneslui demanderaient de le faire. La recherche d’une information dans ce cas se ramèneà reconstituer le réseau social entre l’expert et une chaîne de contacts et deréférences personnelles, du chercheur à l’expert. Cette chaîne de références remplitdeux fonctions : elle fournit à l’expert une raison pour accepter de répondre audemandeur, en explicitant leur relation (ayant un collaborateur en commun) et ellefournit au demandeur un critère pour évaluer la crédibilité de l’expert.

Referralweb [KAU 87] se présente comme un système interactif pour lareconstruction, visualisation et la recherche de réseaux sociaux sur le web. Unereconstruction manuelle de ces réseaux est certes possible mais risque d’êtrefrustrante et coûteuse en termes de temps.

Un réseau social est modélisé par un graphe où les nœuds représentent despersonnes et les arcs une relation directe entre deux personnes. Il y a plusieurssources pour déterminer ces relations ; les utilisateurs peuvent être appelés àintroduire la liste de leurs collègues proches, ou encore, on peut analyser les entêtesdes mails. Cette dernière solution n’est pas sans poser des problèmes de confidentialitéet de sécurité évidents. Pour Referralweb, les données sont récupérées sur le web. Ilutilise la co-occurrence de noms de personnes dans des fenêtres de proximité, àpartir des home pages, des listes des coauteurs dans des publications et références àdes papiers, les échanges d’enregistrements personnels dans les archives des

Page 21: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 261

newsgroups et l’organisation des organigrammes. La construction du réseau estincrémentale. Quand un utilisateur s’abonne pour la première fois à Referralweb, unmoteur de recherche classique est utilisé pour retrouver les documents où unemention de son nom est faite. Les noms des autres personnes sont alors extraits deces pages. Le même processus est repris récursivement pour chaque nom. Le réseauest ensuite utilisé pour guider l’utilisateur dans la recherche de personnes ou dedocuments en réponse à sa requête. Il peut tout simplement demander de retrouver lechemin qui le relie à une autre personne. Il peut aussi, pour rechercher un expert,spécifier le sujet et le statut social (« lequel de mes collègues ou des collèguesde mes collègues est expert en chimie du carbone ? » ou « quels sont lesdocuments traitant de la chimie du carbone et écrits par des personnes proches deMartin Dupont ? »).

Il est important de signaler que Referralweb ne remplace pas les moteurs derecherche génériques comme AltaVista, mais sert à augmenter l’efficacité et lafocalisation des sessions de recherche. Il permet aussi une appropriation des résultatspar l’utilisateur, en ramenant des documents écrits par des personnes qui lui sontproches. D’un autre côté Referralweb cherche à découvrir des réseaux sociauxexistants plutôt que d’offrir les outils pour créer de nouvelles communautés, et à ladifférence des autres systèmes de recommandation qui favorisent l’anonymat,Referralweb est basé sur la connaissance des interlocuteurs et de la crédibilité qu’onleur porte. D’autre part, Referralweb ne demande pas à ses utilisateurs de saisir uneliste de leurs collaborateurs, mais se base sur des ressources disponibles au publicsur le web.

Referralweb présente une nouvelle manière d’aborder la recherche d’information,en valorisant les relations personnelles qui peuvent exister entre les producteurs dedocuments et les chercheurs d’information.

8.3.7. Le système de Maltz et Ehrlich

Ce système [MAL 95] est basé sur l’hypothèse que les utilisateurs recherchantl’information devraient pouvoir se servir de ce que d’autres ont déjà trouvé etévalué.

Une pratique courante chez les utilisateurs est d’utiliser l’e-mail pour envoyerdes pointeurs sur des documents intéressants à des collègues ou des amis. Cependant,cette action requiert un effort relativement important de la part de l’expéditeur, et ilarrive souvent que l’utilisateur n’envoie pas la référence à toutes les personnesqu’elle pourrait intéresser, ou qu’il oublie simplement de le faire.

Page 22: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

262 Assistance intelligente à la RI

Le système de Maltz et Ehrlich est présenté comme un substitut au mail dans cessituations. Il est intégré à un système de recherche d’information et permet à sesutilisateurs d’adresser des pointeurs aux personnes qu’ils jugent intéressées, sansavoir à interrompre leur session de recherche d’information. D’un autre côté,l’ensemble de ces échanges est stocké pour constituer une base de références.

D’autres systèmes d’importances variables sont disponibles et deviennent de plusen plus populaires (Myyahoo, Amazon.com, Miningco.com, etc.). Ils offrent à leursutilisateurs des possibilités de personnalisation d’interface, toutefois limitées, ou leursuggèrent suivant leurs centres d’intérêts constatés (explicitement ou implicitement)des ressources qui pourraient les intéresser.

8.3.8. Comparaison de quelques systèmes plus récents sous l’angle de l’interactionavec l’utilisateur

Parmi les systèmes plus récents accessibles via le web, voici une sélection dontl’intérêt réside dans les fonctionnalités interactives proposées :

– http://www.cuisinenet.com : site de recettes de cuisines ;

– http://comment.imdb.com : site pour les amateurs de films et de documentsmultimédias ;

– http://www.mybeer.org : site pour les amateurs de bière ;

– http://www.amazon.com : site de vente de livres et disques ;

– http://www.moviecritic.com : site pour les amateurs de films ;

– http://vguide.sepia.com : site pour les amateurs de films ;

– http://www.topouaibe.com : système général pour évaluer les pages web ;

– http://cmc.dsv.sv.se/select : système général pour évaluer les pages web ;

– http://movielens.umn.edu : site pour les amateurs de films ;

– http://www.trabble.com : site d’évaluation de restaurants ;

– http://abyss.eurocom.fr :1111/AMW/login.html : musée virtuel de tableaux.

L’objectif de cette comparaison est d’observer tous ces systèmes sous l’angle desfonctionnalités perceptibles pour les utilisateurs. Ainsi chacune de ces fonctionnalitéssera présentée de façon globale et synthétique :

– l’utilisateur (son identification, son profil) ;

– perception de la communauté (statistiques, classement) ;

– l’évaluation des documents (ergonomie, contrôle de l’évaluation).

Page 23: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 263

8.3.8.1. L’utilisateur

8.3.8.1.1. Son identification

Parmi les informations à fournir par l’utilisateur lors de l’enregistrement, ontrouve les choses suivantes.

IMD

B

Myb

eer

Am

azon

Mov

iecr

itic

Sep

ia

Top

ouai

be

Sel

ect

Mov

iele

ns

Tra

bble

Web

mus

eum

E-mail x x x x x x x x

Login et mot de passe x x x x x x x x

Nom, prénom x x

Age, sexe, profession, code postal x x

Tableau 8.2. Informations à fournir lors de l’enregistrement

Notons que Topouaibe autorise une évaluation parfaitement anonyme.

Voici quelques méthodes pour constituer un profil significatif.

Mov

iecr

itic

Mov

iele

ns

Sep

ia

Am

azon

Evaluation d’un nombre minimal de produits x x

Goûts de l’utilisateur x x

Tableau 8.3. Méthodes pour constituer un profil significatif

Parmi les modalités de connexion au système, on trouve celles du tableau 8.4.

Pour limiter les utilisations biaisées ou malintentionnées, seul le système IMDBexige la connaissance du véritable email de l’utilisateur.

Page 24: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

264 Assistance intelligente à la RI

Mov

iecr

itic

Mov

iele

ns

Web

mus

eum

Myb

eer

Sep

ia

Am

azon

Tra

bble

Sel

ect

Dès l’entrée sur le site x x x x x

Lors de l’évaluation (pasd’identification à l’arrivée sur le site)

x

A chaque évaluation x x

Tableau 8.4. Modalités de connexion au système

8.3.8.1.2. Son profil

Concernant la visualisation du profil, les systèmes classent les œuvres évaluées.

Web

mus

eum

Mov

iele

ns

Mov

iecr

itic

Sep

ia

Sel

ect

Am

azon

Tra

bble

Par préférence ou défiance x x

Par ordre alphabétique x x

Par ordre chronologique d’évaluation x x x

Tableau 8.5. Visualisation du profil

Concernant les possibilités offertes à l’utilisateur pour raffiner ou faire évoluervolontairement son profil, tous les sites proposent l’évaluation. Au-delà de cettefonctionnalité indispensable, Moviecritic propose à l’utilisateur d’évaluer les filmsqu’il a déjà vus, et dans Webmuseum, l’utilisateur peut demander d’évaluer 10 à 50tableaux.

8.3.8.2. La perception de la communauté

8.3.8.2.1. Les statistiques

Certains systèmes présentent pour chaque document, des statistiques sur leurperception et leur historique dans la communauté.

Page 25: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 265

Mov

iecr

itic

Am

azon

Top

ouai

be

IMD

B

Moyenne des évaluations x x x

Prédiction du système x

Nombre de votants x

Répartition des évaluations dans le temps x

Répartition des évaluations par valeur, par catégorie d’utilisateur(sexe, âge, etc.)

x

Tableau 8.6. Visualisation du profil

8.3.8.2.2. Le classement

Certains systèmes offrent des vues globales sur la collection de documents dansla communauté. Cela se concrétise dans Webmuseum, par un hit-parade des 4œuvres les plus ou les moins appréciées.

8.3.8.2.3. Les groupes

On distingue trois sortes de groupes :– tous les autres ;

– ceux qui évaluent de la même façon ;

– ceux qui se sont volontairement regroupés (possibilité offerte par Movielens).

8.3.8.3. L’évaluation

8.3.8.3.1. L’ergonomie

Parmi les métaphores pour l’évaluation des documents, on trouve celles dutableau 8.7.

Métaphores

Am

azon

Sel

ect

Sep

ia

Mov

iecr

itic

Les étoiles x x x

Le dé x

Le thermomètre x

Tableau 8.7. Métaphores d’évaluation

Page 26: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

266 Assistance intelligente à la RI

Parmi les dispositifs interactifs d’évaluation, on trouve :

Dispositifs interactifsd’évaluation

Web

mus

eum

Am

azon

Myb

eer

Sel

ect

Tra

bble

Mov

iele

ns

Listes de choix x x x x

Menus déroulants x x

Tableau 8.8. Dispositifs interactifs d’évaluation

Les échelles d’évaluation sont toutes discrètes : il faut choisir une valeur soitnumérique, soit symbolique dans un ensemble prédéfini (5 valeurs en général).Topouaibe propose un système d’évaluation complètement différent.

En général, un seul critère d’évaluation est possible : le point de vue global del’utilisateur sur le document. Seul Cuisinenet propose une évaluation plus détaillée.

Lors de l’évaluation, le document à évaluer peut être présent. C’est le cas dans laplupart des systèmes. Notons la difficulté que peuvent avoir les utilisateursd’Amazon pour trouver ledit document dans le foisonnement d’informations. Dansle cas de Select, il n’est pas présent : le système propose une liste de documents àévaluer faisant ainsi appel à la mémoire de l’utilisateur.

8.3.8.3.2. Le contrôle de la démarche de l’évaluation

L’authenticité de l’évaluation est contrôlée soit en limitant sa fréquence, soit parl’identification du votant (rendue formelle par la validité de son adresse e-mail).

La démarche d’évaluation de la part de l’utilisateur peut être :

– volontaire : de sa propre initiative, l’utilisateur va chercher à évaluer le documentqui lui est présenté. C’est le cas de la plupart des systèmes.

– obligatoire : le système oblige l’utilisateur à évaluer des documents pour pouvoircontinuer à utiliser le système. Seul Webmuseum force cette évaluation.

Lorsque l’évaluation est associée à l’utilisateur, l’évaluation est unique pourchaque produit (avec éventuellement la possibilité de modifier). Au contraireTopouaibe permet d’évaluer un document jusqu’à une fois par heure, en se basantsur la session puisque l’évaluation est anonyme.

Page 27: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 267

8.4. Complémentarités entre approches collaboratives et par le contenu

L’approche collaborative apporte des réponses aux problèmes rencontrés dans lefiltrage basé sur le contenu. C’est en cela que ces deux approches se complètentavantageusement. Le tableau 8.9 synthétise les éléments de comparaison de ces deuxapproches.

Filtrage basé sur le contenusémantique

Filtrage collaboratif

Amorçage (démarrage del’exploitation du système)

Le filtrage peut commenceraprès l’établissement duprofil

Exige une base de donnéessubstantielle et plusieursévaluations de l’utilisateuravant d’être utilisable

Qualité de l’information(lisibilité, fiabilité,nouveauté, etc.)

La qualité de l’informationn’est pas connue

La qualité de l’informationest connue via desévaluations d’utilisateurs

Contexte de l’information(domaine d’intérêt)

L’identification du domainese fait généralement par laco-occurrence des termesdans chaque document

L’identification du domainese fait par la différence desdomaines d’intérêt desutilisateurs

Effet « entonnoir »

Le système ne suggère quedes documents dont le thèmea déjà été évoquéexplicitement

Le système peut suggérerdes documents sans rapportexplicite avec les thèmesdéjà évoqués

Tableau 8.9. Comparaison de approche collaborative et de l’approche par le contenu

8.5. Conclusions

8.5.1. Difficulté d’évaluation

L’évaluation des systèmes de filtrage collaboratif présente des difficultés, dontcertaines s’apparentent aux difficultés d’évaluation des systèmes de recherched’information, et d’autres sont propres au filtrage collaboratif.

Evaluer un système de recherche d’information pose problème dans la mesure oùil est difficile d’y intégrer l’utilisateur, alors que c’est lui qui en dernier ressort,décide de la qualité du service rendu par le système. Ces difficultés se retrouventbien évidemment avec les systèmes de filtrage collaboratif, mais ils sont d’autantplus aigus que le service rendu par ce type de système doit s’évaluer au cours dutemps, tout au long de l’exploitation du système. En effet, pour l’utilisateur, lerapport entre le coût (son effort d’évaluation) et le bénéfice (les documents reçus

Page 28: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

268 Assistance intelligente à la RI

automatiquement) varie au cours du temps. En particulier, au début de l’utilisationdu système, ce rapport lui est souvent défavorable, ce qui peut le découragerd’utiliser le système pour atteindre une phase plus favorable. La défection desutilisateurs pénalise alors l’ensemble des performances du système, qui ne fonctionnebien qu’avec une participation active d’un nombre suffisant d’utilisateurs.

Ainsi la question de l’évaluation des systèmes de filtrage collaboratif constitueun sujet de recherche de première importance pour le succès de ce paradigmed’accès à l’information.

8.5.2. Systèmes de filtrage et systèmes de recommandation

Le filtrage collaboratif permet de résoudre un certain nombre de problèmes liéesà la prise en compte des données multimédias ou des caractéristiques contextuellesdes documents. Mais d’autres canaux traditionnels de recherche d’information,jusque-là informels, méritent d’être étudiés. Les avis et conseils des collègues et desamis permettent souvent d’améliorer la qualité de la recherche personnelle. Aussi,bon nombre d’indications vers des ressources intéressantes sont échangés soitdirectement soit au travers du e-mail : des personnes qui trouvent des documentsintéressants envoient des pointeurs sur ces documents à leurs collègues. Un pointeurcontient généralement un lien hypertexte au document source et souvent uneinformation contextuelle pour aider le destinataire à déterminer son intérêt et sapertinence avant d’y accéder.

Plusieurs systèmes ont été élaborés pour supporter ce genre de communication.Ils ont été regroupés sous l’appellation « systèmes de recommandation ». Lestechniques qui y sont employées ont la caractéristique d’être hybrides et présententl’avantage de ne pas être cloisonnées en recherche d’information ou filtraged’information. Elles impliquent des domaines de compétences très variés allant dumonde de l’interface homme-machine aux sciences cognitives ou sociales.

Les systèmes de recommandation ne se limitent pas à gérer des références àdes documents, mais supportent des domaines larges : cinéma, cuisine, assistancejuridique, technologies de pointes, etc. Nous en avons décrit deux dans ce chapitre :les systèmes Phoaks et Siteseer.

8.6. Bibliographie

[BAL 97] BALABANOVIC M., SHOHAM Y., « Fab: content-based, collaborative recommendation »,Communications of the ACM, vol. 40, n° 3, p. 66-72, mars 1997.

[BEL 92] BELKIN N.J., CROFT W.B., « Information filtering and information retrieval: two sidesof the same coin? », Communications of the ACM, vol. 35, n° 12, p. 29-38, décembre 1992.

Page 29: Chapitre 8 - imagmrim.imag.fr/publications/2003/CB001/berrut03b.pdf · Chapitre 8 Filtrage collaboratif 8.1. Introduction 8.1.1. Motivation et application des systèmes de filtrage

Filtrage collaboratif 269

[BRE 98] BREESE J.S., HECKERMAN D., KADIE C., « Empirical analysis of predictivealgorithms for collaborative filtering », Proceedings of the Fourteenth AnnualConference on Uncertainty in Artificial Intelligence, p. 43-52, juillet 1998.

[CRO 93] CROFT W.B., « Knowledge-based and Statistical approaches to Text Retrieval »,IEEE EXPERT, vol. 8, n° 2, p. 8-12, avril 1993.

[DEL 00] DELGADO J., Agent-based Recommender Systems and Information Filtering onthe Internet, PhD. Thesis, Nagoya Institute of Technology, mars 2000.

[GOL 92] GOLDBERG D., NICHOLS D., OKI B.M., TERRY D., « Using collaborative filteringto weave an information Tapestry », Communications of the ACM, vol. 35, n° 12, p. 61-70, décembre 1992.

[KAU 97] KAUTZ H., SELMAN B., SHAH M., « Referral Web: Combining Social Networks andCollaborative Filtering », Communications of the ACM, p. 63-65, vol. 40, n° 3, mars 1997.

[MAL 95] M ALTZ D., EHRLICH K., « Pointing the way: active collaborative filtering »,Proceedings of CHI’95, p. 7-11, mai 1995.

[MIL 97] M ILLER D., MALTZ J.L., HERLOCKER L.R, GORDAN A., RIEDL J.A., KONSTAN B.N.,« GroupLens: applying collaborative filtering to Usenet News », Communications of theACM, vol. 40, n° 3, p. 77-87, mars 1997.

[PAL 97] PALME, J., « Notes from the 5th DELOS Workshop 1997 in Budapest: Filteringand Collaborative Filtering », http://www.iihe.ac.be/scimitar/J1297/delos-filtering-notes-nov97.htm, novembre 1997.

[RES 94] RESNICK P., IACOVOU P., SUCHAK M., BERGSTROM P., RIEDL J., « GroupLens: AnOpen Architecture for Collaborative Filtering of Netnews », Proceedings of ACMConference on Computer Supported Cooperative Work, p. 175-186, 1994.

[RUC 97] RUCKER J., POLANCO M.J., « Siteseer: personalized navigation for the Web »,Communications of the ACM, vol. 40, n° 3, p. 73-75, mars 1997.

[TER 97] TERVEEN L., HILL W., AMENTO B., MCDONALD D., CRETER J., « Phoaks: a systemfor sharing recommendations », Communications of the ACM, vol. 40, n° 3, p. 59-62,mars 1997.