Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
public:composant_de_tokenisation [2016/09/22 14:37] matthieu.decorde@ens-lyon.fr |
public:composant_de_tokenisation [2019/02/26 10:30] (Version actuelle) slh@ens-lyon.fr |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
Améliorer la compatibilité entre la tokenisation et la lemmatisation dans le cas de TreeTagger. | Améliorer la compatibilité entre la tokenisation et la lemmatisation dans le cas de TreeTagger. | ||
- | ===== Méthode ===== | + | Améliorer la relation entre la tokenisation et le formatage des mots dans les éditions. |
+ | ===== Spécification ===== | ||
- | ==== Solution 1 : SimpleTokenizerXml==== | + | ==== Gestion des tirets ==== |
- | === Gestion de la langue === | + | Il faut gérer les clitiques : |
+ | * avez-vous : OK | ||
+ | * est-t-il : ??? | ||
- | Pour améliorer la lemmatisation TreeTagger pour les langues (en, fr, ga et it). | + | Il faut gérer des caractères avec espaces avant et après dans l'édition : |
+ | * 'GP de visages de prisonniers- Pano sur un libéré marchant sur une route de campagne' -> 'GP de visages de prisonniers - Pano sur un libéré marchant sur une route de campagne' | ||
- | Faire évoluer le tokenizer XML de TXM en intégrant les règles de tokenization des clitiques des langues (en, fr, ga et it) du script Perl de tokenisation TreeTagger. | + | Il faudrait gérer des caractères dont la gestion typographique dans la source est différente de cette réalisée dans l'édition par défaut : |
+ | * 'GP de visages de prisonniers- Pano sur un libéré marchant sur une route de campagne' -> 'GP de visages de prisonniers- Pano sur un libéré marchant sur une route de campagne' | ||
- | === Gestion des classes de caractères === | ||
- | On découpe le flux de caractères par les classes suivantes pour obtenir les mots : | ||
- | * Caractères séparateurs | ||
- | * Espaces | ||
- | * Ponctuations | ||
- | * Caractères d'élision | ||
- | * Caractères de fin de phrase | ||
- | |||
- | Il faut au moins qu'une classe de séparateur soit définie. | ||
- | |||
- | Si une classe n'est pas défini, on ne l'utilise pas pour découper le flux (ticket #1878). | ||
==== État de la plateforme ==== | ==== État de la plateforme ==== | ||
Ligne 54: | Ligne 48: | ||
* Unitex | * Unitex | ||
* ... à compléter | * ... à compléter | ||
+ | |||
+ | ==== Solution 1 : SimpleTokenizerXml ==== | ||
+ | |||
+ | === Formats === | ||
+ | |||
+ | == Entrée == | ||
+ | |||
+ | * fichier XML | ||
+ | * pas de w ou w pré-encode certains ou tous les mots; | ||
+ | * quand w : | ||
+ | * les attributs w@PP deviennent des propriétés de mots | ||
+ | * attention, si existant, l’attribut @id doit être conforme au format XML-TXM | ||
+ | |||
+ | == Sortie == | ||
+ | |||
+ | * fichier XML | ||
+ | * w encode tous les mots (pour indexation) | ||
+ | * les attributs encodent les propriétés de mots | ||
+ | * l’attribut @id des w créés est forgé (cf format XML-TXM). | ||
+ | |||
+ | === Gestion de la langue === | ||
+ | |||
+ | Pour améliorer la lemmatisation TreeTagger pour les langues (en, fr, ga et it). | ||
+ | |||
+ | Faire évoluer le tokenizer XML de TXM en intégrant les règles de tokenization des clitiques des langues (en, fr, ga et it) du script Perl de tokenisation TreeTagger. | ||
+ | |||
+ | La langue de tokenisation est réglée dans le formulaire d'import (fichier import.xml). | ||
+ | |||
+ | Le tokenizer utilise les 2 premières lettres de la langue indiquée (ex : fro -> fr) pour pouvoir déclencher la tokenisation propre à une langue tout en ayant des variantes de fichiers paramètres TreeTagger pour une même langue (eg tous les fichiers paramètres du français - partageant les mêmes règles de segmentation du français - doivent avoir un nom commençant par 'fr'). | ||
+ | |||
+ | === Gestion des classes de caractères === | ||
+ | |||
+ | On découpe le flux de caractères par les classes suivantes pour obtenir les mots : | ||
+ | * Caractères séparateurs | ||
+ | * Espaces | ||
+ | * Ponctuations | ||
+ | * Caractères d'élision | ||
+ | * Caractères de fin de phrase | ||
+ | |||
+ | Il faut au moins qu'une classe de séparateur soit définie. | ||
+ | |||
+ | Si une classe n'est pas défini, on ne l'utilise pas pour découper le flux (ticket #1878). | ||
+ | |||
+ | === Corpus de test === | ||
+ | |||
+ | Établir un corpus de test stable qui contient tous les cas que l'on souhaite : | ||
+ | * plans textuels : hors texte | ||
+ | * ponctuations | ||
+ | * nombres | ||
+ | * mot pré-balisés | ||
+ | * blancs séparateurs de mots | ||
+ | * clitiques : it, fr et en | ||
+ | |||
+ | le résultat de la tokenisation du corpus stable doivent être sauvegardés pour pouvoir être comparés quand le code du tokenizer changera. | ||
==== Prototypes ==== | ==== Prototypes ==== |