13
Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda 1 , Rokia Missaoui 2 , Petko Valtchev 3 1 Département d’informatique et de recherche opérationnelle, Université de Montréal 2 Département d’informatique et d’ingénierie, Université du Québec en Outaouais 2 Département d’informatique, Université du Québec À Montréal Canada(QC) [email protected], [email protected], [email protected] RÉSUMÉ. Les moteurs de recherche sur le Web sont souvent utilisés pour la recherche d’in- formation. Ces moteurs implémentent différentes stratégies pour déterminer la pertinence des pages Web. Ces dernières sont classées en se basant principalement sur des critères d’évalua- tion automatisés, ce qui crée un vide entre la pertinence effective d’un contenu et la pertinence calculée. Afin de réduire cet écart, nous introduisons dans cet article un cadre d’application de moteurs de recherche où la pertinence d’une page Web est calculée à partir des évaluations des internautes du contenu de la page (texte, image, audio, vidéo,...). Pour illustrer l’exploitation du cadre proposé, nous avons développé le moteur de recherche expérimental SocialSeeker 1 . Ce moteur se base sur les données d’opinion pour le classement des pages Web. ABSTRACT. Web Search Engines aim to assist users in finding relevant information. To measure the relevance of a Web page, different strategies are used. However, page ranking is mainly conducted by relying on automatic assessment criteria. Hence, a gap is created between the effective relevance of a content and the computed one. To reduce this gap, the present paper introduces a framework for feedback-based research en- gine development. To illustrate the effectiveness and use of the proposed framework, we devel- oped a web search engine called SocialSeeker. MOTS-CLÉS : Données d’opinion, rétroaction, moteur de recherche, communautés Web, filtrage social du contenu, SocialSeeker. KEYWORDS: Feedback, search engines, web communities, social-based filtering, SocialSeeker. 1. http ://socialseeker.no-ip.org/ Atelier FODOP’08. Volume 1 - n INFORSID-08/2008, pages 37 à 50

Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Vers la recherche d’informations sur le Webbasée sur des données d’opinion

Mehdi Adda1, Rokia Missaoui2, Petko Valtchev3

1Département d’informatique et de recherche opérationnelle, Université de Montréal2Département d’informatique et d’ingénierie, Université du Québec en Outaouais2Département d’informatique, Université du Québec À MontréalCanada(QC)

[email protected], [email protected], [email protected]

RÉSUMÉ. Les moteurs de recherche sur le Web sont souvent utilisés pour la recherche d’in-formation. Ces moteurs implémentent différentes stratégies pour déterminer la pertinence despages Web. Ces dernières sont classées en se basant principalement sur des critères d’évalua-tion automatisés, ce qui crée un vide entre la pertinence effective d’un contenu et la pertinencecalculée. Afin de réduire cet écart, nous introduisons dans cet article un cadre d’application demoteurs de recherche où la pertinence d’une page Web est calculée à partir des évaluations desinternautes du contenu de la page (texte, image, audio, vidéo,...). Pour illustrer l’exploitationdu cadre proposé, nous avons développé le moteur de recherche expérimental SocialSeeker1.Ce moteur se base sur les données d’opinion pour le classement des pages Web.

ABSTRACT. Web Search Engines aim to assist users in finding relevant information. To measurethe relevance of a Web page, different strategies are used. However, page ranking is mainlyconducted by relying on automatic assessment criteria. Hence, a gap is created between theeffective relevance of a content and the computed one.To reduce this gap, the present paper introduces a framework for feedback-based research en-gine development. To illustrate the effectiveness and use of the proposed framework, we devel-oped a web search engine called SocialSeeker.

MOTS-CLÉS : Données d’opinion, rétroaction, moteur de recherche, communautés Web, filtragesocial du contenu, SocialSeeker.

KEYWORDS: Feedback, search engines, web communities, social-based filtering, SocialSeeker.

1. http ://socialseeker.no-ip.org/

Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008, pages 37 à 50

Page 2: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

38 Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008

1. Introduction

La tâche principale d’un moteur de recherche est d’offrir à ses utilisateurs la pos-sibilité de formuler des requêtes et de leur retourner le contenu qui correspond à cesrequêtes [ADA 97]. Les moteurs de recherche scrutent périodiquement, voire de ma-nière continue, l’Internet pour (ré)indexer des pages Web [SUN 05]. Les stratégiesutilisées pour classer ces pages diffèrent d’un moteur à l’autre.

1.1. Stratégies de classement des pages Web

Les grands acteurs sur le marché des moteurs de recherche, tels que Google 1, Mi-crosoft 2, et Yahoo 3, gardent secrets les détails des algorithmes de classement qu’ilsutilisent. Cependant, quelques éléments qui jouent un rôle important dans ce classe-ment sont connus [DIN 03].En premier lieu, les moteurs de recherche prennent en compte aussi bien le titre d’unepage Web que les mots contenus dans son adresse URL (Universal Resource Locator).Deuxièmement, les moteurs de recherche utilisent des programmes, appelés "bots" ou"spiders", pour scruter la structure des pages Web. Parmi les informations recherchéesfigurent les balises "meta-tag" qui sont invisibles aux utilisateurs, et qui renseignentsur le contenu de la page en question. Troisièmement, la fréquence et le contexted’apparition de mots dans le contenu d’une page sont pris en compte. Cependant, ceséléments peuvent être facilement manipulés par les Webmasters, ce qui aura une inci-dence sur le classement des pages. Pour réduire cette influence, des facteurs moinssusceptibles d’être manipulés sont intégrés. Il s’agit principalement de prendre enconsidération le trafic généré par une page, et le nombre de sites qui pointent verscette page.

Même avec ces extensions, les moteurs de recherche classiques restent entière-ment dépendants d’un classement automatique d’une page Web qui peut ne pas cor-respondre à la pertinence effective du contenu de la page en question. Une solutionà ce problème serait de classer les pages Web suivant les évaluations apportées aucontenu sur des sites spécialisés. Concrètement, cette pertinence peut être mesurée àpartir des évaluations que les utilisateurs apportent au contenu. Dans cet article, l’ex-pression données d’opinion est utilisée pour faire référence à ces évaluations.

1. www.google.com2. www.microsoft.com3. www.yahoo.com

Page 3: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Données d’opinion et recherche sur le Web 39

1.2. Données d’opinion et recherche sue le Web

Avec l’émergence du Web2.0 [LEW 06], de plus en plus d’applications, telles queDzone 4, Reddit 5, Digg 6, Slashdot 7, sont développées dans le but de partager ducontenu et récolter les évaluations des internautes [BOR 03, HOO 03]. Ces applica-tions peuvent être perçues comme étant : (i) des entrepôts de liens vers des ressourcesWeb, et (ii) une interface d’évaluation et de filtrage communautaire des ressources.Les évaluations des utilisateurs pour un contenu peuvent alors être exploitées pourdéterminer la pertinence "sociale/communautaire" d’une ressource [BOJ 08].

Actuellement, il existe quelques moteurs de recherche qui tentent d’intégrer lesdonnées d’opinion pour déterminer la pertinence d’une page Web (ex. Mahalo 8, etDipiti 9). Ces moteurs, permettent aux utilisateurs d’évaluer les résultats proposés, etle système exploite ces informations pour (ré)évaluer le classement des sites. Une deslimites de ces systèmes est la difficulté à intégrer les données d’opinion déjà dispo-nibles sur le Web. Par conséquent, ils nécessitent la création d’une base de donnéesd’opinion propre au système.

Au lieu de créer une nouvelle base de données d’opinion, nous proposons d’exploi-ter directement les évaluations déjà disponibles sur le Web pour calculer la pertinencedes pages. Aussi, le cadre d’application que nous proposons se compose principale-ment d’un langage de description des données et des classes d’opinions ainsi que d’unensemble d’opérations qui s’appliquent à ces éléments (cf. la section 2).L’une des difficultés rencontrées est liée à la diversité des formes d’expression et dereprésentation des opinions. À titre d’exemple, il existe des sites qui acceptent desvotes binaires (apprécie, n’apprécie pas), d’autres implémentent des systèmes de votesmulti-échelle (ex. niveau d’appréciation sur une échelle de 3, 5 ou 10 niveaux).Afin de résoudre ce problème et de pouvoir comparer les valeurs de pertinence obte-nues de différents sites, nous utilisons une formule de calcul de pertinence qui norma-lise les valeurs de pertinence. (cf. section 2.4).

Pour illustrer la faisabilité du cadre proposé, nous avons implémenté un prototypeappelé SocialSeeker. Ce système recherche les pages Web ayant les évaluations lesplus favorables par rapport à un sujet donné (cf. section 3). Des remarques concluanteset des perspectives sur l’amélioration du cadre proposé et de SocialSeeker sont pré-sentées dans la section 4.

4. www.dzone.com5. www.reddit.com6. ww.digg.com7. www.slashdot.org8. www.mahalo.com9. www.dipiti.com

Page 4: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

40 Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008

2. Modèle d’intégration des données d’opinion dans la recherche sur le Web

La figure 1 représente une vue générale de la logique d’intégration des données derétroaction (feedback) dans un moteur de recherche. Dans cette figure, nous présentonsles réseaux communautaires (ou réseaux sociaux) comme un exemple d’application departage de références et de ressources. Ces applications, qu’on désignera dans le restede cet article par entrepôts d’opinions, récoltent explicitement et/ou implicitement larétroaction des utilisateurs [JOA 07, SHA 03]. Or, les critères et fonctionnalités of-fertes par chaque application peuvent différer. Par conséquent, il est nécessaire d’ana-lyser les formes de rétroaction fournies afin de construire un modèle adéquat de calculde la pertinence.

Réseaucommunautaire réseau

communautaire

réseau communautaire

réseau communautaire

Ressources accessibles via le Web

Ajouter un feedback à uneressource

(commentaire, vote, …)

Analyser les formesde rétroaction

Internautes

Calculer la pertinence d’une

ressource

Figure 1. Présentation du processus d’intégration des données d’opinion dans la re-cherche sur le Web.

2.1. Scénario type

Afin d’illustrer le fonctionnement d’un moteur de recherche qui se base sur lesdonnées de rétroaction, nous présentons dans la figure 2 un scénario type. En pre-mier lieu, l’utilisateur formule une requête. Le système se base sur les mots clés saisispar l’utilisateur pour interroger les différents entrepôts d’opinions disponibles. Parla suite, chaque entrepôt retourne une collection de références à des ressources Web(ex. liens, tags, résumés, ...) ainsi que les données d’opinion associées à chaque res-source. Le système récupère les résultats et calcule une valeur de pertinence normali-sée pour chaque élément suivant les données d’opinion qui lui sont associées. Aprèsclassement, les références ayant les plus grandes valeurs de pertinence sont retour-nées. L’utilisateur peut apporter une (ré)évaluation qui sera directement acheminée àl’entrepôt (resp. aux entrepôts) concerné(s).

Page 5: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Données d’opinion et recherche sur le Web 41

L’utilisateur envoie une requête au système

Le système interroge les entrepôts d’opinionsdisponibles

Chaque entrepôt retourne les résultats qui correspondent à la requête

Le système mesure la pertinence de chaque élémentLe système mesure la pertinence de chaque élémentretourné en se basant sur les données de

rétroaction

Le système renvoie à l’utilisateur les éléments les plus pertinents

L’utilisateur consulte et peut apporter son opinion sur un ou plusieurs éléments qui lui sont

retournés

Figure 2. Scénario type d’une recherche basée sur les données d’opinion.

2.2. Langage de description des données d’opinion

Dans cette section, nous commençons par la formalisation de la description desdonnées d’opinion. Ensuite, nous proposons un langage qui s’inspire de la logiquedes descriptions [BAA 03] pour modéliser les classes de ces données. Afin de pou-voir distinguer les aspects purement structuraux des données et la signification de cesstructures, le langage est muni d’un ensemble de constructeurs syntaxiques auxquelsest associée une sémantique précise. Alors que la partie syntaxique définit la structuredes classes des données, la partie sémantique leur associe un sens.

2.2.1. Description des données d’opinion

Les données que nous manipulons sont des enregistrements, appelés instancesd’opinion (cf. définition 2.4), qui sont composés de références à des ressources Web(voir les définitions 2.1 et 2.2) et des données de rétroaction associées à ces res-sources (voir la section 2.2.2). Dans la configuration la plus simple, une référencepeut consister en une simple URL, et les données de rétroaction limitées à un effectifqui représente le nombre de personnes ayant apprécié le contenu de la page se trou-vant à l’URL en question. Une configuration plus complexe consiste à considérer uneréférence comme étant composée d’un ensemble d’éléments s’ajoutant à l’URL, telsqu’un résumé, des tags, le nom de l’auteur, la date de publication etc., et des donnéesde rétroaction qui incluent des commentaires, des votes positifs, des votes négatifs,etc. L’ensemble de rétroaction associé à une ressource est représenté par des couples(k, v), où k fait référence à un type de rétroaction (voir la section 2.2.2), et v la va-

Page 6: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

42 Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008

Symbole/Relation Notion représentéeR Ensemble de ressources ri accessibles via le Web

URLS(ri) Ensemble d’éléments indiquant la (les) localisation(s)de la ressource ri dans le Web

$(ri) Contenu de la ressource ri

χ(ri) Informations qui décrivent/complètent une ressource ri

Ψ Ensemble des données de rétroaction associées aux éléments de R

Tableau 1. Notions de base.

leur associée. Un couple (k, v) est appelé objet de rétroaction et l’univers des couples(k, v) est dénoté par Ψ. Le tableau 1 présente quelques notions de base liées à notreétude.

Une ressource accessible via le Web est représentée par les éléments suivants : uneadresse Web qui permet d’atteindre la ressource, le contenu de la ressource, et éven-tuellement un ensemble d’informations qui décrivent la ressource (voir la définition2.1). L’ensemble de toutes les ressources Web est dénoté par Uς .

Définition 2.1. Ressource Web

Une ressource Web ri ∈ R se définit par ς = 〈url, c, I〉, où :

– url ∈ URLS(ri) ;– c = $(ri) ;– I ⊆ χ(ri).

En se basant sur la notion de ressource Web, une référence à une ressource Webest composée d’un ensemble d’informations qui permet de représenter une partie oula totalité du contenu de la ressource en question (voir la définition 2.2).

Définition 2.2. Référence à une ressource Web

Soient ri ∈ R, et ρ une relation de l’ensemble des ressources R vers un ensemblede triplets. L’ensemble des références à la ressource ri est représenté par ρ(ri) ={e|e = 〈url, c, I〉}, tel que :

– e.url = ri.url ;– e.c ⊆ ri.c ;– e.I ⊆ ri.I.

Proposition 2.3. Si ri ∈ R, alors ri ∈ ρ(ri), c’est-à-dire une ressource Web peut êtreaussi considérée comme étant une référence à elle-même.

Dans notre configuration, une instance d’opinion se compose de deux parties. Unepartie pour identifier une ressource, et l’autre partie pour représenter les données de

Page 7: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Données d’opinion et recherche sur le Web 43

rétroaction associées à cette ressource. De manière formelle, une instance d’opinionse définit par ce qui suit.

Définition 2.4. instance d’opinion

Une instance d’opinion d’une ressource Web ri est une paire o = (ς, θ), où ς estune référence à ri, et θ est une liste de données de rétroaction portant sur ri. Autrementdit, nous avons :

– ς ∈ ρ(ri) ;– θ ⊆ Ψ.

Pour des raisons de concision, un enregistrement de données de rétroaction d’uneinstance d’opinion o = (ς, θ) qui se trouve à la position i dans θ sera désigné paro.θ[i], et la taille de θ sera désignée par |o.θ|. De plus, l’univers de toutes les instancesd’opinion sera représenté par UO.

2.2.2. Langage de description des classes de rétroaction

Syntaxe :

Une classe de rétroaction représente une catégorie d’objets de rétroaction de mêmetype (voir la définition ci-dessous).

Définition 2.5. Syntaxe d’une classe de rétroaction

Une classe de rétroaction c, dont l’univers est dénoté par UΨ, est définie par lequadruplet (T,D,Cst, OptimV al) où T représente un type de rétroaction, D le do-maine de définition de la classe, Cst un ensemble de contraintes sur cette classe derétroaction, et OptimV al est une valeur optimale pour cette classe.

À titre d’exemple, le quadruplet (V otePositif, Entiers, {≥ 0,≤ 10}, 10) estune classe de rétroaction qui représente la catégorie des votes positifs. Chaque voteest un entier qui est supérieur ou égal à 0 et inférieur ou égal à 10. La valeur optimalede cette classe est fixée à 10.

Remarque 2.6. Dans le cadre de cet article, nous considérons les restrictions sui-vantes :

1) Le domaine de définition de la classe de rétroaction c ∈ UΨ (c.D) est numé-rique ;

2) La valeur optimale de c ∈ UΨ (c.OptimV al) est soit la valeur minimale soit lavaleur maximale qui satisfait toutes les contraintes c.Cst dans l’intervalle c.D.

Sémantique :

Une classe de rétroaction est interprétée par un ensemble d’objets de rétroaction.L’interprétation se base sur deux éléments : (i) le domaine d’interprétation qui estconstitué de tous les objets de rétroaction, et (ii) la fonction d’interprétation qui associe

Page 8: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

44 Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008

à chaque classe un ensemble d’éléments du domaine d’interprétation. De plus, unobjet de rétroaction est lié à une classe par la relation d’instanciation qui est définieci-dessous.

Définition 2.7. Relation d’instanciation

Soit c ∈ UΨ et d ∈ Ψ. On dit que d est instance de c, noté d l c, si et seulementsi :

– d.k = c.T ;– d.v ∈ c.D ;– ∀t ∈ c.Cst, t(d.v) = vrai, c’est-à-dire que d.v satisfait la contrainte t.

Par exemple, l’objet (V otePositif, 3) est une instance de la classe de rétroactiondéfinie par (V otePositif, Entiers, {≥ 0,≤ 10}, 10). Par contre, l’objet de rétro-action (V otePositif, 15) n’est pas instance de cette même classe, car la contrainte"≤ 10" n’est pas satisfaite.

Remarque 2.8. Pour désigner la classe d’une instance d’opinion o, la notation [o]cest utilisée.

Subsomption de classes de rétroaction :

La subsomption de classes de rétroaction est un ordre partiel qui permet d’ordonnerun ensemble de classes en hiérarchies. Intuitivement, deux classes de rétroaction sontliées par la relation de subsomption si l’une d’elles se manifeste dans l’autre de ma-nière identique ou avec un domaine de définition plus spécifique et avec un ensemblede contraintes couvrant un domaine plus large. La formalisation de cette relation estdonnée dans la définition 2.9 ci-dessous.

Définition 2.9. Subsomption de classes de rétroaction

Soient c1 et c2 deux classes de UΨ, on dit que c2 subsume c1, noté c1 v c2, si etseulement si :

1) c1.T = c2.T ;2) c1.OptimV al ≤ c2.OptimV al ;3) ((

⋂csti∈c1.Cst |csti|D)∩ c1.D) ⊆ ((

⋂cstj∈c2.Cst |cstj |D)∩ c2.D), où |cstj |D

est la restriction de D par la contrainte cstj .

À titre d’exemple, si c1 = (V otePositif, [0..10], {}, 10), c2 = (V otePositif, Entiers, {≥1,≤ 5}, 10), alors c2 v c1.

2.3. Entrepôt d’opinions

Dans notre modèle de représentation du domaine, un entrepôt d’opinions est définipar un ensemble de classes de rétroaction et un ensemble d’instances d’opinion tel quedécrit ci-après.

Page 9: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Données d’opinion et recherche sur le Web 45

Définition 2.10. Entrepôt d’opinions

Soient UΨ et UO les univers respectifs des classes de rétroaction et des instancesd’opinion. Un entrepôt ei de l’ensemble des entrepôts, désigné par E , est un couple(sc, so) où :

– sc ⊆ UΨ ;– so ⊆ UO ;– ∀oi ∈ so,∃cj ∈ sc tel que oi l cj .

Pour savoir si un entrepôt est plus général qu’un autre entrepôt, nous introdui-sons la relation de subsomption d’entrepôts. De même, nous définirons deux instancesd’opinion particulières qui seront associées à chaque entrepôt. Il s’agit du sommet etdu fond d’un entrepôt.

2.3.1. Subsomption d’entrepôts d’opinions

La relation de subsomption d’entrepôts d’opinions est un ordre partiel qui permetd’organiser un ensemble d’entrepôts suivant leurs modèles de rétroaction. Cette rela-tion se réduit à l’inclusion ensembliste des classes de rétroaction. Formellement, nousavons ce qui suit.

Définition 2.11. Subsomption d’entrepôts

Soient e1 et e2 deux éléments de l’ensemble des entrepôts E , on dit que e1 est plusspécifique que e2, ou encore e1 est subsumé par e2, noté e1 v e2, si et seulement sie1.sc ⊆ e2.sc.

2.3.2. Sommet et fond d’un entrepôt

Le sommet d’un entrepôt est une instance d’opinion à laquelle sont associées lesvaleurs optimales (OptimV al) des classes correspondantes. Elle est définie commesuit.

Définition 2.12. Sommet d’un entrepôt d’opinions

Soient e un élément de E et o ∈ UO, l’instance o est dite sommet de e, noté e, si etseulement si :

1) ∀i ∈ e.sc : ∃j ∈ o.θ tel que [j]c = i ;2) ∀j ∈ o.θ : ∃i ∈ e.C tel que [j]c = i ;3) ∀j ∈ o.θ : j.v = [j]c.OptimV al ;

De la même manière, le fond d’un entrepôt est une instance d’opinion à laquellesont associées les valeurs qui sont duales aux valeurs optimales des classes de l’entre-pôt.

Définition 2.13. Fond d’un entrepôt d’opinions

Page 10: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

46 Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008

Soient e un élément de E et o ∈ UO, l’instance o est dite fond de e, noté e, si etseulement si :

1) ∀i ∈ e.sc : ∃j ∈ o.θ tel que [j]c = i ;2) ∀j ∈ o.θ : ∃i ∈ e.C tel que [j]c = i ;3) ∀j ∈ o.θ : j.v = {Max([j]c.D ∪ (

⋂csti∈([j]c.Cst) |csti|D)),Min([j]c.D ∪

(⋂

csti∈([j]c.Cst) |csti|D))} − [j]c.OptimV al ;

2.3.3. Distance entre deux instances d’opinion

Pour mesurer la distance entre deux instances d’opinion dans un entrepôt donné,nous utilisons la formule de Minkowski d’ordre p [VAR 06] donnée ci-dessous. L’ordrep représente le nombre de classes de rétroaction que comporte chaque entrepôt.

Définition 2.14. Distance entre deux instances d’opinion

Soient e ∈ E et o1, o2 deux objets d’opinions de l’entrepôt e (o1 ∈ e.so et o2 ∈e.so ). La distance entre o1 et o2, notée de(o1, o2), est comme suit :

de(o1, o2) = |e.sc|

√ ∑i∈[1..|o1.θ|]

(o1.θ[i].v − o2.θ[i].v)|e.sc|

2.4. Mesure de la pertinence d’une instance d’opinion

La pertinence d’une instance d’opinion o de l’entrepôt e donnée par Pe(o), est ladistance qui sépare o du fond de e. C’est-à-dire Pe(o) = de(o, e)

Les valeurs retournées par Pe ne sont pas normalisées. Or, pour pouvoir classerdeux objets appartenant à des entrepôts différents, nous avons besoin d’une mesurenormalisée. Pour cela, nous proposons la fonction Pe qui calcule une valeur de perti-nence normalisée dans l’intervalle [0..1]. La fonction Pe est définie comme suit :

Définition 2.15. Pertinence normalisée

Soient e ∈ E , o ∈ e, et x = Pe(o). La pertinence normalisée de o dans e estdonnée par Pe(x) tel que Pe est définie de UO vers [0..1] comme suit :

Pe(o) =

{0, siPe(e) = 0;Pe(o)|Pe(e)| , sinon.

Il est à remarquer que la pertinence maximale d’une instance d’opinion est atteintelorsque tous les objets de rétroaction qui lui sont associés ont des valeurs égales auxvaleurs optimales des classes de rétroaction correspondantes.

Maintenant que la fonction Pe permet de calculer des valeurs de pertinence nor-malisées, les ressources décrites par les instances d’opinion de différents entrepôtspeuvent être comparées. Les ressources sont ainsi classées par ordre décroissant desvaleurs de Pe et les k premiers éléments sont renvoyés à l’utilisateur.

Page 11: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Données d’opinion et recherche sur le Web 47

3. Implémentation d’un prototype

SocialSeeker est le nom du moteur de recherche prototype que nous avons im-plémenté. L’objectif premier de son développement est de montrer la faisabilité del’approche que nous avons proposée. Ce moteur a été implémenté en utilisant Rails2.0210, un cadre pour le développement d’applications Web qui se base sur le para-digme Modèle-Vue-Contrôleur (MVC) [GAM 95]. Ainsi, le code est principalementécrit en utilisant Ruby, un langage de programmation dynamique, et HTML/CSS pourla programmation des interfaces. Le moteur est déployé en phase de tests sur un ser-veur d’applications Thin 11 et Nginx 12 en tant que serveur frontal. Actuellement, So-cialSeeker exploite deux entrepôts d’opinion : Dzone et Reddit. Alors que le premierest réservé aux données d’opinion du secteur des technologies de l’information, lecontenu du deuxième n’est pas limité à une discipline particulière. Pour scruter cesapplications Web, nous avons utilisé la librairie hpricot 13 écrite en Ruby. La figure 3représente une capture d’écran des résultats de recherche par mots clés.

Figure 3. Résultats d’une requête avec SocialSeeker.

10. www.rubyonrails.org11. http ://code.macournoyer.com/thin/12. http ://wiki.codemongers.com/13. http ://code.whytheluckystiff.net/hpricot/

Page 12: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

48 Atelier FODOP’08. Volume 1 - n◦ INFORSID-08/2008

4. Conclusion et perspectives

Dans cet article, nous avons proposé un cadre d’application pour l’intégration desdonnées d’opinion dans les moteurs de recherche. Il est principalement composé d’unlangage de description des données et d’un ensemble d’opérations sur les éléments dece langage. Ce cadre tient compte de l’hétérogénéité des données et permet de compa-rer des données d’opinion en provenance de différentes sources par l’utilisation d’unemesure normalisée pour le calcul de la pertinence. Cette dernière prend en considéra-tion les évaluations positives et les évaluations négatives des internautes.

Le modèle proposé est ensuite utilisé pour la développement de SocialSeeker, unprototype de moteur de recherche qui exploite les données d’opinion disponibles surle Web pour le classement des ressources.

Actuellement, la mesure de la pertinence fait intervenir seulement les donnéesd’opinion de type numérique. Une extension possible sera d’intégrer les donnéesd’opinion textuelles (résumés, tags, ...) dans une formule globale de calcul de la perti-nence. De plus, dans SocialSeeker, la base des entrepôts d’opinion est créée manuel-lement. Pour rendre ce moteur plus flexible, nous envisageons de rendre disponibleune API pour donner la possibilité aux entrepôts de s’ajouter à la base du moteur demanière transparente.

Pour pouvoir valider l’approche proposée, SocialSeeker sera étendu pour passerdu mode preuve de concept au mode production. Dans cette nouvelle version, Social-Seeker offrira aux utilisateurs la possibilité d’effectuer des recherches en parallèle, àla fois en se basant sur les données d’opinion et en interrogeant des moteurs de re-cherche classiques tels que Google ou Yahoo. Les utilisateurs vont pouvoir voter pourle moteur dont les résultats sont les plus pertinents. En analysant ces données, l’apporteffectif de SocialSeeker pourra être mesuré.

5. Bibliographie

[ADA 97] ADAH S., BUFI C., TEMTANAPAT Y., « Integrated Search Engine », KDEX ’97 :Proceedings of the 1997 IEEE Knowledge and Data Engineering Exchange Workshop, ,1997, p. 140-147.

[BAA 03] BAADER F., CALVANESE D., MCGUINNESS D., NARDI D., PATEL-SCHNEIDER

P., « The Description Logic Handbook : Theory, Implementation and Applications », Cam-bridge University Press, , 2003, page 574.

[BOJ 08] BOJRS U., BRESLIN J. G., FINN A., DECKER S., « Using the Semantic Web forlinking and reusing data across Web 2.0 communities », Web Semant., vol. 6, no 1, 2008,p. 21-28, Elsevier Science Publishers B. V.

[BOR 03] BORGATTI S.-P., CROSS R., « A Relational View of Information Seeking and Lear-ning in Social Networks », Manage. Sci., vol. 49, no 4, 2003, p. 432-445, INFORMS.

[DIN 03] DING C., CHI C.-H., « A Generalized Site Ranking Model for Web IR », , 2003,p. 584-587, IEEE Computer Society.

Page 13: Vers la recherche d’informations sur le Web basée sur des ... · Vers la recherche d’informations sur le Web basée sur des données d’opinion Mehdi Adda1, Rokia Missaoui2,

Données d’opinion et recherche sur le Web 49

[GAM 95] GAMMA E., HELM R., JOHNSON R., VLISSIDES J., Design Patterns, Addison-Wesley Professional, January 1995.

[HOO 03] HOOFF B., ELVING W., MEEUWSEN J., DUMOULIN C., « Knowledge sharing inknowledge communities », , 2003, p. 119-141, Kluwer, B.V.

[JOA 07] JOACHIMS T., GRANKA L., PAN B., HEMBROOKE H., RADLINSKI F., GAY G.,« Evaluating the accuracy of implicit feedback from clicks and query reformulations inWeb search », ACM Trans. Inf. Syst., vol. 25, no 2, 2007, page 7, ACM Press.

[LEW 06] LEWIS D., « What is web 2.0 ? », Crossroads, vol. 13, no 1, 2006, p. 3-3, ACM.

[SHA 03] SHAHABI C., CHEN Y.-S., « An Adaptive Recommendation System without Expli-cit Acquisition of User Relevance Feedback », Distrib. Parallel Databases, vol. 14, no 2,2003, p. 173-192, Kluwer Academic Publishers.

[SUN 05] SUN J., ZENG H., LIU H., LU Y., CHEN Z., « Cubesvd : A novel approach topersonalized web search », 14th international conference on World Wide Web, , 2005, page574.

[VAR 06] VARADHAN G., MANOCHA D., « Accurate Minkowski sum approximation of po-lyhedral models », Graph. Models, vol. 68, no 4, 2006, p. 343-355, Academic PressProfessional, Inc.