matwin 1999 1 extraction de linformation à partir de www stan matwin École dingénierie et de...
TRANSCRIPT
Matwin 19991
Extraction de l’information à partir de WWW
Stan Matwin
École d’Ingénierie et de technologie de l’information
Université d’[email protected]
Matwin 19992
Plan
Motivation Recherche
EnginsFiltres
Extraction – texte miningClassificationÉtiquettageFutur: XML
Matwin 19993
Motivation
800M pages, ++100M/moisOn peut trouver tout mais comment
chercherOutils qui produisent et distribuent
l’information sont là, mais outils qui l’extraient…
Ces outils doivent être personnalisés
Matwin 19994
Engins de recherche
Tout le monde s’en sert, mais…On sait peu sur leur mécaniqueÀ l’exception de Google
Matwin 19995
Anatomie des engins de recherche
On ne sait pas grand-chose sur AV, Lycos, Yahoo, etc.
Certains détails sur Google et Clever ont été publiés
Critères de conception Différences Architecture Structures de données
Matwin 19996
Objectifs
Concepts de base de la RI :Rappel (recall): pourcentage des docs
pertinents qui sont retournés Précision: pourcentage de docs pertinents dans les docs retournés
Quantité: des centaines de milliers de requêtes par seconde
Qualité: haute précision (pas avec les moteurs actuels)
Matwin 19997
Classement des pages
L'idée: une page est importante quand elle est beaucoup "référée" (qu'il y a beaucoup de liens vers elle), ou "référée" par une page importante.
Le classement des pages (PR) est utilisé pour gérer les priorités. Efficace, même pour une recherche sur les titres de pages.
Matwin 19998
Les pages T1,…,Tn pointent vers la page A, C(A) est le fan-out de APR(A)=(1-d) + d(PR(T1)/C(T1)+…+PR(Tn)/C(Tn))d=coeff. de dumping * =0,85Modèle d'un parcours au hasard du WebPR(p) = prob. qu'un utilisateur allant au hasard visite p
Matwin 19999
Autres termes
Le texte de l'ancre (anchor) est associé à la page-cible
Certains aspects du balisage sont utilisés
Matwin 199910
Architecture de Google
Le serveur d'URLs envoie une liste d'URLs à donner aux crawlers
StoreServer compresse et stocke les pages
Indexer extrait les mots avec position, taille, capitalisation.
Les ancres contiennentles liens et leur texte
Sorter génère des règles inversées
Searcher utilise Lexicon et PR
Matwin 199911
Détails
Les mots sont stockés dans des tonneaux (codes: wordIDs); si un doc contient un mot, le code du doc et le code du mot sont stockés avec la hitlist de ce mot dans le doc
Le lexique pointe vers les tonneaux invertis; chaque mot pointe vers le code de mot et les hits
Matwin 199912
Fonctionnement
CrawlingRechercheRanking
Matwin 199913
Crawling et indexation
Analyse syntaxique pour obtenir des ancres et des mots. Robuste face aux erreurs (flex+pile)
Indexation en parallèle: hashage en tonneaux (barrels) en utilisant le lexique. Le problème des nouveaux mots
Matwin 199914
Recherche
1 parser la requête
2 convertir les mots en codes (wordIDs).
3 Identifier un groupe pour chaque mot
4 parcourir les listes de docs jusqu'à ce qu'on trouve un doc qui corresponde à tous les mots-clés de la requête
Matwin 199915
Ranking
S'il y a un seul mot: identifier la hit list et son type, compter le nombre de hits de chaque type, faire une multiplication vectorielle Combiner avec le PR
S'il y a plusieurs mots, prendre en compte la proximité
Matwin 199916
Pour aller plus loin
Google ne retourne aucune page d'IBM pour la requête 'mainframes'
Beaucoup de pages qui pointent vers la page principale d'IBM utilisent le terme ‘mainframe’, donc cette page devraient être retournée.
Matwin 199917
Clever classe les pages de type "autorités" (authoritities) et les pages de type "moyeu" (hub). Les autorités sont les page qui ont un bon score PR. Les hubs sont les pages qui pointent vers plusieurs autorités. Par exemple: la page de mon ami contient des liens vers des catalogues de CDs. On ne peut pas déterminer les hubs avec seulement le PR.
Clever/HITS (Hyperlink Induced Topic Search) commence avec un jeu initial de pages et de hubs.
Matwin 199918
Mathématiquement…
Soit xp le poids de l'autorité, yq le poids du
hub; q->p dénote: q a un lien vers p
Soit A la matrice d'adjacence: Ai,j = 1 s'il y
a un lien entre i et j, sinon 0
pqqp yx
qpqp xy
Matwin 199919
x ATy et y Axx ATAx, et on peut faire des
itérations sur les puissances de ATACette séquence de puissances
converge vers le vecteur propre de ATA
Donc le résultat ne dépend pas des poids de départ
Matwin 199920
Enlever les liens 'locaux' (“Retour à la page principale”)
Dérive (drift): transfert à l'autorité principale, par exemple le sujet des loisirs
Détournement (highjacking): si plusieurs pages d'un même site apparaissent dans l'ensemble de base, elles couvrent peut-être un sujet
Matwin 199921
Compensé par l'indexation partielle du contenu et des ancres et par la
division des pages en "pagelettes" pour avoir une séquence continue de liens
Les hubs marchent bien pour faire de l'apprentissage sur un sujet, mais sont moins bons pour chercher une information spécifique.
Matwin 199922
Autres engins
Altavista et Lycos ont probablement des méthodes simples de sélection
Excite semble utiliser beaucoup de propriétés des pages
Voir « What is a tall poppy among Web pages? »7th Int’l WWW Conf.
Matwin 199923
Á quoi sert la classification de textes?
Archivage automatiqueFiltrage de l’Internet (négatif)Systèmes de recommandation (positives)Extraction d’information…
Matwin 199924
Apprentissage supervisé (classification)
Étant donné:un ensemble d’exemples T={et}, où
chaque t est l’étiquette d’une classe parmi les classes C1,…Ck du concept qui est à apprendre
Trouver: une description de chaque classe
permettant une bonne prédiction de la classe de nouveaux exemples
Matwin 199925
Classification
Approche habituelle:
les exemples sont représentés sous forme de vecteurs de valeurs d’attributs
La théorie est confirmée par l’expérience: plus il y a d’exemples, plus précise est la prédiction
Matwin 199926
Bag of words
Classification de textes: approche habituelle
1. enlever les mots-arrêt (stop words) et les marqueurs non-textuels
2. les mots restants sont tous pris comme des attributs
3. un document devient un vecteur <mot, fréquence>
4. entraîner un classifieur booléen pour chaque classe
5. évaluer les résultats sur un nouvel échantillon
Matwin 199927
Outils de classification des textes
RIPPERun système d’apprentissage orienté règles
Fonctionne bien sur de gros ensembles de traits binaires
Réseaux bayesiens naïfsEfficaces (pas de recherche)
Simples à programmer
Indiquent un “niveau de croyance”
Matwin 199928
Autres ressources
Stop list + stemmer:http://www.dcs.gla.ac.uk/idiom/ir_resources/linguistic_utils/
Aussi Brill taggerAnalyseur syntaxique DIPETTClassifieur Bayesien RAINBOW (CMU)Un hub à consulterhttp://n106.is.tokushima-u.ac.jp/member/kita/NLP/nlp_tools.html
Matwin 199929
Autres travaux
Yang: les meilleurs résultats obtenus avec k-NN: 82,3% de précision en micro-moyenne
Joachim: Support Vector Machine (SVM) + données non étiquetées
SVM n’est pas affectée par une forte dimensionnalité ni par la rareté des exemples.
Matwin 199930
SVM en classification de textes
SVM
SVM transductive Séparation maximale Marge pour le jeu de test
L’entraînement sur 17 exemples dans les 10 catégories les plus fréquentes donne une performance de 60% sur 3000+ cas de test disponibles pendant l’entraînement.
Matwin 199931
Nouveautés
Travail sur le texte marqué (Word, Web)
XML avec des marqueurs sémantiques: avantages et inconvénients pour l’AA/FD
Co-apprentissageFouille de textes
Matwin 199932
Extraction
Web base de donnéesComment retrouver l’info d’un type
spécifique?Classification {pièces des pages}
{catégories sémantiques} ou pages classes des pagesP. ex. pages des équipes, labos,
chercheurs, programmes d’enseignement, étudiants, etc.
Matwin 199933
Classification des pages
[Mitchell] The Role of Unlabeled Data in Supervised Learning," T. Mitchell, Proceedings of the Sixth International Colloquium on Cognitive Science, San Sebastian, Spain, 1999 (invited paper)
Les pages de cinq universitésClasses: prof, ét, cours, …Classification, mais en partant de
quels attributs?
Matwin 199934
Deux représenations redondantes et suffisantes
Matwin 199935
Co-apprentissage
Comment utiliser les données non étiquetées? Ou comment limiter le nombre d’exemples à étiqueter?
Deux classifieurs et deux représentations “redondantes et suffisantes” (redundantly sufficient)
entraîner les deux, appliquer les deux sur le jeu de test,
ajouter les meilleures prédictions au jeu d’apprentissage.
Le taux d’erreur est diminué de moitié (il passe de 11% à 5%).
Matwin 199936
Sciences cognitives?
Le co-apprentissage semble être justifié cognitivement
Modèle: apprentissage d’étudiants par groupes de deux
Quels autres mécanismes d’apprentissage pourraient fournir des modèles de l’apprentissage supervisé?
Matwin 199937
XML
Idéal: conçu exprès pour faciliter recherche/extraction
DTD définiront l’information de façon (balisage) symbolique
Succès dépend d’acceptation de l’approche DTD
Conversion HTML XML
Matwin 199938
Conclusion
Une tâche pratique pour laquelle il faut trouver une solution
Aucune solution satisfaisante pour l’instant
Un domaine de recherche fertile