:: Enseignements :: Licence :: L3 :: 2007-2008 :: Introduction à l'informatique linguistique ::
[LOGO]

Tokenisation


Le but de ce TP est de découper un texte en tokens à l'aide d'expressions rationnelles. Pour cela, nous utiliserons l'outil NLTK.

Exercice 1 - Prise en main de NLTK et de Python

Tout au long des travaux dirigés d'informatique linguistique, vous aurez à utiliser NLTK (Natural Language ToolKit) qui fournit un certain nombre d'outils de base du traitement automatique de textes. NLTK est interfacé pour le langage Python. Vous pouvez utiliser la documentation en ligne ici.

Pour prendre la main avec Python, essayer les exemples du tutoriel.

Il existe une version interactive de Python pour prendre la main (commande python). Mais, une fois cette étape passée, il vous est demandé d'écrire les scripts python dans des fichiers (extension .py) et de lancer le programme avec la commande python <fichier.py><fichier.py> est le fichier contenant votre script.

Exercice 2 - Tokenisation de base

Pour cet exercice, vous pouvez vous aider de la documentation sur le traitement des mots. Nous supposons ici qu'un token de base est :
  • un mot : une séquence de lettres
  • un chiffre
  • un symbole de ponctuation
En utilisant la librairie NLTK, écrire un script Python qui découpe un texte en tokens à l'aide d'une expression rationnelle. Vous pouvez vous aider du script ici qu'il suffira de modifier. Pour exécuter ce script, il suffit de taper la commande :
			python tokenize.py <texte1> <texte2> ...			
		
avec <texte1> <texte2> ... les noms des fichier texte à tokeniser.

Vous trouverez une documentation sur les expressions rationnelles en Python ici.

Dessiner un automate à états finis équivalent à votre expression rationnelle.

Exercice 3 - Tokenisation avancée

Modifier votre script pour que votre expression rationnelle reconnaisse aussi comme tokens, les nombres (entiers et décimaux) et les prix du type $15.3. Dessiner un automate à états finis équivalent.

Exercice 4 - Reconnaissance de dates

Modifier votre script pour que votre expression rationnelle reconnaisse aussi les dates en chiffres comme tokens. Dessiner un automate à états finis équivalent.