traitement automatique des langues : fondements et...
TRANSCRIPT
Traitement automatique des langues :Fondements et applications
Cours 1 : Presentation du domaine
Tim van de Cruys & Philippe Muller
2016—2017
Plan
1 Introduction
2 Les mots
3 L’importance de la syntaxe
4 Modeliser le sens
5 Gerer le contexte
6 Methodologie experimentale
Qu’est-ce que c’est ?
• traitement informatique de donnees en langage naturel, surtoutl’ecrit
• toutes les formes d’ecrits: livres, documents techniques,forums, emails, chats, blogs
• representer l’information contenue dans les donnees textuelleset la communiquer
Pourquoi ?
• IA et representation de connaissances : on ne fera pas tout ala main
immense reservoir dans les textes disponibles• faciliter la communication Humain/Machine et Humain/Humain
acces a l’information, mediation de la communication• langage comme trace de la pensee, du raisonnement et du
sens communcomprendre l’intelligence par la communication
Pour quoi faire ?Applications
• fouille / extraction d’information• analyse d’opinions• reponse a des questions
• traduction automatique entre langues• resume de textes• construction de bases de connaissances / ontologies
sous-domaines tres riches : medical, juridique, domainestechniques
Quelle(s) discipline(s)
• intelligence artificielle• linguistique• philosophie
Deux points de vue:• “Natural language processing” : ingenierie, taches a resoudre,
approche experimentale par evaluation• “Computational linguistics” : science, modeles explicatifs,
validation par des donnees
Watson
un systeme de reponse a des questions, dans le format du jeu“jeopardy!”combine :• traitement du langage naturel (analyse/production)• apprentissage automatique• representation de connaissances / decision
→ a battu tous les champions du jeu (en temps reel) !
un exemple de recherche d’information sophistiquee
Analyse d’opinion
• suivi d’opinion sur un produit• aggregation d’avis• analyse fine pour recommendations
versus
source : xkcd; allocine
Analyse d’opinion
• suivi d’opinion sur un produit• aggregation d’avis• analyse fine pour recommendations
versus
source : xkcd; allocine
Analyse d’opinion
• suivi d’opinion sur un produit• aggregation d’avis• analyse fine pour recommendations
versus
source : xkcd; allocine
Traduction automatique
Alignement→ Aide a la traduction www.linguee.fr
Traduction automatique (statistique) google translate
Resumes de textes
• synthese de documents• simplification• le plus souvent par extraction de phrases
source : Mikael Kagebak
Pourquoi c’est dur ?
• ambiguite a tous les niveaux• beaucoup d’implicite• beaucoup d’equivalences de sens sous des formes differentes• opposition phenomenes courants/phenomenes rares
mais beaucoup de phenomenes rares→ difficile a modeliser
Pourquoi c’est dur ?on parle souvent information ”non structuree”→ plutot semi-structuree
• si on veut partir de donnees textuelles pour obtenir unerepresentation formelle
L’aspirine traite le mal de tete.→treatment(D001241,D006261)
• probleme de base du TAL: formes equivalentes
L’acide acetylsalicylique soigne les cephalees.→ treatment(D001241,D006261)
• probleme de base du TAL: ambiguitesLe medecin traite le patient de tous les noms. ??
• probleme de base du TAL: role de l’implicite, de l’inference
Le cafe est un meilleur medicament que le chocolat.Il guerit le mal de tete.
Il = cafe (vs chocolat) + la phrase (2) explique la phrase (1)+ le chocolat ne guerit pas le mal de tete;
→ la representation ciblee doit etre “normalisee”l’interpretation met en jeu plus que la forme de surface
Pourquoi c’est dur ?on parle souvent information ”non structuree”→ plutot semi-structuree
• si on veut partir de donnees textuelles pour obtenir unerepresentation formelle
L’aspirine traite le mal de tete.→treatment(D001241,D006261)
• probleme de base du TAL: formes equivalentes
L’acide acetylsalicylique soigne les cephalees.→ treatment(D001241,D006261)
• probleme de base du TAL: ambiguitesLe medecin traite le patient de tous les noms. ??
• probleme de base du TAL: role de l’implicite, de l’inference
Le cafe est un meilleur medicament que le chocolat.Il guerit le mal de tete.
Il = cafe (vs chocolat) + la phrase (2) explique la phrase (1)+ le chocolat ne guerit pas le mal de tete;
→ la representation ciblee doit etre “normalisee”l’interpretation met en jeu plus que la forme de surface
Pourquoi c’est dur ?on parle souvent information ”non structuree”→ plutot semi-structuree
• si on veut partir de donnees textuelles pour obtenir unerepresentation formelle
L’aspirine traite le mal de tete.→treatment(D001241,D006261)
• probleme de base du TAL: formes equivalentes
L’acide acetylsalicylique soigne les cephalees.→ treatment(D001241,D006261)
• probleme de base du TAL: ambiguitesLe medecin traite le patient de tous les noms. ??
• probleme de base du TAL: role de l’implicite, de l’inference
Le cafe est un meilleur medicament que le chocolat.Il guerit le mal de tete.
Il = cafe (vs chocolat) + la phrase (2) explique la phrase (1)+ le chocolat ne guerit pas le mal de tete;
→ la representation ciblee doit etre “normalisee”l’interpretation met en jeu plus que la forme de surface
Pourquoi c’est dur ?on parle souvent information ”non structuree”→ plutot semi-structuree
• si on veut partir de donnees textuelles pour obtenir unerepresentation formelle
L’aspirine traite le mal de tete.→treatment(D001241,D006261)
• probleme de base du TAL: formes equivalentes
L’acide acetylsalicylique soigne les cephalees.→ treatment(D001241,D006261)
• probleme de base du TAL: ambiguitesLe medecin traite le patient de tous les noms. ??
• probleme de base du TAL: role de l’implicite, de l’inference
Le cafe est un meilleur medicament que le chocolat.Il guerit le mal de tete.
Il = cafe (vs chocolat) + la phrase (2) explique la phrase (1)+ le chocolat ne guerit pas le mal de tete;
→ la representation ciblee doit etre “normalisee”l’interpretation met en jeu plus que la forme de surface
Quelques exemples de problemes
la ligne Paris-Toulousela ligne Bordeaux Saint-Jean-Mont-de-Marsan
segmentation
un mouton noir; arriver apres la bataille; jeter l’eponge
locutions
J’ai bien aime Une journee en enfer.Le facteur Cheval est un artiste celebre.
noms d’entites
Quelques exemples de problemes
la ligne Paris-Toulousela ligne Bordeaux Saint-Jean-Mont-de-Marsan
segmentation
un mouton noir; arriver apres la bataille; jeter l’eponge
locutions
J’ai bien aime Une journee en enfer.Le facteur Cheval est un artiste celebre.
noms d’entites
Quelques exemples de problemes
la ligne Paris-Toulousela ligne Bordeaux Saint-Jean-Mont-de-Marsan
segmentation
un mouton noir; arriver apres la bataille; jeter l’epongelocutions
J’ai bien aime Une journee en enfer.Le facteur Cheval est un artiste celebre.
noms d’entites
Quelques exemples de problemes
la ligne Paris-Toulousela ligne Bordeaux Saint-Jean-Mont-de-Marsan
segmentation
un mouton noir; arriver apres la bataille; jeter l’epongelocutions
J’ai bien aime Une journee en enfer.Le facteur Cheval est un artiste celebre.
noms d’entites
Quelques exemples de problemes
j’croibi1k G1 pb
langue non-standard
tweet; biopic; abracadabrantesque
neologismesimports d’autres langues
Marie et Jean sont amis. Marie et Jean sont francais.
connaissance du monde
Marie et Jean sont de bons amis
contexte
Quelques exemples de problemes
j’croibi1k G1 pb langue non-standard
tweet; biopic; abracadabrantesque
neologismesimports d’autres langues
Marie et Jean sont amis. Marie et Jean sont francais.
connaissance du monde
Marie et Jean sont de bons amis
contexte
Quelques exemples de problemes
j’croibi1k G1 pb langue non-standard
tweet; biopic; abracadabrantesque neologismesimports d’autres langues
Marie et Jean sont amis. Marie et Jean sont francais.
connaissance du monde
Marie et Jean sont de bons amis
contexte
Quelques exemples de problemes
j’croibi1k G1 pb langue non-standard
tweet; biopic; abracadabrantesque neologismesimports d’autres langues
Marie et Jean sont amis. Marie et Jean sont francais.connaissance du monde
Marie et Jean sont de bons amis
contexte
Quelques exemples de problemes
j’croibi1k G1 pb langue non-standard
tweet; biopic; abracadabrantesque neologismesimports d’autres langues
Marie et Jean sont amis. Marie et Jean sont francais.connaissance du monde
Marie et Jean sont de bons amiscontexte
Un peu de contexte linguistiqueLes niveaux d’analyse
• phonologie: les sons• morphologie: les mots et leur forme• syntaxe: l’organisation des mots en phrase• semantique: le sens dans la phrase• pragmatique: le sens en contexte
Exemples d’ambiguite a tous lesniveauxPhonologie
• homophones : vers, ver, vert, verre,• important pour la correction / language “non standard”• relativement mineur cependant
Exemples d’ambiguite a tous lesniveauxMorphologie
• homonymes/homographes :• car (conjonction) / car (nom)• brise (nom) / brise (verbe)• voler (dans le ciel) / voler (la banque)
• complique l’analyse syntaxique• complique l’analyse semantique• peut se combiner pour multiplier le probleme:
La petite brise la glace
Exemples d’ambiguite a tous lesniveaux
Ambiguite syntaxique
Ambiguite de structure
Jean tape la balle avec une batte
NP-SBJ DEPNP-OBJ
PP
DEP
NP
Jean tape l’ homme avec un chapeau
NP-SBJ DEPNP-OBJ
PP DEP
NP
Exemples d’ambiguite a tous lesniveaux
Ambiguite lexicale
au dela des homonyes• La tour Eiffel est une construction solide.
La construction a pris plus de temps que prevu• La voiture fauche un pieton.
Certaines parcelles sont fauchees tardivement l’ete.
Exemples d’ambiguite a tous lesniveaux
Ambiguite semantique
• Aucun etudiant n’a reussi son examen.• Toutes les 10 minutes, un homme se fait renverser par une
voiture a Paris.
Il commence a en avoir assez.
Exemples d’ambiguite a tous lesniveaux
Ambiguite semantique
• Aucun etudiant n’a reussi son examen.• Toutes les 10 minutes, un homme se fait renverser par une
voiture a Paris.
Il commence a en avoir assez.
Exemples d’ambiguite a tous lesniveaux
Ambiguite semantique
• Aucun etudiant n’a reussi son examen.• Toutes les 10 minutes, un homme se fait renverser par une
voiture a Paris. Il commence a en avoir assez.
Exemples d’ambiguite a tous lesniveauxPragmatique
• Baraque est le mari de Michelle. Son bureau est ovale.
• Bill appela Monica . La stagiaire arriva 5 minutes apres .
• Le ministre sortit de Matignon . Le perron etait envahi par lesjournalistes.
Exemples d’ambiguite a tous lesniveaux
Parfois ... il n’y a rien a comprendre
• “La pente est rude mais la route est droite.” (JP. Raffarin)• “Le liberalisme est une valeur de gauche.” (E. Macron)• “C’est beau ce stade velodrome qui est toujours plein a
l’exterieur comme a domicile.” (F. Ribery)
Comment ?
• connaissances sur le langage• connaissances “du monde”• combinaison des 2• importance des probabilites
Ce qu’on verra dans ce cours
• Des modeles de differents aspects du langage (depuis le motjusqu’au texte)
• Des techniques appliquees au TAL• Des applications au fur et a mesure, certaines plus en detail:
resume, extraction de connaissances• La methodolodie de recherche
Plan
1 Introduction
2 Les mots
3 L’importance de la syntaxe
4 Modeliser le sens
5 Gerer le contexte
6 Methodologie experimentale
Sac de motsa bag of words
pourquoi s’embeter ? on peut juste regarder au niveau des mots
→ approche “recherche d’information” : indexer un texte selon lesmots importants / apparier avec une requete
ou dans le resume, chercher les phrases avec les mots importants
ou en traduction, apparier des mots equivalents d’une langue al’autre
Pretraitement
• Pour un traitement effectif du langage, le pretraitement du textebrut est une etape importante• segmentation des mots (tokenisation)• detection des phrases• normalisation
Tokenisation
• Les textes sont representes comme chaıne de caracteres• Les mots, les espaces et la ponctuation sont encodes de la
meme facon• Il faut definir et marquer les limites de mots: tokenisation
Qu’est-ce qu’un mot ?
une suite de caracteres separees par un blanc (espace, ligne) et/oude la ponctuation ?
• apostrophes ? l’arret d’activite, aujourd’hui
• tirets ? New-York; est-il la ? video-projecteur• et s’il n’y a pas de separateur ?
• mots composes en allemand• ecriture en mandarin: suite de ’caracteres’ sans separateur• langues agglutinantes: turque, basque, langues inuites
Qu’est-ce qu’un mot ?
une suite de caracteres separees par un blanc (espace, ligne) et/oude la ponctuation ?
• apostrophes ? l’arret d’activite, aujourd’hui• tirets ? New-York; est-il la ? video-projecteur
• et s’il n’y a pas de separateur ?• mots composes en allemand• ecriture en mandarin: suite de ’caracteres’ sans separateur• langues agglutinantes: turque, basque, langues inuites
Qu’est-ce qu’un mot ?
une suite de caracteres separees par un blanc (espace, ligne) et/oude la ponctuation ?
• apostrophes ? l’arret d’activite, aujourd’hui• tirets ? New-York; est-il la ? video-projecteur• et s’il n’y a pas de separateur ?
• mots composes en allemand• ecriture en mandarin: suite de ’caracteres’ sans separateur• langues agglutinantes: turque, basque, langues inuites
Segmentation des phrases
• Certaines signes de ponctuation sont non ambigu (‘?’, ‘!’)• Le point (‘.’) est tres ambigu
• En octobre 2013, M. Obama visitera Paris.• De nombreux genres musicaux comme le motet, la cantate, etc.
se developperont au cours des siecles suivants.
• Le contexte est important pour determiner les fins de phrases
Inuits, Inuktitut, Eskimos, etc
We have the same word for falling snow, snow on the ground, snowpacked hard like ice, slushy snow, wind-driven flying snow –whatever the situation may be. To an Eskimo, this all-inclusive wordwould be almost unthinkable; he would say that falling snow, slushysnow, and so on, are sensuously and operationally different,different things to contend with; he uses different words for themand for other kinds of snow.
(Whorf 1940; in Carroll 1956, 216). Cite par G. Pullum, The GreatEskimo Vocabulary Hoax (277).
Combien de mots pour neige enfrancais ?
• neige
neiges
• poudreuse• soupe• slush (quebecois)
et en latin ?
Combien de mots pour neige enfrancais ?
• neige neiges• poudreuse• soupe• slush (quebecois)
et en latin ?
NormalisationLemmatisation
• capitales / minuscules : Demain/demain (mais USA vs usa)• graphies: cle/clef, pizzeria/pizzeria• abbreviations: etc, svp, ...• inflections:
• conjugaison est, serai, etaient, suis, es : etre• nombre/genre: associatives : associatif
• lemme ≈ entree du dictionnairelemmatisation : reduction a la forme de base
• mais deja des ambiguites :• etais : etre/etayer• suis : etre/suivre
→ morphologie
Demonstration: manipulation de texteUnix for Poets K. Church
• beaucoup de manipulations de textes peuvent se faire avec ...
• tr, grep, sort, etc• outil unique pour chaque tache• La sortie d’un outil peut etre reliee a l’entree d’un autre en
utilisant le tuyau (|)
Demonstration: manipulation de texteUnix for Poets K. Church
• beaucoup de manipulations de textes peuvent se faire avec ...• tr, grep, sort, etc
• outil unique pour chaque tache• La sortie d’un outil peut etre reliee a l’entree d’un autre en
utilisant le tuyau (|)
Demonstration: manipulation de texteUnix for Poets K. Church
• beaucoup de manipulations de textes peuvent se faire avec ...• tr, grep, sort, etc• outil unique pour chaque tache
• La sortie d’un outil peut etre reliee a l’entree d’un autre enutilisant le tuyau (|)
Demonstration: manipulation de texteUnix for Poets K. Church
• beaucoup de manipulations de textes peuvent se faire avec ...• tr, grep, sort, etc• outil unique pour chaque tache• La sortie d’un outil peut etre reliee a l’entree d’un autre en
utilisant le tuyau (|)
Outils de ligne de commande
• cat: concatener (imprimer) le contenu• sort: trier les lignes• uniq: filtrer des lignes repetees• tr: remplacer ou supprimer des caracteres• cut: supprimer une partie d’une ligne• paste: fusionner des lignes• grep: imprimer les lignes qui correspondent a un motif
particulier• sed: editeur de flux pour filtrer ou changer des lignes de texte• head/tail/wc: n lignes au debut/a la fin d’un fichier ;
comptage
Eric Brill (en 2001): “Le Tal est essentiellement une amelioration degrep”
Tokenisation simple sous UNIX
Exemple: compter les frequences des mots individuelles
$ cat article.txtIncident diplomatique avec la Russie dans l’espace aerien francais
La Russie a deplore lundi 19 octobre un "dangereux incident"impliquant un avion de chasse francais et un appareil transportant lepresident de la chambre basse du Parlement russe, la Douma, dansl’espace aerien francais.
Le ministere russe des affaires etrangeres, M. Lavrov, a convoquel’ambassadeur de France a Moscou pour protester contre ce qu’il a jugeetre une approche dangereuse de l’avion transportant le president dela Douma, M. Narichkine, qui se rendait a Geneve.
Approche naıve
$ cat article.txt |tr " " "\n"|sort|uniq -c21 193 a2 a2 aerien...1 etrangeres,1 etre2 francais1 francais.1 France1 Geneve....2 transportant3 un1 une
Approche naıve
$ cat article.txt |tr " " "\n"|sort|uniq -c21 193 a2 a2 aerien...1 etrangeres,1 etre2 francais1 francais.1 France1 Geneve....2 transportant3 un1 une
IncidentdiplomatiqueaveclaRussiedansl’espaceaerienfrancais...
Approche naıve
$ cat article.txt |tr " " "\n"|sort|uniq -c21 193 a2 a2 aerien...1 etrangeres,1 etre2 francais1 francais.1 France1 Geneve....2 transportant3 un1 une
IncidentdiplomatiqueaveclaRussiedansl’espaceaerienfrancais...
19aaaaaaerienaerienaffaires...
Amelioration
$ cat article.txt |sed ’s/\W/\n/g’|sort|uniq -c141 193 a2 a2 aerien...1 etrangeres1 etre3 francais1 France1 Geneve...2 transportant3 un1 une
Amelioration
$ cat article.txt |sed ’s/\W/\n/g’|sort|uniq -c141 193 a2 a2 aerien...1 etrangeres1 etre3 francais1 France1 Geneve...2 transportant3 un1 une
IncidentdiplomatiqueaveclaRussiedanslespaceaerien...
Amelioration
$ cat article.txt |sed ’s/\W/\n/g’|sort|uniq -c141 193 a2 a2 aerien...1 etrangeres1 etre3 francais1 France1 Geneve...2 transportant3 un1 une
IncidentdiplomatiqueaveclaRussiedanslespaceaerien...
...19aaaaaaerienaerienaffaires...
Trie par frequence
$ cat article.txt |sed ’s/\W/\n/g’|sort|uniq -c|sort -nr145 de4 la4 l3 un3 francais3 a2 transportant2 Russie2 russe...
Liste des mots qui commencent par ‘p’
$ cat article.txt |sed ’s/\W/\n/g’|grep "ˆ[Pp]"|sort|uniqParlementpourpresidentprotester
Alternativement
1402 d1617 ne1788 je1852 est1938 a1943 en1971 qu1999 qui2163 l2212 il2248 les2654 la3318 et3807 que5186 de
Qu’est-ce qu’un mot important ?
• un mot frequent ?• un mot “plein” frequent ?
suite du comptage dans le Discours de la methode:
515 choses520 point544 chose
Distribution des mots
attention a la difference occurrence/type de mots (token/type)
• 120000 occurrences dans le Discours
• 9000 types differents• 4300 apparaissent une seule fois ...
“Zipf Law” la loi de Zipf : distribution exponentielledifficulte de faire des statistiques sur une majorite d’evenements“rares”.
Distribution des mots
attention a la difference occurrence/type de mots (token/type)
• 120000 occurrences dans le Discours• 9000 types differents
• 4300 apparaissent une seule fois ...
“Zipf Law” la loi de Zipf : distribution exponentielledifficulte de faire des statistiques sur une majorite d’evenements“rares”.
Distribution des mots
attention a la difference occurrence/type de mots (token/type)
• 120000 occurrences dans le Discours• 9000 types differents• 4300 apparaissent une seule fois ...
“Zipf Law” la loi de Zipf : distribution exponentielledifficulte de faire des statistiques sur une majorite d’evenements“rares”.
Distribution des mots
attention a la difference occurrence/type de mots (token/type)
• 120000 occurrences dans le Discours• 9000 types differents• 4300 apparaissent une seule fois ...
“Zipf Law” la loi de Zipf : distribution exponentielledifficulte de faire des statistiques sur une majorite d’evenements“rares”.
Informativite
Pour la recherche d’information (chercher un texte parmi d’autres),le resume (chercher une phrase parmi d’autres), un mot importantest :• frequent dans un texte donne• caracteristique du texte: il ne doit pas etre partout• mesure de base: tf.idf “term frequency” . “inverse document
frequency”• variantes possibles (okapi bm25)
Morphologie
etude de la structure interne des motsex: devalorisation, sauvetage• racine : val-, sauv-• affixes
• suffixe: -sation, -age• prefixe: de-• infixe (pas en francais)• interfixe: -et-• circonfixe (pas en francais): ex participe passe en allemand
ge-sag-t
Morphologie
• inflection : conjugaison, pluriels etc : ne change pas lacategorie
• derivation : peut changer le sens/la categorie• in-amical, construire/construction• productif : on peut inventer de nouveaux derives de facon
reguliere (lepen-isation, abracadabrant-esque• empilable: valeur, valoriser, valorisation, devalorisation
constituer, constitution, constitutionnel, anticonstitutionnel,anticonstitutionnellement
A quoi ca sert ?
• en recherche d’information: on reduit a la racine en enlevantles suffixes
• brutal ... et ne marche pas pour toutes les langues• generalisation / nouveaux mots• difference de sens : ex en traduction morpho dans un langage,
ordre des mots dans un autre
Sequence de mots
au-dela du mot seul et de sa forme :• l’ordre des mots• collocations• sequence de mots: les n-grams
¡ ¿
Plan
1 Introduction
2 Les mots
3 L’importance de la syntaxe
4 Modeliser le sens
5 Gerer le contexte
6 Methodologie experimentale
Plan
1 Introduction
2 Les mots
3 L’importance de la syntaxe
4 Modeliser le sens
5 Gerer le contexte
6 Methodologie experimentale
Plan
1 Introduction
2 Les mots
3 L’importance de la syntaxe
4 Modeliser le sens
5 Gerer le contexte
6 Methodologie experimentale