:: Enseignements :: Master :: M1 :: 2009-2010 :: Ingénierie Linguistique 1 ::
![[LOGO]](http://igm.univ-mlv.fr/ens/resources/mlv.png) | n-grammes |
Préliminaires
Pour cette séance, vous avez à disposition une collection de textes étiquetés manuellement en catégorie grammaticale:
/home/ens/mconstan/tal/suzanne (pour téléchargement,
ici).
Exercice 1 - n-grammes de lettres
Dans cet exercice, l'unité minimale de traitement est le caractère.
-
Écrire une fonction qui prend comme paramètre un nom de fichier texte.
Cette fonction doit stocker et compter les unigrammes de lettres de ce fichier.
- Écrire une autre fonction qui stocke et compte les bigrammes de lettres de ce fichier.
- Écrire encore une autre fonction qui stocke et compte les trigrammes de lettres de ce fichier.
- Écrire une fonction qui prend comme paramètres une chaîne de caractères prefix et trois éléments représentant les unigrammes, bigrammes et trigrammes calculés dans les trois questions précédentes.
Le paramètre prefix correspond à une séquence de lettres déjà tapées par un utilisateur.
La fonction doit renvoyer la lettre suivante la plus probable étant donné prefix.
-
Étant donne un mot avec une lettre manquante marquée par le symbole *, écrire une fonction qui permet de prédire cette lettre.
Exercice 2 - Étiquetage morphosyntaxique simple
Pour cet exercice, on divise la collection de textes étiquetés en deux corpus: un corpus d'apprentissage (fichiers A01.txt, A02.txt, ..., A14.txt) et un corpus d'évaluation (A19.txt et A20.txt).
- Pour chaque mot du corpus d'apprentissage, calculer son étiquette la plus fréquente.
- Écrire une fonction qui prend un texte en entrée et assigne à chacun de ses mots son étiquette la plus fréquente.
-
Évaluer automatiquement votre étiquetage à partir de ce qui est attendu dans le corpus d'évaluation.
- Bonus: implémenter l'algorithme de Viterbi pour les bigrammes puis évaluer et comparer avec la précédente méthode.
© Université de Marne-la-Vallée