![]() |
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
![]() ![]() Traitement Automatique des Langues par Inférence Statistique Moyennant l'Annotation de Nombreux Exemples Description
L'outil Talismane est un analyseur syntaxique développé par Assaf Urieli dans le cadre de sa thèse au sein du laboratoire CLLE-ERSS, sous la direction de Ludovic Tanguy. Il est écrit intégralement en Java : il fonctionne donc sur tous les systèmes d'exploitation et est facilement intégrable à d'autres applications. Pour passer d'un texte brut à un réseau de dépendances syntaxiques, Talismane utilise une analyse en cascade avec quatre étapes classiques pour ce type de tâche : le découpage en phrases, la segmentation en mots, l'étiquetage (attribution d'une catégorie morphosyntaxique), et le parsing (repérage et étiquetage des dépendances syntaxiques entre les mots). La tâche de chacun des modules est définie comme un problème de classification, et résolue de façon statistique, en entraînant un modèle probabiliste sur un corpus annoté. Chacun des modules est configurable à la fois au niveau des traits et des règles. Les traits sont les informations sur les configurations rencontrées dont dispose l'algorithme pour prendre chacune des décisions, alors que les règles sont des contraintes qui forcent (ou interdisent) des décisions locales. Le modèle par défaut proposé par Talismane utilise des traits classiques pour chacune des opérations. Pour l'étiquetage, par exemple, sont calculés pour chaque mot des traits liés à sa forme, aux étiquettes indiquées dans un lexique de référence, aux catégories des mots qui l'entourent, etc. La syntaxe de définition des traits est suffisamment expressive pour définir des traits plus complexes, par exemple le fait que le mot précédent soit situé entre parenthèses. Les règles, qui ne sont appliquées qu'au moment de l'analyse (et pas lors de l'apprentissage), permettent de remplacer ou de contraindre les réponses fournies par le classifieur probabiliste, quand un critère est rempli. Des règles définissables suivant une syntaxe souple permettent d'éviter des résultats aberrants (comme l'attribution d'une classe fermée à un mot inconnu du lexique, l'attribution de deux sujets à un verbe, etc.) soit de respecter des contraintes propres à un corpus spécifique (en attribuant une catégorie fixe à un mot donné, par exemple). Pour le parsing, Talismane se base sur l'algorithme décrit par (Urieli et Tanguy, 2013) avec certaines modifications pour rendre possible la recherche par faisceau. Liens
Responsable ressource
Assaf UrieliContact : Droits
Talismane est distribué sous license Affero GPL v3.Lancement Rapide
Vous devez installer une version de Java récente (>= 1.8) et extraire l'archive talismane-distribution-XXX-bin.zip
(XXX étant le numéro de version, à partir de la version 3.0.0).
Dans le même répertoire, placez les fichiers talismane-fr-XXX.conf et frenchLanguagePack-XXX.zip. java -Xmx1G -jar -Dconfig.file=talismane-fr-XXX.conf talismane-core-XXX.jar encoding=UTF8 inFile=data/frTest.txt outFile=data/frTest.talLe codage du texte par défaut (latin1 ou UTF-8) est celui de votre environnement de travail. Pour le modifier, consultez la documentation. Notez que le système prend une vingtaine de secondes pour charger les lexiques en mémoire avant de démarrer l'analyse. Par exemple, si le fichier exemple.txt contient la phrase "Les poules du couvent couvent.", la sortie exemple.tal devrait être la suivante :
Références
|