Apprentissage non-supervisé de la morphologie des langues

Apprentissage non-supervisé de la morphologie des langues

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 difficulté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.

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 traductions 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ù wc apparaî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 w2 apparaît à la suite de w1 dans la langue cible. Ceci constituerait 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 corpus 2 ? Ce problème de parcimonie des données est lié à la structure même des langues où la majorité des évènements possibles sont des évènements 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 collectionneurs”), un système se fiant aux statistiques de succession de mots dans 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”. 

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

 Les problèmes de parcimonie des données et de sur-apprentissage apparaissent 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 morphologie 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 hongrois), 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 combinatoire 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 suffisante 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 factoriser 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 concaté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 Enfin évoquons deux problèmes de TAL apparentés à l’apprentissage de morphologie : — 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.

Table des matières

Introduction
0.1 Les morphèmes en linguistique
0.2 Le rôle des morphèmes en traitement des langues
0.2.1 L’apprentissage statistique
0.2.2 Réduire la parcimonie des données à l’aide de la morphologie
0.3 But
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
1.1.2 Raffinements
1.1.3 Implémentation
1.1.4 Recherche de paradigmes
1.2 Approches par longueur de description minimale
1.2.1 Longueur de description d’un jeu de données
1.2.1.1 Complexité de Kolmogorov
1.2.1.2 Le principe de longueur de description minimale
1.2.2 Linguistica
1.2.2.1 Modèles de racines, suffixes et signatures et longueurs de description associées
1.2.2.2 Recherche d’un modèle optimal
1.2.3 Morfessor
1.2.3.1 Version Baseline (2002)
1.2.3.2 Categories-ML (2004)
1.2.3.3 Categories-MAP (2005)
1.2.3.4 Versions ultérieures
1.3 Méthodes bayésiennes non-paramétriques
1.3.1 Modèles n-grammes
1.3.1.1 Modèle unigramme
1.3.1.2 Modèles d’ordre supérieur
1.3.2 Adaptor grammars
1.3.2.1 Grammaires hors-contexte probabilistes
1.3.2.2 Adapteurs
1.3.2.3 Remarques
1.4 Autres approches
1.5 Critères de classification
2 Processus de Pitman-Yor
2.1 Approche bayésienne et distribution de Dirichlet
2.1.1 Critère de vraisemblance maximale
2.1.2 Approche bayésienne
2.1.3 Distribution de Dirichlet
2.2 Modèles non-paramétriques
2.2.1 Processus de Dirichlet
2.2.2 Le processus de Dirichlet comme a priori bayésien
2.2.3 Le processus de restaurant chinois
2.2.3.1 Définition
2.2.3.2 Comportement asymptotique
2.2.3.3 Lien avec les processus de Dirichlet
2.2.4 Processus de Pitman-Yor
2.2.4.1 Definition
2.2.4.2 Loi de Zipf
2.3 Un algorithme de segmentation
2.3.1 Modèle génératif
2.3.1.1 Scénario
2.3.1.2 Justification
2.3.2 Inférence
2.3.2.1 Déroulement
2.3.2.2 Probabilité d’une segmentation conditionnellement aux précédentes
2.3.2.3 Echantillonnage d’une segmentation
2.3.3 Expériences
2.3.3.1 Données et évaluation
2.3.3.2 Expériences et résultats
3 Processus hiérarchiques
3.1 Hiérarchies d’adapteurs .
3.1.1 Exemple introductif : modèle n-gramme de morphèmes
3.1.2 Définition formelle
3.1.3 Restaurant chinois hiérarchique
3.1.3.1 Distribution de probabilité associée à un CRP
3.1.3.2 Assignation d’une table à un nouveau client
3.1.3.3 Conditionnement à un ensemble d’observations
3.1.3.4 Remarque
3.1.3.5 Exemple
3.2 Modèle n-gramme de séquences de morphèmes
3.2.1 Description
3.2.2 Inférence
3.2.3 Echantillonnage d’une segmentation
3.2.4 Inférence du modèle orthographique
3.2.5 Expériences
3.3 Modèle semi-markovien de classes morphologiques
3.3.1 Génération de formes de mots
3.3.2 A prioris
3.3.3 Echantillonnage d’une analyse
3.3.4 Expériences
3.3.4.1 Protocole
3.3.4.2 Résultats quantitatifs
3.3.4.3 Morphotactique induite
4 Choix des hyperparamètres
4.1 Approche bayésienne de l’inférence d’hyperparamètres
4.1.1 Hyperpriors
4.1.2 A posteriori sur les hyperparamètres
4.1.3 Cas des processus hiérarchiques
4.1.3.1 Sans partage d’hyperparamètres
4.1.3.2 Avec partage d’hyperparamètres
4.2 Aspects algorithmiques
4.2.1 Calcul des a posteriori
4.2.1.1 “Sommation par tranches”
4.2.1.2 Approximation de la fonction Gamma
4.2.1.3 Maintien des compteurs
4.2.2 Echantillonnage par tranches
4.2.2.1 Méthode de rejet
4.2.2.2 Méthode par tranches .
4.3.1 Contraintes de longueur
4.3.

projet fin d'etude

Télécharger le document complet

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *