:: Enseignements :: Master :: M2 :: 2008-2009 :: Traitement Automatique des Langues ::
[LOGO]

Affecter des traits sémantiques aux mots


Le but de ce projet est de développer un programme permettant d'affecter automatiquement des traits sémantiques à des mots donnés en entrée.

Objectifs

Le but de ce projet est de développer un programme permettant d'affecter automatiquement des traits sémantiques à des mots donnés en entrée. Le projet consistera à utiliser une méthode par apprentissage semi-supervisée en utilisant :
  • un corpus brut pour calculer les similarités entre les différents mots.
  • un lexique d'apprentissage (qui est une liste de mots dont les traits sémantiques sont déjà codés).
Le logiciel devra être capable d'affecter des traits à des mots dont les traits ne sont pas encore codés en choisissant le trait des mots les plus similaires. Le corpus d'apprentissage devra être prétraité. Vos résultats devront être évalués automatiquement en vous aidant d'une liste de mots dont les traits sont déjà connus mais disjointe du lexique d'apprentissage. La langue à traiter est le français.

Ressources

Nous fournissons deux lexiques contenant des mots simples et composés :
  • un lexique d'apprentissage : fichier /home/ens/mconstan/lexicon/learning_lexicon.m2
  • un lexique d'évaluation pour vos tests : fichier /home/ens/mconstan/lexicon/testing_lexicon.m2
Chaque lexique comprend une liste de lemmes de mots auxquels sont assignés des traits sémantiques. Les traits sémantiques utilisés sont :
  • Abst : abstrait
  • Conc : concret
  • Hum : humain
  • HumColl : humain collectif
  • Top : nom propre désignant un lieu

Le corpus d'apprentissage de l'espace vectoriel des mots se trouve dans le fichier /home/ens/mconstan/corpus/french/lm94.u8 (une année du journal Le Monde).

Prétraitements

Le corpus d'apprentissage devra être prétraité à l'aide d'Unitex :
  • découpage en phrases pour la fenêtre de cooccurrence
  • repérage et lemmatisation des noms composés
Il devra également être prétraité à l'aide de treetagger pour lemmatiser les mots simples. Vous pourrez également filtrer certaines catégories grammaticales.

Affectation des traits

Quand le trait d'un mot n'est pas codé, on lui affectera le trait des mots plus similaires. Il faut donc calculer les similarités de ce mot avec les mots du lexique d'apprentissage. Utiliser la méthode de calcul de la similarité du TD du 2 octobre 2008.

Questions :
  • Combien de mots similaires faut-il prendre en compte pour déterminer le meilleur trait.
  • Comment gérer l'ambiguïté ?
    Première possibilité : prendre en compte seulement les mots du lexique d'apprentissage qui n'ont qu'un seul trait.
    Deuxième possibilité : prendre en compte tous les mots.
  • Comment gérer les mots n'apparaissant pas dans le corpus d'apprentissage ?
    Première possibilité : assigner un trait aléatoirement.
    Deuxième possibilité : assigner le trait le plus fréquent dans le lexique d'apprentissage.

Résultat attendu

Vous devrez fournir trois programmes :
  • Un programme calculant la matrice de cooccurrence, c'est-à-dire les coordonnées des lemmes dans l'espace vectoriel, à partir du corpus d'apprentissage.
  • Un programme qui prend en entrée la matrice de cooccurrence et une liste de mots. Il produira un lexique contenant ces mots auxquels auront été assignés des traits sémantiques. Le format produit sera celui du lexique d'apprentissage. Vous ajouterez une option --random. Si elle est activée, le programme affectera les traits au mots de manière aléatoire. Vous ajouterez également une option --no-unknown. Si elle est activée, le programme ne cherchera pas à traiter les mots n'apparaissant pas dans le corpus d'apprentissage.
  • Un programme d'évaluation qui prend en entrée deux lexiques contenant les mêmes mots. Il produira trois résultats : le pourcentage d'accord entre les deux lexiques, si l'on prend en compte (1) tous les noms, (2) uniquement les noms simples et (3) uniquement les noms composés.

Bonus

  • Que faire pour améliorer les résultats ? Implanter vos solutions.
  • Implanter une fonctionnalité qui affecte un trait à un mot qui ne figure pas dans le corpus d'apprentissage. La méthode consiste à prendre le trait le plus fréquent pour son suffixe le plus long dans le lexique d'apprentissage. Comparer avec la précédente méthode. Est-il possible de combiner ces deux méthodes?

Modalités de rendu

Ce travail est personnel. Vous devrez écrire un rapport de 6 pages maximum. Il comprendra une description de votre système. Vous y expliquerez et justifierez les algorithmes utilisés. N'oubliez pas d'analyser les résultats en les comparant notamment à ceux obtenus avec l'option random. Il sera envoyé, au format pdf, par email à Matthieu Constant (mconstan [at] univ-mlv point fr) et Eric Laporte (eric.laporte [at] univ-mlv point fr). L'objet de l'email sera "projet TAL M2 - <votre nom>". Une soutenance de 20 min par étudiant sera également organisée. Attention : calculer et sauvegarder la matrice de cooccurrence avant la soutenance pour pouvoir la réutiliser sans avoir à la recalculer durant la présentation de vos programmes.

Date limite de rendu : mercredi 3 décembre 2008, 23h59
Date de soutenance : vendredi 5 décembre 2008, 14h