traitement automatique des langues : fondements et...

87
Traitement automatique des langues : Fondements et applications Cours 1 : Pr´ esentation du domaine Tim van de Cruys & Philippe Muller 2016—2017

Upload: vannhu

Post on 13-Sep-2018

217 views

Category:

Documents


0 download

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

Exemple: le Question-reponse avecWatson

Watson

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

Watson construit ses connaissances apartir de texte

Les mots clefs ne suffisent pas

Analyse semantique, raisonnement,decision

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

Qu’est-ce qu’un mot important ?

• un mot frequent ?

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

tr -sc ’[[:alpha:]]’ ’\n’ < discours_methode.txt| sort | uniq -c | sort -n

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”.

Qu’est-ce qu’un mot important ?

• un mot frequent ?• un mot “plein” frequent ?• informativite

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

Plan

1 Introduction

2 Les mots

3 L’importance de la syntaxe

4 Modeliser le sens

5 Gerer le contexte

6 Methodologie experimentale