• Aucun résultat trouvé

Apprentissage non-supervisé de la morphologie des langues à l’aide de modèles bayésiens non-paramétriques

N/A
N/A
Protected

Academic year: 2021

Partager "Apprentissage non-supervisé de la morphologie des langues à l’aide de modèles bayésiens non-paramétriques"

Copied!
127
0
0

Texte intégral

(1)

HAL Id: tel-02354184

https://tel.archives-ouvertes.fr/tel-02354184

Submitted on 7 Nov 2019

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of

sci-entific research documents, whether they are

pub-lished or not. The documents may come from

teaching and research institutions in France or

abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est

destinée au dépôt et à la diffusion de documents

scientifiques de niveau recherche, publiés ou non,

émanant des établissements d’enseignement et de

recherche français ou étrangers, des laboratoires

publics ou privés.

langues à l’aide de modèles bayésiens non-paramétriques

Kevin Löser

To cite this version:

Kevin Löser.

Apprentissage non-supervisé de la morphologie des langues à l’aide de modèles

bayésiens non-paramétriques. Informatique et langage [cs.CL]. Université Paris Saclay (COmUE),

2019. Français. �NNT : 2019SACLS203�. �tel-02354184�

(2)

Th

`ese

de

doctor

at

NNT

:

2019SA

CLS203

morphologie des langues `a l’aide de

mod `eles bay ´esiens non-param ´etriques

Th `ese de doctorat de l’Universit ´e Paris-Saclay

pr ´epar ´ee `a l’Universit ´e Paris-Sud Ecole doctorale n◦580 Sciences et technologies de l’information et de la communication (STIC) Sp ´ecialit ´e de doctorat : Informatique

Th `ese pr ´esent ´ee et soutenue `a Orsay, le 9 juillet 2019, par

M. K

EVIN

L ¨

OSER

Composition du Jury :

M. PIERREZWEIGENBAUM

Directeur de Recherche, CNRS (LIMSI) Pr ´esident M. BENOˆITCRABBE´

Professeur, Universit ´e Paris Diderot (UFRL) Rapporteur M. CHRISTOPHECERISARA

Charg ´e de Recherche, Universit ´e Henri-Poincar ´e (LORIA) Rapporteur M. ALEXANDREALLAUZEN

(3)

Remerciements

Je souhaite remercier en premier lieu mon directeur de thèse, M. Alexandre Allauzen, Professeur à

l'université Paris Sud, pour sa disponibilité, pour le temps conséquent qu'il m'a accordé et pour tous

les échanges que nous avons pu avoir au cours de ces cinq années.

Un grand merci aux rapporteurs de cette thèse, M. Christophe Cerisara, Chargé de Recherche au

Laboratoire lorrain de recherche en informatique et ses applications, et M. Benoît Crabbé, Maître de

Conférences à l'université Paris Diderot pour l'intérêt qu'ils ont porté à mon travail.

J'associe à ces remerciements M. Pierre Zweigenbaum, Directeur de Recherche à l'université Paris

Sud pour avoir accepté d'examiner mon travail.

Je remercie également M. François Yvon, Directeur du Laboratoire d'informatique pour la

mécanique et les sciences de l'ingénieur, Mme Anne Vilnat, Directrice adjointe de ce même

laboratoire, et M. Jean-Luc Gauvain, Directeur du groupe Traitement du Langage Parlé pour

m'avoir accueilli au sein de leur équipe.

(4)

Table des matières

Introduction 1

0.1 Les morphèmes en linguistique . . . 1

0.2 Le rôle des morphèmes en traitement des langues . . . 2

0.2.1 L’apprentissage statistique . . . 2

0.2.2 Réduire la parcimonie des données à l’aide de la morphologie 4 0.3 But . . . 5

1 L’apprentissage non-supervisé de morphologie 7 1.1 Approches par letter successor varieties . . . . 7

1.1.1 Un critère distributionnel de segmentation de chaînes de phonèmes . . . 7

1.1.2 Raffinements . . . 8

1.1.3 Implémentation . . . 9

1.1.4 Recherche de paradigmes . . . 10

1.2 Approches par longueur de description minimale . . . 12

1.2.1 Longueur de description d’un jeu de données . . . 12

1.2.1.1 Complexité de Kolmogorov . . . 12

1.2.1.2 Le principe de longueur de description minimale 13 1.2.2 Linguistica . . . 14

1.2.2.1 Modèles de racines, suffixes et signatures et lon-gueurs de description associées . . . 14

1.2.2.2 Recherche d’un modèle optimal . . . 17

1.2.3 Morfessor . . . 19

1.2.3.1 Version Baseline (2002) . . . 19

1.2.3.2 Categories-ML (2004) . . . 20

1.2.3.3 Categories-MAP (2005) . . . 22

1.2.3.4 Versions ultérieures . . . 24

1.3 Méthodes bayésiennes non-paramétriques . . . 24

1.3.1 Modèles n-grammes . . . 26

1.3.1.1 Modèle unigramme . . . 26

1.3.1.2 Modèles d’ordre supérieur . . . 27

1.3.2 Adaptor grammars . . . 29

1.3.2.1 Grammaires hors-contexte probabilistes . . . 30

1.3.2.2 Adapteurs . . . 31 3

(5)

1.3.2.3 Remarques . . . 32

1.4 Autres approches . . . 33

1.5 Critères de classification . . . 35

2 Processus de Pitman-Yor 37 2.1 Approche bayésienne et distribution de Dirichlet . . . 37

2.1.1 Critère de vraisemblance maximale . . . 37

2.1.2 Approche bayésienne . . . 39

2.1.3 Distribution de Dirichlet . . . 42

2.2 Modèles non-paramétriques . . . 44

2.2.1 Processus de Dirichlet . . . 45

2.2.2 Le processus de Dirichlet comme a priori bayésien . . . . 45

2.2.3 Le processus de restaurant chinois . . . 47

2.2.3.1 Définition . . . 47

2.2.3.2 Comportement asymptotique . . . 48

2.2.3.3 Lien avec les processus de Dirichlet . . . 51

2.2.4 Processus de Pitman-Yor . . . 53 2.2.4.1 Definition . . . 53 2.2.4.2 Loi de Zipf . . . 54 2.3 Un algorithme de segmentation . . . 56 2.3.1 Modèle génératif . . . 57 2.3.1.1 Scénario . . . 57 2.3.1.2 Justification . . . 58 2.3.2 Inférence . . . 59 2.3.2.1 Déroulement . . . 59

2.3.2.2 Probabilité d’une segmentation conditionnelle-ment aux précédentes . . . 59

2.3.2.3 Echantillonnage d’une segmentation . . . 61

2.3.3 Expériences . . . 65

2.3.3.1 Données et évaluation . . . 65

2.3.3.2 Expériences et résultats . . . 66

3 Processus hiérarchiques 69 3.1 Hiérarchies d’adapteurs . . . 69

3.1.1 Exemple introductif : modèle n-gramme de morphèmes . 69 3.1.2 Définition formelle . . . 72

3.1.3 Restaurant chinois hiérarchique . . . 73

3.1.3.1 Distribution de probabilité associée à un CRP . 73 3.1.3.2 Assignation d’une table à un nouveau client . . 73

3.1.3.3 Conditionnement à un ensemble d’observations . 74 3.1.3.4 Remarque . . . 75

3.1.3.5 Exemple . . . 76

3.2 Modèle n-gramme de séquences de morphèmes . . . 77

3.2.1 Description . . . 77

3.2.2 Inférence . . . 79

(6)

3.2.4 Inférence du modèle orthographique . . . 81

3.2.5 Expériences . . . 82

3.3 Modèle semi-markovien de classes morphologiques . . . 83

3.3.1 Génération de formes de mots . . . 84

3.3.2 A prioris . . . 86

3.3.3 Echantillonnage d’une analyse . . . 87

3.3.4 Expériences . . . 89

3.3.4.1 Protocole . . . 89

3.3.4.2 Résultats quantitatifs . . . 90

3.3.4.3 Morphotactique induite . . . 92

4 Choix des hyperparamètres 95 4.1 Approche bayésienne de l’inférence d’hyperparamètres . . . 95

4.1.1 Hyperpriors . . . 95

4.1.2 A posteriori sur les hyperparamètres . . . 96

4.1.3 Cas des processus hiérarchiques . . . 98

4.1.3.1 Sans partage d’hyperparamètres . . . 98

4.1.3.2 Avec partage d’hyperparamètres . . . 98

4.2 Aspects algorithmiques . . . 99

4.2.1 Calcul des a posteriori . . . 99

4.2.1.1 “Sommation par tranches” . . . 100

4.2.1.2 Approximation de la fonction Gamma . . . 102

4.2.1.3 Maintien des compteurs . . . 102

4.2.2 Echantillonnage par tranches . . . 103

4.2.2.1 Méthode de rejet . . . 103

4.2.2.2 Méthode par tranches . . . 103

4.3 Expériences . . . 106

4.3.1 Contraintes de longueur . . . 106

4.3.2 Résultats . . . 108

(7)
(8)

Introduction

0.1 Les morphèmes en linguistique

En linguistique, les morphèmes désignent des unités linguistiques à une échelle intermédiaire entre le mot et le phonème, caractérisées par le fait d’être les unités significatives minimales (c’est-à-dire les plus petites unités porteuses de sens). Par exemple, le mot parcourir est composé de trois morphèmes : le préfixe par-, la racine -cour- et la désinence -ir (marque de l’infinitif). Chacune de ces unités est :

— significative dans le sens où la supprimer ou la remplacer par une autre unité (par exemple supprimer ou remplacer par- pour former par exemple :

courir, discourir, accourir) entraîne une modification du sens du mot.

— minimale dans le sens où chacune de ces unités ne peut pas à son tour être elle-même décomposée en sous-unités significatives.

Cette définition n’est pas sans poser de nombreuses difficultés. Par exemple, considérons les décompositions en morphèmes de différentes formes du verbe

aller : v-ais, v-as, all-ons, ir-ons. Dans chacune de ces formes, on trouve une

racine (v-, all-, ir-) porteuse du sens de l’action d’aller ainsi qu’un suffixe -ais,

-as, -ons qui modifie le sens en désignant différentes personnes. La question

qui se pose est : faut-il considérer v-, all-, ir- comme trois unités distinctes, ou comme trois réalisations différentes d’une même unité abstraite ? La deuxième option est suggérée par le fait que les formes considérées sont toutes des conju-gaisons d’un même verbe, que pour la grande majorité des verbes les différentes formes conjuguées possèdent un morphème “racine” en commun, et donc qu’il serait plus élégant d’expliquer les différentes formes du verbe irrégulier aller comme composées elles aussi d’une racine abstraite commune, dont la réalisa-tion concrète est modifiée par les autres morphèmes présents. Un autre argument en faveur de cette explication est que v-, all-, ir- ont un sens identique (celui de l’action d’aller). Cette constatation a entraîné les linguistes à établir une distinction entre morphèmes (unités abstraites) et morphes (les différentes réa-lisations concrètes d’une unité abstraite). Ainsi dans notre exemple, v-, all-, ir-sont des morphes distincts qui ir-sont tous les trois des réalisations concrètes d’un même morphème abstrait. On dit alors que v-, all-, ir- sont des allomorphes.

D’autres langues présentent des difficultés supplémentaires. Par exemple, en arabe, ’aktubu (1ps, présent), taktubu (2ps, présent), yaktubu (3ps, présent),

(9)

katabtu (1ps, passé), katabta (2ps, passé), kataba (3ps, passé)1 sont toutes des formes conjuguées du verbe kataba (lire). Ces différentes formes peuvent être expliquées de la manière suivante : entre les trois consonnes k-t-b porteuses du sens de “lire” (et ayant donc le rôle d’une racine) sont intercalés différents “schè-mes” modifiant le sens en désignant une personne : ’a_ _u_u pour désigner la 1ère personne du singulier au présent, _a_a_tu pour désigner la 1ère personne du singulier au passé, ta_ _u_u pour désigner la 2ème personne du singulier au présent, _a_a_ta pour désigner la 2ème personne du singulier au passé, et ainsi de suite... Ces mêmes schèmes vocaliques sont utilisés pour conjuguer de nombreux verbes en arabe : ainsi le verbe darasa (étudier) dont la racine est don-née par les trois consonnes d-r-s aura comme formes conjuguées : ’adrusu (1ps, présent), tadrusu (2ps, présent), yadrusu (3ps, présent), darastu (1ps, passé),

darasta (2ps, passé), darasa (3ps, passé). Ainsi les morphèmes en présence sont

d’une part les racines à trois consonnes (k-t-b, d-r-s, ...), d’autre part les schèmes s’intercalant entre les consonnes (’a_ _u_u, _a_a_tu, ...). Nous constatons donc que dans la langue arabe (et c’est une caractéristique de la plupart des langues sémitiques comme aussi l’hébreu ou l’araméen), lorsque nous parlons de morphèmes comme d’“unités minimales”, “unité” n’est pas à comprendre au sens de “chaîne contigue de phonèmes” : ici il s’agit de chaînes discontinues susceptibles d’accueillir d’autres chaînes discontinues par intercalation.

0.2 Le rôle des morphèmes en traitement des

langues

En traitement automatique des langues (TAL), on adopte un point de vue moins rigoureux qu’en linguistique et en général on ignore toutes les difficul-tés inhérentes à la définition des morphèmes, les questions d’allomorphie et les distinctions entre morphe et morphème, puisqu’on se préoccupe moins de bien fonder des notions sur le plan théorique, que de produire des modèles implé-mentables et efficaces. Toutefois, pour des raisons différentes qu’en linguistique, les morphèmes jouent également un rôle important.

0.2.1 L’apprentissage statistique

L’approche moderne en TAL est l’apprentissage statistique qui consiste à développer des systèmes de TAL non pas en codant “à la main” des règles linguistiques (les systèmes à base de règles étant une approche qui fut autrefois plus répandue), mais en inférant ces règles à l’aide de statistiques obtenues sur un corpus (éventuellement annoté par des linguistes). Par exemple, si on voulait concevoir un système de traduction automatique :

— Avec l’approche à base de règles, on écrirait sous forme informatique un dictionnaire bilingue associant à chaque mot de la langue source ses tra-1. 1ps : première personne du singulier, 2ps : deuxième personne du singulier, 3ps : troisième personne du singulier.

(10)

ductions possibles, et on coderait aussi (à l’aide de linguistes) des règles de réordonnancement pour que les phrases traduites soient conformes à l’ordre des mots dans la langue cible.

— Avec l’approche par apprentissage statistique, on fournirait à une machine un corpus bilingue, c’est-à-dire un grand nombre d’exemples de phrases dans la langue source associées à leur traduction (réalisée par des humains) dans la langue cible. Puis un algorithme calculerait des statistiques sur ce corpus, par exemple :

— pour tout couple de mots (ws, wc) où ws est un mot de la langue

source et wc est un mot de la langue cible, le nombre de fois où wcapparaît dans une phrase traduite du corpus lorsque ws apparaît

dans la phrase correspondante en langue source. Ceci constituerait le

modèle de traduction et aiderait à la traduction de mots individuels.

— pour tout couple de mots (w1, w2) de la langue cible, le nombre de fois que w2apparaît à la suite de w1dans la langue cible. Ceci consti-tuerait le modèle de langue et aiderait à agencer les mots traduits de sorte à avoir un ordre conforme à celui de la langue cible.

Une fois ces statistiques calculées, étant donnée une phrase source non observée dans le corpus, on pourrait produire une phrase en langue cible, à l’aide d’un algorithme qui rechercherait une phrase (en langue cible) effectuant un bon compromis entre les indications données par le modèle de traduction et par le modèle de langue.

Le terme d’apprentissage est du au fait que dans cette dernière approche, la machine semble “découvrir” par elle-même des règles de traduction et gé-néraliser ces règles à des exemples de phrases non rencontrées dans le corpus d’apprentissage.

Selon cette approche, la qualité d’un système sera d’autant plus grande que le corpus d’apprentissage qui lui aura été fourni sera de taille suffisamment importante pour épuiser les possibiltés combinatoires de la langue à traiter. Par exemple, un corpus trop petit couvrira une partie insuffisante du lexique de la langue : que faire alors lorsqu’il sera demandé au système de traduire un mot qu’il n’a pas rencontré dans le corpus2? Ce problème de parcimonie

des données est lié à la structure même des langues où la majorité des

évène-ments possibles sont des évèneévène-ments rares (par exemple, la plupart des mots qu’on rencontrera dans un dictionnaire seront des mots rares), et est d’autant plus saillant que pour de nombreuses langues, les données informatiques sont en quantité trop limitée pour obtenir des systèmes de qualité. Ce problème est lié au problème du sur-apprentissage (overfitting), à savoir que pour des évè-nements rares, un système statistique aura tendance à accorder trop de crédit aux statistiques du corpus relatives à cet évènement rare. Par exemple, si dans un corpus le mot rare chryséléphantines n’apparait que dans une phrase (“Ces

anciennes chryséléphantines grecques ont connu un nouvel attrait pour les col-lectionneurs”), un système se fiant aux statistiques de succession de mots dans

(11)

le corpus pourra croire à tort que le mot chryséléphantines est nécessairement suivi du mot grecques en français, et pourra par exemple mal traduire en fran-çais la phrase “In the 20th century, a few European chryselephantine sculptures

of Greek inspiration were produced”.

0.2.2 Réduire la parcimonie des données à l’aide de la

morphologie

Les problèmes de parcimonie des données et de sur-apprentissage appa-raissent lorsque la diversité du lexique est trop grande. Une solution est alors de travailler à une échelle plus élémentaire que le mot, d’où l’utilité de la morpho-logie en traitement des langues. C’est particulièrement le cas dans les langues qualifiées de morphologiquement riches (comme le turc, le finnois ou le hon-grois), où les mots sont formés en combinant un grand nombre de morphèmes qui déterminent chacun un aspect du sens. Dans certaines langues, cette com-binatoire est telle qu’un seul mot peut exprimer un sens qui ne pourrait être traduit que par une phrase entière dans d’autres langues (en inuit, le seul mot “angyaghillangyugtug” signifie “il veut acheter un grand bateau”.3). En effet, lorsque la combinatoire morphologique est riche, les formes de mots prolifèrent et il devient d’autant plus difficile pour un corpus d’offrir une couverture suffi-sante du lexique possible. Décomposer un mot en ses morphèmes constituants permet alors de “factoriser” le lexique et de travailler à une échelle présentant un moins grand nombre d’évènements rares. Par exemple, considérons en français les neuf verbes compliquer, comparer, impliquer, parer, répliquer, réparer, porter,

comporter, importer, ainsi que leurs formes conjuguées au présent de l’indicatif.

Prendre en compte l’ensemble de ces formes en travaillant à l’échelle du mot nécessiterait 9 × (5 + 1) = 54 mots (car 9 verbes, et pour chaque verbe l’infinitif ainsi que 5 personnes puisque la 1ère et 3ème personne du singulier sont les mêmes). En revanche, en travaillant sur le lexique de morphèmes contenant les préfixes com-, im-, ré-, les racines -pliqu-, -par-, -port- et les suffixes

-er,-e,-es,-ons,-ez,-ent, le lexique nécessaire est réduit à 3 + 3 + 6 = 12 morphèmes. Cette

factorisation se base sur les aspects concaténatifs de la morphologie du fran-çais : c’est-à-dire que les morphèmes considérés sont des chaînes de caractères (ou de phonèmes) contiguës, et les formes de mots capturées par ce lexique de morphèmes s’obtiennent par concaténation de ces morphèmes.

De même, dans l’exemple de la langue arabe évoqué plus haut, distinguer les racines consonantiques des schèmes venant s’y intercaler permettrait de fac-toriser le lexique des verbes. Il s’agirait pour cela de traiter des phénomènes de

morphologie non-concaténative : en effet, il ne s’agit plus d’une simple

conca-ténation de morphèmes se manifestant par des chaînes de caractères (ou de phonèmes) contiguës. La morphologie non-concaténative pose des problèmes supplémentaires en TAL, notamment sur le plan algorithmique, et dans cette thèse nous n’aborderons que la morphologie concaténative.

3. angya = bateau, ghilla = grand, ng = acquérir, yug = volonté, tug = 3è personne du singulier

(12)

Enfin évoquons deux problèmes de TAL apparentés à l’apprentissage de mor-phologie :

— La tokénisation (segmentation en mots) : il s’agit d’une tâche consistant à segmenter un flux continu de phonèmes (ou de caractères) en mots. Cette tâche est utile notamment dans le traitement des langues non écrites pour lesquelles les seules données sont des enregistrements sur lesquels ne figurent pas de coupures explicites entre les mots. Un premier traitement des données préalable à tout traitement ultérieur de telles langues nécessite de les segmenter en mots. De même qu’en apprentissage de morphologie, il s’agit de découvrir dans des chaînes de caractères/phonèmes des unités minimales permettant d’expliquer un grand nombre de formes possibles. La différence principale avec la morphologie est une différence d’échelle : alors qu’en morphologie, on cherchera à segmenter des mots en phonèmes, en tokénisation on cherchera à segmenter des phrases en mots.

— La compression de texte : puisque la connaissance de la morphologie d’une langue permet de se ramener à un lexique moins divers, elle permet aussi d’encoder du texte à moindre coût.

0.3 But

Dans cette thèse, nous aborderons le problème de l’apprentissage de la mor-phologie dans un cadre non-supervisé, c’est-à-dire à partir de texte brut dénué de toute annotation par des linguistes, et à l’aide de modèles n’ayant recours à aucune connaissance experte. Notre but est d’apporter les contributions sui-vantes :

— Présenter un panorama des méthodes existantes de traitement de la mor-phologie, ainsi que quelques points de repère pour s’orienter dans la di-versité de ces méthodes.

— Décrire une application des méthodes bayésiennes non-paramétriques au traitement de la morphologie. Ces méthodes permettent de modéliser des données en recherchant un compromis entre deux objectifs opposés : la fidélité du modèle aux données, et la simplicité du modèle. Nous présente-rons ces méthodes d’une part sous l’aspect formel de modèles probabilistes en utilisant une formalisation mathématique, d’autre part sous leurs as-pects algorithmiques en abordant les difficultés liées à une implémentation computationnellement efficace de celles-ci.

— Évaluer la pertinence des segmentations morphologiques obtenues par ces méthodes, à l’aune de segmentations de référence produites par des lin-guistes.

Le contenu des chapitres est le suivant :

— Chapitre 1 : Nous présentons un aperçu général de la littérature concer-nant le traitement de la morphologie, en présentant de manière plus ap-profondie deux méthodes ayant connu un succès notoire : Linguistica et

(13)

Morfessor. Enfin nous proposons une grille de classification des différentes

approches selon certains axes pouvant servir de points de repère dans la littérature.

— Chapitre 2 : Nous introduisons les aspects mathématiques des processus de Dirichlet et de Pitman-Yor, et présentons comme application de la théorie un premier algorithme de segmentation morphologique se basant sur une explication des formes de mots comme échantillons d’un modèle unigramme de morphèmes.

— Chapitre 3 : Nous introduisons un formalisme mathématique afin de défi-nir les processus de Pitman-Yor hiérarchiques qui permettent de modéliser de manière plus fine des dépendances entre morphèmes. Comme applica-tion, nous présentons et évaluons deux algorithmes de segmentation : l’un se basant sur un modèle n-gramme de morphèmes, l’autre sur un modèle semi-Markov caché regroupant les morphèmes en classes morphologiques et induisant une représentation de la morphologie de la langue comme un automate à états finis.

— Chapitre 4 : Nous traitons la question du choix des hyperparamètres dans un processus de Pitman-Yor hiérarchique et décrivons une stratégie d’échantillonnage des hyperparamètres selon un a posteriori bayésien. Les aspects algorithmiques du calcul de cet a posteriori sont traités. Enfin nous évaluons l’influence du rééchantillonnage des hyperparamètres sur la performance de nos méthodes.

(14)

Chapitre 1

L’apprentissage

non-supervisé de

morphologie

1.1 Approches par letter successor varieties

1.1.1 Un critère distributionnel de segmentation de chaînes

de phonèmes

Le linguiste Zellig Harris publia un des articles initiateurs de la recherche en segmentation morphologique non-supervisée [30]. Le but de cet article n’était pas de décrire un algorithme de segmentation pouvant être utilisé pour le traite-ment informatique des langues, mais de fournir aux linguistes un critère permet-tant de délimiter des unités telles que des morphèmes ou des mots dans un flux continu de phonèmes. De plus, Harris cherchait un critère purement distribu-tionnel, c’est-à-dire un critère uniquement basé sur les statistiques d’apparition des phonèmes dans les discours des locuteurs, et ne nécessitant pas de prendre en compte l’aspect sémantique, c’est-à-dire les modifications de sens que certaines chaînes de phonèmes imposaient au discours.

L’idée de Harris découle de l’observation suivante : il est possible de segmen-ter une chaîne de phonèmes en cherchant les endroits où cette chaîne s’articule, c’est-à-dire en cherchant les segments de cette chaîne qui auraient pu être rem-placés par une grande variété d’autres segments tout en conservant une phrase bien formée. Par exemple, considérons la phrase (non segmentée) he’squicker. Considérons d’une part les segments qui auraient pu être substitués au segment -icker, par exemple :

— -ick pour former la phrase : he’s quick — -aint pour former la phrase : he’s quaint — -alified pour former la phrase : he’s qualified

(15)

— -iteacharacter pour former la phrase : he’s quite a character A présent regardons ce qu’il en est du segment -quick- :

— -fast- pour former la phrase : he’s faster — -slow- pour former la phrase : he’s slower — -bigg- pour former la phrase : he’s bigger — -small- pour former la phrase : he’s smaller

— et ainsi de suite... toutes les racines d’adjectifs admettant une forme com-parative finissant en -er peuvent être utilisées

— sans compter d’autres exemples comme -clev- pour former la phrase :

he’s clever

Ainsi, le segment -quick- possède une bien plus grande variété de segments qui lui sont substituables que le segment -icker. Selon le critère de Harris, on en déduit que le segment -quick- est un bien meilleur candidat pour être un segment de la phrase que le segment -icker.

Dans l’article de Harris, le cadre est le suivant : on cherche à segmenter une certaine chaîne de phonèmes (“utterance”) U en se reférant à un corpus C de chaînes de phonèmes “identiques à U”. La première procédure proposée pour mettre en oeuvre ce critère est la suivante : si U = u1u2. . . ul (où ui sont des

phonèmes), pour tout préfixe uk

1= u1. . . uk−1(k ≤ l) de U, on calcule la variété

de successeurs de uk

1, notée S(uk1), de la manière suivante : — Initialement, S(uk

1) est un ensemble vide. — A chaque fois que uk

1 apparaît comme préfixe d’une chaîne de phonèmes

c∈ C, on ajoute à S(uk

1) le phonème de c qui succède immédiatement à

uk

1.

Par exemple, si on souhaite segmenter U : he’squicker et que le cor-pus de chaînes de phonèmes à disposition contient : he’squick, he’squaint, he’squalified, he’squiteacharacter, he’sfaster, he’sslower, he’sbigger, he’ssmaller, he’sclever, alors par exemple :

— La variété de successeurs S(he’squ) contiendra : i,a. — La variété de successeurs S(he’s) contiendra : q,f,s,b,c.

Harris observe alors que lorsqu’on suit l’évolution de la taille de S(uk

1) le long de la chaîne (si tant est que le corpus de référence est suffisamment grand), cette taille aura tendance à décroître, puis à effectuer un pic à l’endroit d’une articu-lation, puis décroître à nouveau, et ainsi de suite. Afin de segmenter la chaîne, Harris propose d’introduire une coupure à chaque position k où |S(uk

1)| présente un pic (sans pour autant définir rigoureusement ce qu’il considère comme un pic).

1.1.2 Raffinements

(16)

— Variétés de prédécesseurs : D’abord, il constate un problème de

parci-monie du corpus lorsque la chaîne à segmenter est trop longue : pour des k

élevés, même si la position k est une coupure linguistiquement pertinente, il se peut qu’il y ait trop peu de chaînes dans le corpus de référence qui commencent par uk

1 pour fournir une bonne estimation de |S(uk1)|. Une solution proposée est de prendre aussi en compte les variétés de

prédeces-seurs, c’est-à-dire pour tout suffixe ul

j= uj. . . ulde U, compter le nombre

de phonèmes différents qui précèdent ul

j et introduire une coupure là où

ce nombre présente un pic.

— Variétés d’insertions : Pour chaque position k de U, recenser les chaînes du corpus qui commencent par uk

1et terminent pas ulk. Pour chaque chaîne

de la forme : c = u1. . . uk−1ck+1. . . ck+i

� �� �

insertion

uk. . . ul, ajouter ck+1. . . ck+i à

un ensemble I(k) (variété d’insertions). Ensuite compter le nombre de phonèmes différents apparaissant en première position d’une chaîne de

I(k), et le nombre de phonèmes différents apparaissant en dernière

po-sition d’une chaîne de I, et introduire une coupure là où la somme de ces deux nombres présente un pic. Par exemple, si on souhaite segmenter thisisnew, et que l’ensemble des chaînes de référence est theirisisnew, thosepeoplesaidthattheirisisnew, thisirisisnew, thiscarisnew, thishouseisnew, thiscityisnew alors :

— La variété I(2) des insertions entre th- et -isisnew est : -eir- (the

iris is new) et -osepeoplesaidthattheir- (those people said that the iris is new). Le phonèmes apparaissant au début d’une chaîne de I(2) sont : e,o et les phonèmes apparaissant à la fin d’une chaîne de I(2) sont : r. Le nombre à considérer est donc : |{e, o}| + |{r}| = 3.

— La variété I(4) des insertions entre this- et -isnew est : -iris-, -car-, -house-, -city- et le nombre à considérer est donc : |{i, c, h}|+ |{s, r, e, y}| = 7.

— Le critère favorise donc la segmentation this-isnew par rapport à la segmentation th-isisnew.

1.1.3 Implémentation

L’article [27], présente une implémentation sur machine de ces critères, et les évalue en calculant la précision et le rappel des segmentations produites sur des données de test. De nombreuses variantes sont comparées, notamment :

— Plutôt que de chercher les pics de |S(uk

1)|, chercher les pics d’entropie de la distribution P(c|uk 1) = f(u k 1c) f(uk 1), où f(u k

1) désigne la fréquence d’apparition de uk

1en préfixe dans le corpus. L’entropie du successeur de uk1 vaut alors −�u∈phonèmesP(c|uk1) log P(c|uk1) et quantifie le degré d’incertitude quant au phonème qui succèderait à uk

1.

(17)

— Introduire une coupure à la position k soit lorsque |S(uk

1)| dépasse un cer-tain seuil fixé à l’avance, soit lorsque k est un maximum local (c’est-à-dire : |S(uk

1)| > |S(uk1−1)| et |S(uk1)| > |S(uk1+1)|). De même considérant la taille de la variété des prédecesseurs, ou l’entropie du successeur/prédecesseur. Les conclusions tirées des évaluations de l’algorithme sont les suivantes : les meilleurs résultats sont obtenus lorsqu’à la fois les variétés de successeurs et de prédecesseurs sont prises en comptes, et lorsqu’une coupure est introduite dès lors que : soit la variété de successurs excède un seuil important et la variété de prédecesseurs un seuil plus modéré, soit l’inverse. Utiliser un critère de maximum local pour placer une coupure donne en général de moins bons résultats. Enfin les performances sont similaires selon qu’on se réfère à la taille de la variété des successeurs/prédecesseurs ou à l’entropie.

1.1.4 Recherche de paradigmes

On peut évoquer l’article de Nikolai Andreev [32], contemporain des travaux de Harris, et reprenant des idées similaires. Cet article est présenté et commenté en français dans [9]. Le cadre est le même que l’article de Harris (à ceci près que des chaînes de caractères sont considérées plutôt que des chaînes de phonèmes), et brièvement, l’idée de l’algorithme est la suivante.

La première étape est de repérer un premier affixe (préfixe ou suffixe), appelé

bootstrap affix car il servira à initier le processus de segmentation. Pour cela,

on calcule un modèle unigramme de caractères P(c) en comptant les fréquences d’apparition des caractères dans le corpus. De plus, pour un certain nombre de positions k ∈ {1, 2, 3} ∪ {−1, −2, −3}, on calcule la distribution P(c|k) de caractères apparaissant à la position k dans les chaînes de caractères du corpus. Ici, les positions négatives k = −1, −2, −3 désignent les positions en partant de la fin de la chaîne. Ainsi, si le corpus est contient des chaînes w1, . . . , wn, et que

chaque chaîne s’écrit wi = wi

1wi2. . . wili avec : (w

i

k)1≤k≤li les caractères de la

chaîne et lila longueur de la chaîne, on définit :

P(c) =n i=1 �li k=11wi k=cn i=1li et P(c|k) = �n i=11wi k=c n si k ∈ {1, 2, 3} = �n i=11wi li−k=c n si k ∈ {−1, −2, −3}

Ensuite, un ensemble d’informants est calculé : Andreev définit un informant comme un caractère dont la probabilité d’apparition est fortement corrélée à une certaine position dans les chaînes. Les informants sont calculés en cherchant, pour tous les k = ±1, 2, 3, les caractères dont la probabilité P(c|k) dépasse de moitié la probabilité P(c). Ensuite, on essaye d’étendre les informants en affixes (préfixe ou suffixe) à l’aide d’un critère similaire à celui employé par Harris : étant donné un informant dans une chaîne du corpus, on cherche à l’étendre

(18)

à droite ou à gauche, en lui ajoutant les caractères situés à sa droite (ou à sa gauche). Plus précisément :

1. Chaque informant est considéré comme un “germe” d’affixe.

2. Si a est un germe d’affixe apparaissant entre les positions j et k dans une chaîne w1. . . wl, alors le caractère situé immédiatement à gauche de a

est wj−1et le caractère situé immédiatement à droite est wk. On compte

alors la fréquence Pgauched’apparition de wj−1juste à gauche de a dans le corpus, et la fréquence Pdroited’apparition de wk juste à droite de a dans

le corpus.

3. Si Pdroiteexcède un certain seuil, on étend le germe d’affixe vers la droite. De même, si Pgauche excède un certain seuil, on étend le germe d’affixe vers la gauche. Si les deux probabilités sont en-dessous du seuil, le germe d’affixe est rejeté. Sinon, on essaye de continuer l’extension du germe en répetant cette étape.

4. On choisit comme bootstrap affix le premier germe d’affixe qu’on a réussi à prolonger soit vers la gauche jusqu’au début d’une chaîne (auquel cas c’est un préfixe), soit vers la droite jusqu’à la fin d’une chaîne (auquel cas c’est un suffixe).

Une fois un bootstrap affix obtenu, Andreev décrit une procédure itérative pour élargir l’ensemble des morphèmes obtenus. Pour ne pas alourdir notre exposition, nous ne décrirons pas cette procédure en détail car un grand nombre d’heuristiques relativement arbitraires sont employées, mais l’idée générale est la suivante :

1. Considérer l’ensemble des chaînes dans lesquelles apparaît le bootstrap

af-fix. En ôtant cet affixe à chacune des chaînes considérées, on obtient un

ensemble de racines candidates.

2. Pour chaque racine candidate trouvée, regarder l’ensemble des mots du corpus où cette racine apparaît, et calculer dans cette ensemble (par une procédure similaire au calcul du bootstrap affix) un nouvel ensemble d’affixes candidats.

3. Pour chaque affixe parmi les nouveaux candidats, calculer de nouveau l’ensemble de racines dans lesquelles cet affixe apparaît. Dans ce nouvel ensemble de racines, ne garder que celles qui apparaissent aussi avec le

bootstrap affix dans une des chaînes du corpus, et les ajouter aux racines

candidates.

4. Répéter ces étapes jusqu’à épuisement des racines et affixes candidats. Après terminaison de la procédure, on obtient donc un ensemble de racines et un ensemble d’affixes susceptibles d’êtres concaténés à ces racines, ce qui correspond à la notion linguistique de paradigme. On peut dès lors ignorer dans le corpus toutes les chaînes rentrant dans ce paradigme, et chercher un nouveau paradigme parmi les chaînes restantes.

Le résultat final de l’algorithme d’Andreev est donc une représentation de la morphologie dont la nature est différente de celle de l’algorithme de Harris. Alors

(19)

que dans l’algorithme de Harris, le résultat est une segmentation des chaînes du corpus, dans l’algorithme d’Andreev, le résultat est plus riche dans le sens où les chaînes du corpus sont regroupées en paradigmes, où chaque paradigme consiste en un certain ensemble de racines pouvant recevoir un certain ensemble d’affixes. En revanche, dans l’algorithme d’Andreev, une chaîne ne peut être coupée qu’en deux segments (la racine et l’affixe), tandis que l’algorithme de Harris autorise un nombre potentiellement illimité de segments.

1.2 Approches par longueur de description

mi-nimale

Les méthodes que nous avons présentées plus haut s’appuient sur des cri-tères de coocurrence entre caraccri-tères/phonèmes voisins pour placer des coupures dans les chaînes du corpus à segmenter. Bien que conceptuellement simples, elles nécessitent d’avoir recours à un grand nombre d’heuristiques et de seuils arbi-trairement fixés. Dans cette section, nous décrivons des approches présentant une assise plus rigoureuse, car s’appuyant sur un principe général d’inférence statistique appelé le principe de longueur de description minimale (MDL). Dans ces approches, le point de vue adopté sur la morphologie a un caractère plus global : l’accent est mis sur l’inférence d’un lexique de segments et d’un modèle explicatif de la formation des chaînes du corpus, plutôt que sur des conditions locales déterminant le placement des coupures.

1.2.1 Longueur de description d’un jeu de données

1.2.1.1 Complexité de Kolmogorov

Dans l’article [38], le mathématicien Andreï Kolmogorov propose de définir quantitativement la complexité d’un objet combinatoire x (par exemple : une chaîne de caractères, un graphe...) comme la longueur minimale d’un programme capable de produire x (et écrit dans un langage de programmation universel, par exemple dans un langage de symboles pouvant être lu par une machine de Turing universelle). Cette complexité de Kolmogorov correspond bien à l’idée intuitive qu’un objet sera d’autant plus complexe qu’il sera long à décrire.

Par exemple, considérons les deux chaînes de bits suivantes :

x = 000100010001000100010001000100010001000100010001 y = 010011010010101000001011100110101110000101011100

La chaîne x présente une bien moindre complexité que la chaîne y qui semble avoir été générée aléatoirement. Par exemple, il sera beaucoup plus facile pour un humain de retenir la première que la seconde. Et en effet, en termes de com-plexité de Kolmogorov, la première chaîne peut être produite par le programme suivant :

(20)

for i = 1 . . . 48 do if i mod 4 = 0 then print 1 else print 0 end if end for

alors que pour la deuxième chaîne, il est difficile d’imaginer un programme autre que le programme trivial suivant :

print 010011010010101000001011100110101110000101011100

Notons qu’il y a une ambigüité dans la définition de la complexité de Kol-mogorov, puisque la longueur d’un programme générant un objet dépend du langage dans lequel est écrit ce programme. Il s’avère que d’après un théorème

d’invariance prouvé par Kolmogorov [38], pour des objets suffisamment

com-plexes, les complexités cAet cB(relativement à deux langages “universels”

dif-férents A et B) sont équivalentes à une constante près, et donc qu’à une relation de proportionnalité près, les complexités de Kolmogorov peuvent être définies indépendamment d’un langage particulier.

Cette notion de complexité présente un intêret surtout théorique, car deux obstacles la rendent inapplicable en pratique :

— Son incalculabilité : calculer la complexité de Kolmogorov d’un objet x de “taille” finie (par exemple une chaîne de bits de longueur finie) nécessi-terait de rechercher, parmi l’ensemble des programmes générant x et de longueur inférieure au programme trivial “print x”, celui qui est de lon-gueur minimale. Or une telle recherche prendrait un temps exponentiel, donc la complexité de Kolmogorov est donc pratiquement incalculable. Mais de plus, dès que cet ensemble de programmes contiendrait un pro-gramme contenant une boucle infinie, on se heurterait au problème de

l’arrêt, du au fait qu’il est impossible de déterminer de manière générale

en un temps fini si un programme se termine ou non. On a donc en plus une incalculabilité théorique.

— La dépendance au langage utilisé : le théorème d’invariance de Kolmogorov est un théorème asymptotique, mais n’assure pas que pour des objets de petite complexité, il n’y ait pas de grandes différences dans les longueurs des programmes générant x selon le langage utilisé.

1.2.1.2 Le principe de longueur de description minimale

L’intêret de cette notion dans le cadre de l’apprentissage non-supervisé est le suivant : la description la plus courte possible d’un jeu de données sera celle qui exploitera le plus possible les régularités de celui-ci et s’approchera le mieux de la “loi cachée” derrière ce jeu de données. Ce qui revient à dire qu’apprendre de manière non-supervisée un jeu de données équivaut à chercher sa compression optimale.

(21)

Toutefois, pour rendre ce principe applicable, on a vu qu’il est nécessaire de renoncer à utiliser un langage de programmation universel pour représenter les données, et de se restreindre à des classes de modèles moins expressives. L’article de Rissanen [50] propose un cadre pour des implémentations pratiques du principe MDL. Son idée est de séparer la longueur de description des données en longueur de description d’un modèle, et longueur de description des données à l’aide de ce modèle :

— On souhaite décrire un jeu de données X = (x1, . . . ,xn).

— On dispose pour cela d’une famille de modèles M. Chaque modèle M ∈ M peut être décrit par un code de longueur L(M).

— Etant donné un modèle M ∈ M, chaque xi∈ X peut être décrit à l’aide

de ce modèle par un code de longueur L(xi|M)

— Le modèle préconisé par le principe MDL sera donc celui qui minimisera la longueur totale des codes nécessaires pour décrire le modèle et les données à l’aide du modèle : Moptimal= argmin M∈M � L(M) � �� � (1) : description du modèle + � xi∈X L(xi|M) � �� �

(2) : description des données à l’aide du modèle

Dans la terminologie de l’apprentissage statistique classique, le terme (2) joue le rôle de la fonction d’erreur, et le terme (1) joue le rôle du terme de

régularisation. Si (1) était minimisé isolément, on obtiendrait un modèle trivial

inadapté aux données, et si (2) était minimisé isolément, les données seraient sur-apprises et le modèle serait incapable de généralisation. Chercher à minimiser la somme de ces deux termes revient donc à trouver un compromis entre simplicité du modèle et adaptation aux données.

Nous présentons deux méthodes d’apprentissage non-supervisé de la mor-phologie utilisant le principe MDL, et qui ont toutes les deux obtenu de très bons résultats. Contrairement aux méthodes présentées à la section 1.1, nous verrons que ces méthodes ont en commun de se présenter sous deux aspects in-dépendants : d’une part, la spécification d’une classe de modèles, d’autre part, un ensemble d’heuristiques d’initialisation et de recherche afin de trouver un modèle optimal.

1.2.2 Linguistica

1.2.2.1 Modèles de racines, suffixes et signatures et longueurs de description associées

Le système Linguistica de John Goldsmith [19] est un système d’apprentis-sage non-supervisé de morphologie (permettant un degré partiel de supervision). Le but de ce système est de segmenter un corpus de mots de manière à ce que chaque mot soit coupé en une racine et un suffixe, et de manière à ce que les

(22)

T (racines) F (suffixes) Σ (signatures) cat dog hat John jump laugh sav the walk NULL ed ing s e es σ1=    ptr(cat) ptr(dog) ptr(hat)    �ptr(NULL) ptr(s) � σ2=�ptr(sav)�    ptr(e) ptr(es) ptr(ing)    σ3=    ptr(jump) ptr(laugh) ptr(walk)           ptr(NULL) ptr(ed) ptr(ing) ptr(s)        σ4=�ptr(John)ptr(the) � �ptr(NULL)� Paradigmes représentés cat, cats dog, dogs hat, hats

save, saves, saving

jump, jumped, jumping, jumps laugh, laughed, laughing, laughs walk, walked, walking, walks John

the

Figure 1.1 – Un exemple de modèle (T, F, Σ) et le lexique qu’il est capable de couvrir

ensembles de mots partageant une même racine puissent être regroupés en para-digmes. Dans ce système, un modèle est spécifié par la donnée de trois ensembles (T, F, Σ) :

— T est un ensemble de racines. — F est un ensemble de suffixes.

— Σ est un ensemble de signatures. Une signature σ est la donnée d’un en-semble t ⊂ T de racines et d’un enen-semble f ⊂ F de suffixes telles que les racines de t et les suffixes de f puissent être concaténés pour former des mots.

— Ceci avec la contrainte qu’une racine ne peut appartenir qu’à une seule signature.

La figure 1.1 représente un exemple d’un tel modèle. Pour se placer dans le cadre MDL, il convient aussi de définir la manière dont un modèle sera décrit afin de calculer sa longueur de description. La description suivante est adoptée : — T est représenté par une liste de chaînes de caractères. Chaque chaîne de caractères t de longueur |t| (sur un alphabet à 26 lettres) nécessite |t| log 26

(23)

bits pour être représentée. De plus, il faut stocker la longueur de la liste, ce qui nécessite λ(|T|) bits (où λ(k) est une fonction représentant le nombre de bits requis pour coder l’entier k). La longueur de description de T est donc : L(T ) = λ(|T|) +t∈T|t| log 26.

— De même pour S : L(S) = λ(|S|) +s∈S|s| log 26.

— Une signature est représentée par deux listes : une liste de pointeurs vers des racines, et une liste de pointeurs vers des suffixes. En considérant que les racines sont issues d’une distribution de probabilité freq(t) donnée par leurs fréquences dans le corpus, on peut donc coder un pointeur vers t avec − log freq(t) bits (en utilisant par exemple un code de Huffman). Il en est de même pour les suffixes. Ainsi, la longueur de description d’une signature σ = (t, f) vaut :

L(σ) =λ(|t|) (codage de la taille de t)

+ λ(|f|) (codage de la taille de f) +�

t∈t

− log freq(t) (codage des pointeurs vers les t ∈ t) +�

f∈f

− log freq(f) (codage des pointeurs vers les f ∈ f) et la longueur de description de l’ensemble Σ des signatures vaut donc :

L(Σ) =λ(|Σ|) (codage de la taille deΣ)

+�

σ∈Σ

L(σ) (codage de chaque signature)

— La longueur de description totale d’un modèle M = (T, F, Σ) est donc :

L(M) = L(T ) + L(F ) + L(Σ).

La dernière étape nécessaire pour se placer dans le cadre MDL est de définir les longueurs de description des données à l’aide d’un modèle. Les données sont une liste de mots w = (w1, . . . , w|W |). Pour décrire un mot w de racine t et de suffixe f à l’aide d’un modèle M = (T, F, Σ), il faut :

— Spécifier la signature σ = (t, f) auquel le mot appartient : ceci peut se coder sur − log freq(σ) bits.

— Spécifier, parmi les racines de t, laquelle est la racine de w. Ceci peut se coder sur − log freq(t|σ).

— Spécifier, parmi les suffixes de f, lequel est le suffixe de w. Ceci peut se coder sur − log freq(f|σ).

— La longueur de description L(w|M) du mot w = t + f à l’aide du modèle

M est donc :

L(w|M) = − log freq(σ) �� pointeur vers la signature

− log freq(t|σ)

� �� �

pointeur vers la racine

− log freq(f|σ)

� �� �

(24)

La longueur de description de l’ensemble du corpus à l’aide d’un modèle M est donc :

L(w|M) = λ(|w|) +w∈w

L(w|M)

Ce qui nous donne enfin la longueur de description totale des données, qui est la fonction qu’on cherchera à minimiser au cours de l’apprentissage :

Moptimal= argmin

M L(M) + L(w|M)

Signalons que pour ne pas alourdir notre présentation, nous avons omis le fait que Linguistica autorise également une structure récursive dans les signatures, c’est-à-dire que l’ensemble des racines (resp. des suffixes) d’une signature peut comprendre à la fois :

— des pointeurs vers des racines (resp. suffixes) “simples”.

— des pointeurs vers d’autres signatures pour représenter des racines (resp. suffixes) “complexes”, et permettre des analyses du type : sav����

t� ing ���� f� � �� � t=σ� s ���� f � �� � σ

1.2.2.2 Recherche d’un modèle optimal

Nous avons décrit la structure des modèles, et défini leur longueur de des-cription. A présent, il s’agit de trouver un modèle de longueur de description minimale. Pour cela, Linguistica utilise un algorithme de recherche locale qui se déroule de la manière suivante :

1. Initialiser un modèle M0 à l’aide d’heuristiques.

2. Etant donné un modèle Mkà la k-ème itération de la recherche, appliquer

différentes heuristiques à Mk de manière à obtenir plusieurs

“modifica-tions” de ce modèle. Pour chacune de ces modifications, sélectionner celle de longueur de description minimale : Mk+1. Si L(Mk+1) < L(Mk),

ré-itérer la recherche sur Mk+1. Sinon, cela signifie qu’on a atteint en Mk

un minimum local pour la longueur de description, et la recherche est terminée.

Heuristiques d’initialisation Une heuristique d’initialisation proposée

uti-lise l’algorithme EM :

1. Au début, chaque mot est segmenté aléatoirement en une racine et un suffixe (par exemple en le coupant en un point choisi uniformément sur la longueur du mot).

(25)

2. Ensuite, pour chaque mot w, tous les points de coupure possibles i ∈ {1, . . . , |w|} sont évalués avec une probabilité définie par :

P(w = wi 0+ wli) = 1 Zexp � −�ilog freq(racine = wi 0) + (l − i) log freq(suffixe = wl i) �� où :

— l est la longueur du mot

— Z est une constante de normalisation choisie de sorte à bien obtenir :

l

i=1P(w = w0i+ wli) = 1

— freq(racine = wi

0) est la fréquence d’apparition de wi0comme racine parmi les segmentations courantes. De même pour freq(suffixe =

wl i).

3. Ensuite, les points de coupure de chaque mot sont rééchantillonnés selon les distributions P(w = wi

0+ wli), puis on retourne à l’étape 2.

4. ...et ainsi de suite jusqu’à convergence du processus.

On obtient de la sorte un ensemble initial de racines (T0) et de suffixes (F0). Reste à initialiser l’ensemble des signatures Σ0pour achever l’initialisation du modèle. Cet ensemble est initialisé en calculant tous les couples maximaux formés d’un ensemble de racines (t) et d’un ensemble de suffixes (f) tels que l’ensemble des chaînes obtenues en concaténant une racine t ∈ t et un suffixe

f ∈ f soient présentes dans le corpus. Chaque couple maximal (t, f) de la sorte constitue une signature.

Les ensembles T0, F0,Σ0ainsi obtenus forment le modèle initial, qu’on cherche par la suite à raffiner par un algorithme de recherche locale.

Heuristiques de recherche locale L’optimisation du modèle s’effectue en

partant du modèle initial, en lui appliquant différentes modifications, en retenant la modification de longueur de description minimale, puis en réitérant l’optimi-sation sur la modification retenue, jusqu’à convergence vers un minimum local de la longueur de description minimale. Brièvement, les modifications envisagées à chaque étape sur un modèle sont :

— Pour chaque suffixe, essayer toutes les coupures en deux possibles de ce suffixe. (Par exemple, essayer de remplacer le suffixe “simple” ings (en anglais) par un suffixe “complexe” représenté par une signature σ= {ing} � �� � t� {s} ���� f� ).

(26)

essayer de “déplacer” ce caractère vers les stems. Par exemple :        oscilla vibra sta crea               te tes ting tion        −→ modification        oscillat vibrat stat creat               e es ing ion       

— Lorsqu’une signature contient un faible nombre de racines ou un faible nombre de suffixes, essayer de la supprimer et considérer tous les mots qu’elle engendre comme des racines munies du suffixe NULL. Par exemple :

�lo bo� �okot � −→ modification            look loot book boot . . .            �NULL�

1.2.3 Morfessor

Nous décrivons à présent Morfessor, une famille de méthodes de segmen-tation morphologique non-supervisée déclinées en plusieurs variantes dans [12], [13], [14], [15], et qui est à présent utilisée dans de nombreux systèmes de traite-ment des langues. Linguistica décrivait la morphologie d’une langue en termes de signatures représentant des paradigmes, en imposant des analyses où chaque mot est découpé en une racine et un suffixe. Morfessor adopte une description différente : un mot est considéré comme une séquence de morphèmes (éventuel-lement affectés à des classes), et il n’y a pas de limite au nombre de morphèmes possibles constituant un mot. Cette méthode est donc particulièrement adap-tée aux langues agglutinantes, où de nombreux mots sont constitués de longues séquences de morphèmes dérivationnels, et aux langues permettant des mots

composés où plusieurs racines peuvent intervenir dans le même mot.

1.2.3.1 Version Baseline (2002)

Modèle La version initiale de Morfessor [12] se situe dans le cadre MDL,

et de même que Linguistica, consiste à minimiser la somme des longueurs de description d’un modèle et des données à partir de celui-ci. Le modèle est un dictionnaire de morphèmes, et les données sont décrites à l’aide de pointeurs vers les entrées de ce dictionnaire. L’objectif de minimisation de la longueur de description favorise le choix de segments qui, étant fréquemment réutilisés, permettent une économie de description. Plus précisément :

— Le modèle M est un dictionnaire de morphèmes (w1, . . . , wm). Chaque

morphème est encodé comme une chaîne de caractères suivie d’un carac-tère séparateur. Chaque caraccarac-tère nécessite log 27 bits pour être encodé (26 lettres de l’alphabet + 1 caractère séparateurs). Donc en tout, la lon-gueur de description de M vaut : (log 27) ·i1 + |wi| bits.

(27)

— Les données sont une liste de mots. Chaque mot est décrit à l’aide d’une suite de pointeurs vers des entrées du dictionnaire de morphèmes. Par exemple, morphologiquement pourra être décrit comme : ptr(morpho) ptr(logi) ptr(que) ptr(ment). Si freq(µ) est la fréquence d’appari-tion d’un morphème µ parmi l’ensemble des segmentad’appari-tions, un pointeur ptr(µ) pourra être codé sur − log freq(µ) bits. Ainsi la description des données à l’aide d’un modèle nécessite �µ− log freq(µ), en sommant sur l’ensemble des occurrences de morphèmes dans les données segmentées. — La longueur de description totale à minimiser est donc :

L= (log 27) · � � i 1 + |wi| � +� µ − log freq(µ)

Recherche La recherche d’un minimum de la longueur de description

s’effec-tue en re-segmentant chaque mot tour à tour jusqu’à convergence. Pour seg-menter un mot w :

1. On calcule la longueur de description L0 dans le cas où le mot n’est pas segmenté. On calcule aussi, pour i = 1, . . . , |w|−1, la longueur de descrip-tion Li dans le cas où le mot est coupé à la position i. Parmi toutes ces

options, on choisit celle qui donne la longueur de description minimale. (NB : si une des options nécessite de segmenter un morphème qui n’est pas encore dans le dictionnaire, il faut donc tenir compte de l’ajout de ce morphème dans le dictionnaire en calculant la longueur de description). 2. Si l’option retenue est de ne pas segmenter le mot, on passe au mot

sui-vant. Sinon, si on a coupé le mot à une position i on réapplique la même procédure sur chacun des deux segments obtenus (c’est-à-dire wi

0et wi|w|).

1.2.3.2 Categories-ML (2004)

La deuxième version de Morfessor [13] sort du cadre MDL, et consiste en un objectif de maximisation de vraisemblance d’un modèle probabiliste génératif. Un désavantage majeur du critère de maximum de vraisemblance est que celui-ci mène à des modèles trop fidèles aux données pour pouvoir se généraliser à des cas nouveaux : ici cet écueil est évité en recourant à un ensemble d’heuristiques. Par ailleurs, les morphèmes sont regroupés en catégories, et des règles de succession entre ces catégories sont prises en compte (c’est-à-dire une morphotactique qui est essentiellement une syntaxe à l’échelle du mot).

Modèle Le modèle sous-jacent est un modèle probabiliste génératif,

c’est-à-dire un modèle expliquant, pour chaque mot des données, sa formation comme résultat d’un scénario faisant intervenir des évènements aléatoires. Il s’agit ici d’un modèle de Markov caché, c’est-à-dire que la formation d’un mot est expli-quée comme :

(28)

init pre pre stem suf fin

a sym metric al

P(pre|init) P(pre|pre) P(stem|pre) P(suf|stem) P(fin|suf)

P(a|pre) P(sym|pre) P(metric|stem) P(al|suf)

Figure 1.2 – Exemple de scénario génératif pour le modèle HMM de

Categories-ML. Chaque flèche représente une étape générative du

scéna-rio, et la probabilité totale de ce scénario est le produit des probabilités indiquées sur chaque flèche.

1. La génération d’une séquence aléatoire de catégories C0, C1, . . . , Ck+1, où C0est une catégorie “initiale”, Ck+1 est une catégorie “terminale”

signa-lant la fin de la séquence, et Ci (i = 1 . . . k) une catégorie morphologique

parmi : pre (préfixe), suf (suffixe), stem (racine), noise (“bruit”). La séquence est une chaîne de Markov, c’est-à-dire que la probabilité d’une catégorie Ci en i-ème position est entièrement déterminée par la catégorie

précédente Ci−1 selon une loi conditionnelle P(Ci|Ci−1).

2. Pour chaque catégorie Ci (i = 1 . . . k) de la séquence, la génération d’un

morphème aléatoire µi selon une loi conditionnée sur Ci : P(µi|Ci).

3. Enfin le mot obtenu est la concaténation des morphèmes générés : w =

µ1. . . µk.

De plus, les probabilités de transitions entre catégories sont contraintes de sorte à rester conformes à l’expression régulière suivante : (pre∗stem suf)+. Ainsi par exemple, un préfixe ne pourra pas être immédiatement suivi par un suffixe, ce qui se traduit par la contrainte P(suf|pre) = 0. Les probabilités de transition qui ne contredisent pas cette expression régulière sont considérées comme des paramètres du modèle, et sont évaluées durant l’inférence.

Inférence Les étapes de l’inférence sont :

1. Initialiser une segmentation du corpus à l’aide de la version Baseline. 2. Assigner leurs catégories aux morphèmes de ces segmentations initiales à

l’aide d’heuristiques : essentiellement, des scores p(pre|µ) (resp. p(stem|µ),

p(suf|µ)) agrégeant différentes heuristiques quantifient à quel point un

morphème µ “ressemble à un préfixe” (resp. à une racine, à un suffixe). Par exemple, une heuristique utilisée pour déterminer la “ressemblance à un préfixe” est de regarder l’entropie des successeurs de µ sur le corpus : si en moyenne, à chaque fois que µ apparaît, le caractère le suivant immé-diatement est difficile à prédire, on assignera un score élevé à p(pre|µ). Autre exemple : le score de “ressemble à une racine” sera d’autant plus

(29)

élevé que µ est long. Enfin, on définit p(noise|µ) = (1 − p(pre|µ))(1 −

p(stem|µ))(1 − p(suf|µ)).

3. La donnée d’un ensemble initial de segmentations (et d’affectations de catégories) permet de calculer un modèle initial, c’est-à-dire, les probabi-lités de transition entre catégories P(C|C) et d’émission de morphèmes P(µ|C).

4. Ce modèle initial est ensuite optimisé avec l’algorithme EM (en gardant les points de coupure fixés). Autrement dit, on alterne entre :

— Rééchantillonner les affectations de catégories à l’aide des distribu-tions P(C|C) et P(µ|C).

— Recalculer les distributions P(C|C) et P(µ|C) à l’aide des nouvelles catégories échantillonnées.

— ...et ainsi de suite jusqu’à convergence.

5. Puis une batterie d’heuristiques est appliquée pour raffiner les segmenta-tions et les catégories. Elles consistent essentiellement à :

— Trouver les morphèmes µ qui peuvent s’écrire comme concaténation de deux morphèmes préexistants µ1 et µ2, et les scinder en ces deux morphèmes (si cela ne viole pas les contraintes morphotactiques ou n’entraîne pas l’apparition de morphèmes noise).

— Essayer de supprimer les morphèmes noise en les fusionnant avec leurs voisins.

6. A nouveau optimiser les paramètres P(C|C) et P(µ|C) avec EM (en gar-dant les points de coupure fixés). Puis rééchantillonner toutes les segmen-tations et catégories (algorithme de Viterbi) puis revenir à l’étape 4.

1.2.3.3 Categories-MAP (2005)

La troisième version [14] reprend la version Categories-ML en ajoutant un a

priori sur les modèles :

— Dans Categories-ML, le but est de trouver un modèle de vraisemblance maximale, c’est-à-dire de résoudre :

M∗= argmax

M∈modèlesP(données|M)

en contraignant les modèles considérés par certaines heuristiques.

— Dans Categories-MAP, on considère d’une part la même probabilité P(données|M) que ci-dessus, mais de plus un a priori probabiliste P(M) remplace les contraintes heuristiques sur les modèles. L’objectif est donc de maximiser la distribution jointe sur les données et les modèles ainsi définie :

M∗= argmax

(30)

L’a priori est défini comme :

P(M) ∝

µ∈types de morphèmes

P(meaning(µ)) · P(form(µ))

Ce que les auteurs appellent P(meaning(µ)) est un score heuristique basé sur des statistiques d’utilisation de µ comme sa fréquence, sa longueur, ou la perplexité quand au morphème qui le suit ou qui le précède. Le facteur P(form(µ)) est calculé en considérant deux cas : soit µ est représenté comme concaténation de deux autres morphèmes présents dans le lexique, soit simplement comme une chaîne de caractères. Cet a priori introduit donc une dimension hiérarchique dans le lexique de morphèmes inféré, et dans les analyses morphologiques qui en résultent.

— Cas 1 (représentation hiérarchique de µ) : Si on choisit de représenter

µ comme concaténation de deux autres types de morphèmes µ1 et µ2 existant dans le lexique, et de catégories respectives C1et C2alors

P(form(µ)) = P(cas 1)P(C1|cas 1)P(µ1|C1)P(C2|C1)P(µ2|C2) — P(cas 1) est la probabilité empirique qu’un morphème soit représenté

hérarchiquement, autrement la proportion de morphèmes dans le lexique représentés comme concaténation de deux autres morphèmes. — P(C1|cas 1) est la proportion, parmi les morphèmes représentés hié-rarchiquement comme µ = µ1µ2, de ceux pour lesquels µ1 a reçu la catégorie C1.

— Cas 2 (cas de base) : µ est considéré simplement comme une chaîne de caractères c1. . . cn sans sous-structure, et

P(form(µ)) = (1 − P(cas 1)) ni=1 P(ci) où le facteur �n

i=1P(ci) joue le rôle d’un modèle unigramme de caractères.

L’ensemble des facteurs P(form(µ)) de l’a priori forment un équivalent pro-babiliste de la longueur de description du modèle. Par exemple, la quantité − log P(form(µ)) n’est rien d’autre que la longueur de description de µ

— à l’aide de pointeurs vers des catégories C1, C2et morphèmes µ1, µ2dans le premier cas.

— en le codant comme une chaîne de caractères dans le second cas.

De par la manière dont l’a priori est spécifié, il se peut donc par exemple que le mot asymmetricality soit analysé en :

a

pre· symmetricstem · alitysuf

mais que par ailleurs le morphème symmetric tombe sous les cas 1 et que dans le lexique de morphèmes inféré, les morphèmes sym

(31)

présents (et de même pour alsufet ity

suf), auquel cas on pourrait compléter l’analyse par la représentation hiérarchique suivante :

a

pre symmetricstem alitysuf

metricstem sym

pre alsuf itysuf

1.2.3.4 Versions ultérieures

Plusieurs versions ultérieures de Morfessor ont été proposées, que nous ne décrirons pas toutes ici.

Par exemple, Morfessor FlatCat (2014) [25] est une version utilisant un

mo-dèle de Markov caché similaire à Categories-MAP, mais où la possibilité de

représenter hiérarchiquement le lexique de morphèmes à été supprimée, dans le but de faciliter l’apprentissage semi-supervisé. Selon les auteurs, l’absence de hiérarchie facilite l’apprentissage semi-supervisé car étant donné un corpus an-noté en segmentations et catégories de morphèmes, il est facile de trouver les paramètres de vraisemblance maximale : ces paramètres sont les probabilités de transition entre catégories P(Ci|Ci−1) et d’émission de morphèmes P(µ|C), et il suffit pour maximiser leur vraisemblance de compter des fréquences d’évène-ments sur le corpus. En revanche, il n’y a pas de moyen aussi évident de choisir quand représenter ou non un morphème de manière hiérarchique (cas 1 versus

cas 2 ci-dessus) de sorte à maximiser la vraisemblance du modèle, ce qui rend

l’aspect hiérarchique difficile à implémenter en supervision.

Allomorfessor (2008) [37] est une extension de Morfessor ajoutant une

mo-délisation des phénomènes d’allomorphie, c’est-à-dire du fait qu’un même mor-phème “abstrait” puisse se réaliser sous différentes formes concrètes selon le contexte phonologique ou morphologique où il apparaît : par exemple, en alle-mand Wald (singulier) → Wälder (pluriel) ou Maus (singulier) → Mäuser (plu-riel). Dans ces exemples, les racines Wald et Maus se manifestent sous des formes différentes selon qu’elles sont modifiées ou non par le suffixe “pluriel” -er.

Al-lomorfessor prend en compte ces phénomènes en autorisant dans son modèle

génératif des mutations comme le fait de remplacer une lettre par une autre, ou de supprimer une lettre.

1.3 Méthodes bayésiennes non-paramétriques

La troisième famille de méthodes que nous allons évoquer, et dans laquelle s’inscrivent les travaux de cette thèse, sont les méthodes bayésiennes non-paramétriques (BNP). Elles s’appuient toutes sur un modèle probabiliste génératif des données, paramétré par un certain vecteur (potentiellement infini) de paramètres. De

Figure

Figure 1.1 – Un exemple de modèle (T, F, Σ) et le lexique qu’il est capable de couvrir
Figure 1.2 – Exemple de scénario génératif pour le modèle HMM de Categories-ML. Chaque flèche représente une étape générative du  scéna-rio, et la probabilité totale de ce scénario est le produit des probabilités indiquées sur chaque flèche.
Figure 1.3 – Système de back-off pour un modèle bi-gramme de mots dont les distributions sont issues d’un processus de Dirichlet, et probabilités associées conditionnellement à un ensemble S de segmentations
Figure 1.4 – Système de back-off pour un modèle n-gramme de mots utilisant comme distribution de base un modèle ∞ -gramme de caractères tel que présenté dans l’article [42]
+7

Références

Documents relatifs

D’après l’étude précédente, nous voyons bien que plus (respectivement moins) la capacité d’une classe de fonctions est grande, plus (respectivement moins) on a de

En effet, nous montrons dans le chapitre suivant que le modèle du filtre de Kalman couple souffre d’un problème d’identifiabilité qui doit être pris en compte pour

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

For the first time, the transition of the O ‡ 1-D distribution function from a core halo shape along the magnetic field direction to the well-known toroidal shape at large polar

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des

Il est principalement influencé par le système d’alimentation et diminue dans les systèmes pâturants qui permettent également d’opter plus facilement pour un matériel

Conclusion et perspectives Dans ce travail de thèse, nous avons examiné deux approches existantes de la littérature de l’apprentissage statistique pour rendre les modèles et

Plus pr´ ecis´ ement, nous ´ etudions des processus solutions d’´ equations diff´ erentielles stochastiques ayant des coefficients de drift (ou d´ erive) et de diffusion