La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Soutenance de thèse de Doctorat Dimitre Kostadinov

Présentations similaires


Présentation au sujet: "Soutenance de thèse de Doctorat Dimitre Kostadinov"— Transcription de la présentation:

1 Soutenance de thèse de Doctorat Dimitre Kostadinov
ACCES PERSONNALISE A DES MASSES DE DONNEES UNIVERSITE DE VERSAILLES SAINT-QUENTIN-EN-YVELINES Personnalisation de l’information : une approche de gestion de profils et de reformulation de requêtes Bonjour, je vais vous présenter mes travaux sur la personnalisation de l’information et plus précisément sur la gestion de profils et la reformulation de requêtes. Soutenance de thèse de Doctorat Dimitre Kostadinov Versailles, le 19 Décembre 2007

2 Accès classique à un système d’information multi sources
Accès à un ensemble de sources de données distribuées, hétérogènes et autonomes Comment résoudre le problème de la surcharge d’information ? Est-ce que les données sont récentes ? Est- ce je peux lire les fichiers avec mon ordinateur ? SELECT * FROM Publication WHERE sujet = ‘JAVA’ Les systèmes d’info. actuels donnent accès à un grand nombre de sources hétérogènes et distribuées. Lorsque l’utilisateur soumet une requête, il est confronté à un problème de surcharge d’information où il est difficile de distinguer les données pertinentes des données secondaires ou du bruit. Ceci est du au fait que les requêtes contiennent en général peu de critères et ne permettent pas de cibler très précisément le besoin de l’utilisateur. Pour palier le problème de la surcharge il faut expliciter l’expression des requêtes et tenir compte des préférences de l’utilisateur. Le problème qui se pose dans ce cas est que l’utilisateur doit écrire explicitement les critères à chaque fois qu’il soumet une requête et que certains de ces critères ne portent pas sur le contenu. Il faut donc mettre en facteur les invariants des recherches de l’utilisateur. Système d’Accès aux Données 19/12/2007

3 Accès personnalisé à un système d’information multi sources
Accès à un ensemble de sources de données distribuées, hétérogènes et autonomes JAVA: langage de programmation Fraîcheur < 1 mois Formats fichiers  {PDF, PS} SELECT * FROM Publication WHERE sujet = ‘JAVA’ En supposant qu’on soit capable de modéliser l’utilisateur et de ce fait mettre en facteur l’invariant de ses besoins informationnels, alors on peut fournir un accès personnalisé aux données. Dans ce cas l’utilisateur envoie au système la requête et les informations le décrivant. Le système tiens compte de ces données dans l’exécution de la requête ce qui permet d’obtenir des résultats adaptés. Système d’Accès aux Données 19/12/2007

4 Cadre du travail: Projet APMD
Objectifs du projet APMD ( ) modélisation et évolution des profils, exécution adaptative de requêtes, influence de la qualité sur la personnalisation, évaluation et la validation des approches proposées dans le projet. Partenaires PRiSM (Versailles) CLIPS-IMAG (Grenoble) IRISA (Lannion) IRIT (Toulouse) LINA (Nantes) LIRIS (Lyon) Prolongé par une collaboration avec Alcatel-Lucent … Ma thèse s’inscrit dans le cadre du projet APMD. Ce projet est axé autour de 4 objectifs principaux : … Mes contributions apportent des éléments de solution pour les 2 premiers et le 4e objectif du projet. Une première contribution sur la modélisation des connaissances décrivant les utilisateurs et une seconde contribution sur l’exploitation des profils pour la reformulation de requêtes et l’évaluation expérimentale des approches proposées. 19/12/2007

5 Plan Contexte Contributions Evaluations Conclusions et perspectives
Modélisation de l’utilisateur (définition de la notion de profil) Exploitation du profil dans la reformulation de requêtes Evaluations Conclusions et perspectives Mes contributions correspondent aux deux grandes phases du projet APMD (ce qui explique qu’il y a deux parties). Je vais commencer avec ma première contribution sur la définition de profil utilisateur. 19/12/2007

6 Partie 1 Modélisation de l’utilisateur

7 Modèle utilisateur ? Référence (s) Modèle utilisé Proposition (Chomicki 02) formules de préférences Opérateur Best (Borzsonyi et al. 01) clause Skyline Opérateur Skyline (Kießling 02) opérateurs supportant des préférences Preference SQL (Ciro et al. 04) mots clés pondérés similarité entre profil et documents (Sorensen et al. 95) séquences de termes Filtrage des articles de Usenet News (Cherniack et al. 03) fonctions d'utilité Caches personnalisés (Koutrika et al. 04b), (Acqua et al. 02), (Gaasterland et al. 94) préférences à la clause de Horn enrichissement requêtes (Koutrika et al. 04, 05) ensemble de prédicats pondérés Enrichissement de requêtes (Cranor et al. 03) (P3P) 3 catégories d’attributs : démographiques, professionnelles, de comportement Sécurité des données (Amato et al. 99) 4 catégories de connaissances: données personnelles, données collectées, données de livraison, données de comportement Accès à une librairie digitale Centré sur plusieurs notions dont les définitions sont floues Profil Contexte Préférences Chaque application possède Son propre modèle utilisateur Sa propre approche d’accès personnalisé Plusieurs approches proposées dans la littérature. Pas de profil, mais extension des langages de requêtes (SQL) avec des opérateurs ou des clauses supportant des préférences. Profil en RI : mots clés [pondérés] ou termes structuré en ontologies. BD : expressions dans des langages qui décrivent les préférences de l’utilisateur : clauses de Horn, … ou des prédicats pondérés. Certaines approches ont proposés de catégoriser les attributs : P3P-> 3 groupes et Amato->4 groupes Il manque un consensus entre les approches. Le représentation de l’utilisateur varie d’une approche à l’autre. 1er objectif: modéliser les connaissances décrivant l’utilisateur Quelque soit l’approche, le concept de préférence revient constamment. 19/12/2007

8 Notion de préférence Préférence Typologie des préférences
expressions permettant de hiérarchiser les concepts auxquels on s’intéresse Typologie des préférences Préférence Une préférence est … Nous proposons une typologie des préférences : simples composées Pour mieux présenter les préférences, je vais vous donner des exemples… 0..n compose 1..n PréférenceSimple PréférenceComposée Unitaire Binaire Ensembliste Indépendante Prioritaire 19/12/2007

9 Exemples Préférences simples Préférences Composées Unitaire : poids
Film.genre=‘action’ 0.8 binaire : >> action >> drame Ensembliste : LOWEST LOWEST(prix) Préférences Composées indépendante  (action >> drame)  (anglais >> français) prioritaire & (action >> drame) & Les préférences peuvent être exprimées sur l’ensemble des données décrivant l’utilisateur ou l’environnement dans lequel il interagit avec le système. 19/12/2007

10 Dichotomie profil/contexte
ensemble d’informations décrivant les centres d’intérêt de l’utilisateur, plus un ensemble de préférences Contexte description de l’environnement d’interaction entre l’utilisateur et le système Profil Contextualisation Nous faisons une distinction entre les concepts de profil et de contexte. Les deux sont liés : contextualisation. Je vais vous présenter notre méta modèle qui permet de modéliser chacun de ces concepts. Contexte 19/12/2007

11 Meta modèle du profil utilisateur
IDprofil propriétaire 1..n Dimension IDdimension nom 0..n 0..n < TypeDe < TypeDe SousDimension Attribut DonnéesLivraison IDsousDimension nom IDattribut nom typeValeur structureValeur < TypeDe < TypeDe Profil multidimensionnel composé de dimensions composées d’un ens. d’attributs simples composées = sous-dimensions Dimensions principales… Présentation du domaine d’intérêt, les autres sont dans la thèse. < TypeDe Qualité 1..n Sécurité 1..n ValeurAttribut DonnéesPersonnelles IDvaleur valeur DomaineIntérêt 19/12/2007

12 Domaine d’intérêt DomaineIntérêt 19/12/2007 Contenu 1..1 concerne 1..n
VecteurMotsCles Ontologie FormulesDisj Historique Contient une description du domaine d’expertise de l’utilisateur. Permet de décrire le contenu des données auxquelles s’intéresse l’utilisateur. Peut être représenté de différentes manières: ensemble de mots clés mots clés structuré dans une ontologie ensemble de prédicats liste d’exemples d’objets vus par l’utilisateur avec les actions qu’il a effectué dessus Plusieurs représentations peuvent être utilisées dans le même profil : ex. ontologie qui complète un ens. de prédicats. 1..n 1..n 1..n 1..n GrapheConceptuel ConjPrédicats ListeExemples 1..n 0..n 1..n 1..n 1..n 1..n Concept Prédicat Action LienSém Axiome Exemple 0..n 2..2 1..1 1..n entre opérateur 0..n 1..1 Attribut Valeur 19/12/2007

13 Exemples Exemple 1 : mots clés Profil de Paul Dim: Domaine d’Intérêt
(film, action, drame, Bruce Willis, anglais) Exemple 2 : ontologie Profil de Paul Dim: Domaine d’Intérêt Film Genre Casting Langue action drame Bruce Willis anglais Exemple 3 : prédicats Profil de Paul Dim: Domaine d’Intérêt Film.genre=‘action’ Film.genre=‘drame’ Acteur.nom=‘Bruce Willis’ Film.langue=‘anglais’ Exemple 4 : historique Profil de Paul Dim: Domaine d’Intérêt Exemples des différentes représentations du domaine d’intérêt. Maintenant je vais vous présenter le méta modèle de contexte. Film Action Armageddon vu annonce, téléchargé Titanic recommandé à un ami Shrek vu annonce 19/12/2007

14 Méta modèle de contexte
DimensionContexte TypeDe > < TypeDe TypeDe > Temporelle Spatiale Equipement Même modèle que le profil : dimensions, attributs, valeurs 3 dimensions principales… 0..1 0..1 Moment Date Mobile Fixe Matériel Logiciel Coordonné Localité Rapport technique [Abbar et al. 07] 19/12/2007

15 Exemples Contexte Maison Temporelle moment Equipement taille écran
système bande passante Contexte Bureau Temporelle date Spatiale coordonnée GPS Equipement taille écran bande passante Ce sont des exemples de modèles de contextes qui seront instanciés au moment de l’interaction entre l’utilisateur et le système. Les concepts de profil, contexte et préférences ne sont indépendants, je vais vous présenter les interactions entre eux. 19/12/2007

16 Liens entre les méta modèles
Préférence TypeDe > < TypeDe Profil ContextualiséSelon > Contexte 0..n 1..n 1..n 0..n Quelles préférences peuvent être exprimées sur le contexte ?!? Contextualisation du contenu du profil Préférences exprimées sur le profil et le contexte. DéfiniSur > < DéfiniSur Préférence de Profil Elément Profil Elément Contexte Préférence de Contexte ContextualiséSelon > DéfiniSur > DéfiniSur > 19/12/2007

17 Exemple Profil de Paul Données personnelles téléphone =
si contexte Maison si contexte Bureau Contexte Maison Temporelle moment Equipement taille écran système bande passante Domaine d’Intérêt {Film.genre=‘action’ Film.genre=‘drame’ Acteur.nom=‘Bruce Willis’ Film.langue=‘anglais’ } 0.9 0.7 Contexte Bureau Temporelle date Spatiale coordonnée GPS Equipement taille écran bande passante 0.7 0.2 si contexte Maison {Film.genre=‘dessin animé’ Film.genre=‘comédie’ Film.langue=‘français’ } si contexte Bureau 0.9 0.3 0.8 19/12/2007

18 Plateforme de gestion des méta données
Implémente Les méta modèles Les opérations sur les méta modèles Composants Gestionnaire de profils Gestionnaire de contextes Gestionnaire de préférences Les modèles ont été implémenté dans une plateforme de gestion des connaissances. L’outil permet non seulement de naviguer dans les données et les méta modèles, mais offre des fonctionnalités d’archivage profils, d’adaptation de profils par rapport à un contexte, … 19/12/2007

19 Bilan Clarification des notions de profil et de contexte
approche multidimensionnelle Support à la définition des notions de profil et contexte manuel ou automatique Ensemble d’opérations de manipulation instanciation appariement Importation Ce travail a permis de clarifier les concepts liés à la personnalisation. Dans le projet APMD, il a permis d’avoir une terminologie commune entre les membres du projet. Il peut servir comme guide pour la conception de systèmes d’accès personnalisé. Plateforme : profils très riches Impossible d’utiliser tout le contenu dans une approche. Il faut restreindre le contenu du profil et étudier son impact sur l’exécution des requêtes. C’est ce que nous faisons dans la 2e partie de l’exposé. Validation Intégration Adaptation 19/12/2007

20 Partie 2 Exploitation du profil utilisateur pour la reformulation de requêtes
Exploitation du profil pour la reformulation des requêtes.

21 Objectif Proposer une méthode de reformulation de requêtes qui tient compte de la distribution de l’information profil utilisateur Pu Reformulation Il faut intégrer le contenu du profil à la requête Il faut traduire la requête exprimées sur le schéma global en un ens. d’expressions sur les sources Q Réécritures enrichies {Q’1, Q’2, …, Q’m} SCHEMA VIRTUEL LIENS SEMANTIQUES SOURCE 1 SOURCE 2 SOURCE 3 SOURCE n 19/12/2007

22 Hypothèses de base Profil Requêtes Définition des sources
ensemble de prédicats pondérés Requêtes conjonctives du type SPJ Définition des sources vues sur le schéma virtuel (LAV) Problèmes terminologiques résolus 19/12/2007

23 Problématique Reformulation des requêtes utilisant le profil
quelle partie du profil est pertinente à ajouter à une requête ? métrique de couverture quelle partie du schéma virtuel est nécessaire pour couvrir le profil sélectionné ? recherche d’un sous-ensemble de relations virtuelles et des chemins de jointures les reliant quelles sources de données sont les plus appropriées pour la réécriture des requêtes ? matching des attributs, identification de prédicats conflictuels, redondants Définition de benchmarks d’évaluation à la compilation à l’exécution PB 1 : lié à la mise en place d’approches de reformulation de requêtes Couverture: tient compte à la fois du nombre et des poids des prédicats. Définition dans le mémoire. PB 2 : Lié à la validation de ces approches benchmarks et métriques 19/12/2007

24 Insuffisance des techniques de base
Réécriture (Halevy et al. 96), (Duschka et al. 97), (Halevy et al. 01), … prend en compte l’aspect multi source (réécriture à travers des vues) mais ne tient pas compte du profil utilisateur Enrichissement (Koutrika et al. 04, 05) prend en compte le profil utilisateur (ajout de prédicats dans la requête) mais ne tient pas compte des mappings multi sources (pas de réécriture) Il y a des techniques permettant d’enrichir et de réécrire la requête. Réécriture… Enrichissement … <CLICK> Il faut les combiner pour obtenir un accès personnalisé à un ens. de sources distribuées. Les 2 techniques sont complémentaires 19/12/2007

25 Première approche : composition des techniques de base
Enrichissement-réécriture R(E) Réécriture-enrichissement E(R) Schéma Virtuel Pu Qu {Schémas Sources} Enrichissement Réécriture Q’u {Q’’u} Première approche du problème : composé les techniques de base. Selon l’ordre il y a 2 possibilités : approche E(R) approche R(E) Enrichissement Pu Qu Réécriture {Q’u} {Q’’u} {Schémas Sources} 19/12/2007

26 Limites des approches séquentielles
Approche R(E) Approche E(R) Avantages + prend en compte tous les prédicats du profil non conflictuels avec ceux de la requête + tient compte des définitions des sources pour la sélection des prédicats du profil  utilise uniquement des prédicats pertinents Inconvénients - peut utiliser des prédicats qui a) ne peuvent pas être réécrits b) sont déjà satisfaits pas l’ensemble des définitions des sources - impossibilité d’exprimer certains prédicats du profil sur les sources choisies Les inconvénients des 2 approches motivent notre 2e proposition. 19/12/2007

27 Deuxième approche : réécriture de requêtes guidée par le profil
Idées directrices confronter le profil utilisateur et le schéma virtuel sous ensemble de prédicats sous-schéma virtuel sélectionner les relations virtuelles sur la base de préférence (taux de prédicats pertinents) étendre la requête avec les relations choisies faire une réécriture personnalisée ne produire que les réécritures enrichissables Pour palier les limites des approches séquentielles, nous proposons une 2e approche du problème posé précédemment : alterner des étapes d’enrichissement et de réécriture. confronter le profil et le schéma pour déterminer les partie exploitables des 2 parmi les relations exploitables, choisir celles qu’il est intéressant d’ajouter à la requête réécrire la requête étendue en tenant compte du profil utilisateur 19/12/2007

28 Schémas des sources de données
Principe général Schéma Virtuel requête utilisateur requête étendue Expansion de la requête Identification des sources pertinentes sources pertinentes profil utilisateur réécritures Algorithme en 4 étapes: 1 et 4 = enrichissement 2 et 3 = réécriture Je vais détailler les étapes <CLICK> On commence par l’expansion… Enrichissement final Combinaison des sources pertinentes Schémas des sources de données requête utilisateur reformulée 19/12/2007

29 Etape 1: Expansion de la requête
Principe général Profil Match Schéma virtuel R2 R5 R1 R4 R3 R6 Je vais d’abord vous présenter une description intuitive de l’expansion. Donnée : profil et schéma virtuel <CLICK> Une requête arrive, exprimée sur R1 <CLICK> Confronter le profil au schéma pour déterminer quelles sont les partie su profil et du schéma qu’il est intéressant de prendre en compte. On obtient un ensemble de prédicats exploitables et un ensemble de relations sur lesquelles ces prédicats sont exprimés. <CLICK> Les relations sont ensuite ordonnées en fonction du nombre et des poids des prédicats exprimables sur elles <CLICK> Sur la base d’une préférence de l’utilisateur, on décide lesquelles ajouter à la requête <CLICK> La requête est étendue avec les relations choisies. R4 R2 Ajout à Q Ordonnancement Q’u R1 R3 R4 R3 R2 19/12/2007

30 Problématique de l’expansion de la requête
Identification des relations sémantiquement liées à la requête Recherche des chemins de jointure entre la requête et les relations virtuelles Choix des chemins de jointure Minimisation du nombre de nouvelles relations Sémantiquement liés : dépend de la distance entre les relations de la requête et les relations virtuelles. Hypothèse : Plus elles sont éloignées, moins elles sont liées Trouver un moyen de les lier S’il y a plusieurs chemins, alors il faut choisir Pour ne pas exploser le temps de réponse de la réécriture, il faut minimiser le nombre de nouvelles relations. 19/12/2007

31 Principe d’expansion Actualisation des poids des prédicats
Choix des relations virtuelles Ajout des relations virtuelles à la requête Le principe de l’expansion peut être présenté par 3 étapes:… Je vais les détailler et les illustrer sur 1 exemple. Supposons qu’il y a un schéma virtuel et 1 requête exprimée sur R1 et R2. 19/12/2007

32 Principe d’expansion Actualisation des poids des prédicats
Prise en compte de la distance entre les relations de la requête et les autres relations virtuelles Fonction de la distance entre la requête et la relation sur laquelle est exprimé le prédicat Choix des relations virtuelles Ajout des relations virtuelles à la requête R5 R6 R7 R8 R1 R2 R3 R4 Qu 0.32 R3.a=‘x’ 0.5 Déterminer si la requête et les relations sont sémantiquement liées = intégrer la distance entre la requête et les relations dans le poids des prédicats du profil. On utilise un paramètre  qui exprime la vitesse à la quelle le poids d’un prédicat diminue avec l’augmentation de la distance. <CLICK>Supposons qu’il y a 1 prédicat … <CLICK> Le résultat de l’actualisation de son poids est… Hypothèse :  = 0.8 nw = 0.820.5 = 0.32 19/12/2007

33 Il faut étendre Qu avec {R3, R4 }
Principe d’expansion Actualisation des poids des prédicats Choix des relations virtuelles somme des pertinences des relations choisies >  (seuil de la portée pertinente) pertinence d’une relation = couverture pondérée du profil utilisateur par les prédicats exprimés sur la relation Ajout des relations virtuelles à la requête R4 32% 0% R5 3% R8 R3 Objectif : Satisfaire au moins 90% du profil utilisateur ( = 0.9) 2e étape = choix des relations à ajouter dans la requête. On se base sur une préférence de l’utilisateur qui dénote la part du profil qui doit être prise en compte. Autrement dit il faut que la couverture du profil utilisateur par les prédicats exprimés sur les relations choisies soit supérieure à un seuil fixé par l’utilisateur. <CLICK> il faut satisfaire 90% du profil <CLICK> calculer la pertinence de chaque relation <CLICK> les ordonner <CLICK> choisir les K plus pertinentes dont la somme des pertinences dépasse le seuil Il faut ajouter R4 et R3 20% 0% R7 R4 R3 R6 R5 R1 R6 5% 40% 32% 20% 5% 3% R1 R2 0% 92% 40% Il faut étendre Qu avec {R3, R4 } R3, R4 Qu 19/12/2007

34 Il faut étendre Qu avec {R3, R4 }
Principe d’expansion Actualisation des poids des prédicats Choix des relations virtuelles Ajout des relations virtuelles à la requête Minimiser le nombre de nouvelles relations (Steiner Tree Problem (Hwang et al. 1992)) Utiliser une heuristique (Minimum Cost Paths Heuristic (Takahashi et al. 1980)) R4 32% Il faut étendre Qu avec {R3, R4 } R3, R4 R5 3% R8 On doit minimiser le nombre de nouvelles relations. Problème proche de celui de l’arbre de Steiner qui est NP-complèt. Comme la reformulation se fait en général en temps réel, il est difficilement envisageable d’utiliser une solution exacte. En plus on a une contrainte supplémentaire qui est que les jointures de la requête initiale doivent être préservées. On utilise une heuristique qui est polynomiale et qui à chaque étape ajoute à la requête le plus court chemin jusqu’à la relation la plus proche. <CLICK> Itération 1 : il y a 3 chemins <CLICK> on calcule leurs pertinence en fonction des relations les composant <CLICK> on choisit le plus pertinent <CLICK> R3 est ajouté à Qu <CLICK> 1 seul chemin <CLICK> R4 est ajoutée à Qu L’algo. s’arrête car il n’y a plus de relations à ajouter. R3 20% 1ere itération : Plus courts chemins : R1-R6-R3 R2-R7-R3 R2-R8-R4 2e itération: Plus courts chemins : R3-R4 R7 R6 5% 5% 0% 0% Ajout de R4 R1 R2 40% Ajout de R3 Qu 19/12/2007

35 Etape 2: identification des sources pertinentes
Schéma Virtuel requête utilisateur requête étendue Expansion de la requête Identification des sources pertinentes sources pertinentes profil utilisateur réécritures Enrichissement final Combination des sources pertinentes Schémas des sources de données requête utilisateur reformulée 19/12/2007

36 Objectif Trouver les sources permettant de calculer les résultats de la requête sources contributives pour la réécriture de la requête Choisir les sources les plus pertinentes enrichissables par les prédicats du profil utilisateur 19/12/2007

37 Problèmes à résoudre Trouver les sources contributives
contenant des données de même nature que celles recherchées par la requête satisfaisant les prédicats de la requête Sélections Jointures Elagage des sources non pertinentes introduction d’une métrique de pénalité 19/12/2007

38 Principe de l’identification des sources pertinentes
Recherche des sources contributives pour la réécriture de la requête construction d’un ensemble de descripteurs de sources (MCDs) (type MiniCon Halevy et al. 2001) Filtrage des sources pénalité d’une source (MCD) > seuil de pénalité Couverture pondérée du profil par les prédicats exclus par la source Conflictuels avec la définition de la sources Inexprimables sur la source les algorithmes de réécriture permettent de trouver les sources contributives. On identifie les sources contributives de la même manière que l’algorithme MiniCon. Il permet de construire un ens. de MCDs qui décrivent les parties contributives de chaque source. Plusieurs MCDs peuvent être générées pour la même source. Avantage : les MCDs peuvent être combinées sans vérification des jointures. 2. Filtrer les sources en fonction des prédicats exclus par elles. Ne garder que les sources enrichissables. 19/12/2007

39 Exemple d’identification des sources pertinentes
Q’u(idV, prix, lieu_depart, moyen, comfort) :- voyage(idV, prix, lieu_depart, lieu_arrivee, nbre_jours, idT, idH), transport(idT, moyen, type_trajet, comfort), hotel(idH, nbre_etoiles, nom, region, lieu_depart, idR) lieu_arrivee='Madrid. (1) (2) (3) Profil utilisateur Pu { VOYAGE.nbre_jours> (a) VOYAGE.lieu_depart=’Toulouse’ (b) TRANSPORT.moyen='avion’ (c) HOTEL.nbre_etoiles> (d) TRANSPORT.comfort> (e) VOYAGE.lieu_depart = ‘Paris’ 0.2 (f) HOTEL.region=‘centre ville’ (g) RESTO.catégorie=‘gastronomique’ 0.1 (h) } ? Source contributive pour la relation VOYAGE 1 requête, 1 profil et 1 source. <CLICK> la source peut contribuer pour relation virtuelle VOYAGE En regardant les prédicats du profil <CLICK> (b) est conflictuel avec la définition de la source <CLICK> (a) ne peut pas être exprimé sur elle <CLICK> pénalité de la source (MCD) est fonction de ces 2 prédicats… ParisVacances(idV, prix, lieu_depart, lieu_arrivee, idT):- VOYAGE(idV, prix, nbre_jours, lieu_depart, lieu_arrivée, idT, idH), lieu_depart = ‘Paris’. Pénalité(ParisVacances) = CP(Pu, {a, b}) = 0.43 19/12/2007

40 Etape 3: Combinaison des descripteurs
Schéma Virtuel requête utilisateur requête étendue Expansion de la requête Identification des sources pertinentes sources pertinentes profil utilisateur réécritures Enrichissement final Combination des sources pertinentes Schémas des sources de données requête utilisateur reformulée 19/12/2007

41 Problématique de la combinaison de sources
Problème combinatoire Compatibilité des sources (MCDs) Pertinence des réécritures par rapport au contenu du profil utilisateur 1 On a ajouté des relations virtuelles et on en a enlevé avec la pénalité mais en général il y a plus de MCDs à tester. 2 Vérifier que les réécritures sont sémantiquement correctes 3 ne produire que des réécritures enrichissables 19/12/2007

42 Solution proposée Utiliser un algorithme par niveaux (Apriori (Agrawal et al. 94)) Élaguer les combinaisons de MCDs ayant une grande pénalité La pénalité est monotone Seuil de pénalité = 0.5 a c e g b d f 0.45 Relations de la requête étendue : { VOYAGE, TRANSPORT, HOTEL } 0.08 0.1 0.0 ID Source Contributive pour a HOTELSDUMONDE Hotel b PARISVACANCES Voyage,Hotel c LYONVACANCES Voyage d e SNCF Transport f TRANSPORTAERIEN g VOYAGERPARTOUT Redondantes : ab, ad, bc, bd, ef, eg, fg Pénalité > seuil : be, cd, ce Réécritures : bf, bg , acf, acg 0.45 0.45 acf acg 0.45 0.1 0.0 0.0 0.55 0.45 0.45 0.54 0.55 0.45 0.45 0.18 0.08 0.08 ab ac ad ae af ag bc bd be bf bg cd ce cf cg de df dg ef eg fg 19/12/2007

43 Etapes de l’algorithme
Schéma Virtuel requête utilisateur requête étendue Expansion de la requête Identification des sources pertinentes sources pertinentes profil utilisateur réécritures Enrichissement final Combination des sources pertinentes Schémas des sources de données requête utilisateur reformulée 19/12/2007

44 Enrichissement final Objectif Etape préparé par les étapes précédentes
Ajouter les prédicats du profil aux réécritures candidates Etape préparé par les étapes précédentes Connaissance des prédicats exclus déduction des prédicats à utiliser Connaissance des définitions des sources Identification des prédicats déjà satisfaits par les sources Principe Ajout de la conjonction des prédicats du profil à la requête Simple et préparé par les étapes précédentes. 19/12/2007

45 Exemple d’enrichissement final
Profil utilisateur { VOYAGE.nbre_jours> (a) VOYAGE.lieu_depart=’Toulouse’ (b) TRANSPORT.moyen='avion’ (c) HOTEL.nbre_etoiles> (d) TRANSPORT.comfort> (e) VOYAGE.lieu_depart = ‘Paris’ 0.2 (f) HOTEL.region=‘centre ville’ (g) RESTO.catégorie=‘gastronomique’ 0.1 (h) } Conflictuels avec Qu Exclus par les sources (pénalité) HOTEL.nbre_etoiles> (d) TRANSPORT.comfort> (e) A ajouter Déjà satisfaits par les sources Pas considérés lors de l’expansion En général la réécriture ne contient que le schéma des sources, mais pour la clarté de l’exemple j’ai ajouté aussi les prédicats de sélection de leurs définitions. <CLICK> éliminés avant (choix relations) <CLICK> conflictuels avec la requête <CLICK>exclus par les sources (pénalité) <CLICK>satisfaits par les sources <CLICK> à ajouter <CLICK> ajout de la conjonction RW(idV, prix, lieu_depart, moyen, comfort):- ParisVacances(idV, prix, lieu_depart, lieu_arrivee, nbre_jours, moyen, nom, nbre_etoiles, idT), lieu_depart = ‘Paris’ TransportAerien(idT, comfort), moyen = ‘avion’ lieu_arrivee='Madrid‘, nbre_jours=4 , nbre_etoiles>3, comfort>2 19/12/2007

46 Plan Contexte Contributions Evaluations Conclusions et perspectives
Modélisation de l’utilisateur (définition de la notion de profil) Exploitation du profil dans la reformulation de requêtes Evaluations Conclusions et perspectives 19/12/2007

47 Evaluation des approches de reformulation de requêtes
Proposition d’un benchmark Construction d’une plateforme de données (Peralta 2007) Dérivation d’un benchmark à partir de la plateforme Définition de métriques d’évaluation Niveau compilation des requêtes Niveau exécution des requêtes 19/12/2007

48 Plateforme des tests Principe de construction Caractéristiques
Extraction Schéma cible Nettoyage et réconciliation des données Données IMDb BD intégrée Profils Requêtes Bons résultats Génération de requêtes et de profils Extraction Données MovieLens Nombre de tables dans la BD intégrée 52 Nombre de films 3 881 Nombre d’évaluations de films Nombre d’utilisateurs 6 040 Nombre de requêtes générées 6 041 Nombre de profils générés + référentiel de résultats pertinents pour chaque couple (profil, requête) 19/12/2007

49 Choix des requêtes et des profils
Benchmark des tests Etapes de construction du benchmark Caractéristiques Schéma cible Schéma virtuel Simulation du système distribué BD intégrée Requêtes de médiation Sources Choix des paramètres Profils et Requêtes retenus Profils Requêtes Bons résultats Choix des requêtes et des profils Schéma virtuel 49 relations Sources 52 dont 23 contiennent des prédicats de sélection Échantillon de requêtes 13 requêtes Échantillon de profils 15 profils Valeur du seuil de pénalité De 0 à 0.5 pour portée pertinente = 0.5 Valeur de la portée pertinente De 0.1 à 0.7 pour seuil de pénalité = 0.3 Système distribué 19/12/2007

50 Métriques d’évaluation
Niveau compilation Couverture des prédicats du profil Couverture pondérée Temps de réponse de la reformulation Niveau exécution Rappel nombre de résultats pertinents obtenus / nombre total de résultats pertinents Précision nombre de résultats pertinents obtenus / nombre total de résultats obtenus 19/12/2007

51 Résultats des tests au niveau compilation
Couverture du profil utilisateur Temps de réponse R(E) R/P E(R) E(R) : couverture insensible à la portée pertinente. R/P en général meilleure couverture et la différence s’accentue avec la taille des problèmes (plus de prédicats, plus de relations virtuelles dans Qu) Même constant que pour la couverture. On s’est fixé une borne d’une minute et on a voulu savoir quelles est la taille des problèmes pouvant être traités en 1 minute par notre implémentation. 19/12/2007

52 Résultats des tests au niveau exécution
Rappel Précision Intervalle de Rappel en %  R/P R(E) E(R) [50, 60) 2,3% [60, 70) 10,4% [70, 80) 11,6% 0,4% [80, 90) 56,8% [90, 100) 8,5% 52,5% 5,0% 100 46,7% 95,0%  Gain de précision par rapport à MiniCon R/P R(E) E(R) [8, 10) 2,3% [6, 8) 7,3% [4, 6) 11,2% [2, 4) 25,1% [0, 2) 22,8% 29,0% 6,9% 0,8% 34,0% 88,0% (0,-2] 20,8% 37,1% 5,0% (-2, -4] (-4, -6] Approche Pourcentage de cas où elle a obtenu la meilleure précision R/P 69,5 % R(E) 21,2 % E(R) 19,3 % MiniCon 19,7 % En général en BD, la personnalisation est faite en ajoutant de nouvelles restrictions à la requête  perte de résultats par rapport à la requête initiale. 19/12/2007

53 Position par rapport aux travaux similaires
Enrichissement de requêtes (Koutrika et al. 04, 05) calcul de préférences implicites (expansion) travail au niveau des prédicats pas de distribution de l’information Réécriture de requêtes algorithme MiniCon (Halevy et al. 01) recherche de toutes les réécritures candidates possibles pas d’expansion de la requête pas de prise en compte du profil utilisateur choix des sources à base de critères de qualité (Naumann et al. 98) filtrage de sources à base de facteurs de qualité calcul des top K chemins de navigation entre sources (Vidal et al. 06) chaque source est assimilée à un concept PB : trouver un chemin d’une source à une autre 19/12/2007

54 Plan Contexte Contributions Evaluations Conclusions et perspectives
Modélisation de l’utilisateur (définition de la notion de profil) Exploitation du profil dans la reformulation de requêtes Evaluations Conclusions et perspectives 19/12/2007

55 Conclusion Modélisation des connaissances décrivant l’utilisateur
Méta modèles de profil, contexte et préférences Gestionnaire des méta modèles Exploitation du profil utilisateur pour la reformulation de requêtes Définition et analyse de deux approches séquentielles Algorithme de réécriture guidé par le profil utilisateur Evaluation des approches de reformulation de requêtes Niveau compilation Niveau exécution Il y a une plateforme de gestion qui a été réalisée, mais son utilisation sur un système réel est un challenge et elle doit être validée expérimentalement. Nous avons fait des hypothèses fortes pour l’élaborer l’algorithme de reformulation. Ce qui nous mène aux perspectives. 19/12/2007

56 Perspectives Calcul d’autres résultats que ceux de la requête initiale
Relâcher les prédicats de la requête initiale Faire un enrichissement au niveau des sources sources multi relations Prise en compte d’autres dimensions du profil choix des sources en fonction de la qualité Prise en compte d’autres types de préférences Préférences sous forme d’ordres partiels 19/12/2007

57 Questions ? 19/12/2007


Télécharger ppt "Soutenance de thèse de Doctorat Dimitre Kostadinov"

Présentations similaires


Annonces Google