mercredi 11 septembre 2013

Installer Apache UIMA Java (environnement d'exécution et de développement)

Il existe 3 implémentations concurrentes d'UIMA

  • UIMA Java (uimaj) (à préférer pour les débutants)
  • UIMA-AS (implémentation java à privilégier pour de l'asynchronous scaleout)
  • UIMA CPP (à préférer pour développer autrement qu'en Java)
Les outils Eclipse ne sont pas indispensables mais facilitent une activité de développement.

Installation le framework Apache UIMA Java et ses outils de développements

  1. Télécharger une archive d'un binaire de "UIMA Java framework & SDK" dans la section de téléchargement de UIMA (contient le nécessaire pour exécuter et développer des composants, des workflows et des applications UIMA en java)
  2. Désarchiver dans le répertoire d'installation de votre choix
  3. Fixer les variables d'environnement. Pour cela je suis les consignes du fichier README présent dans l'archive.
    1. Set JAVA_HOME to the directory of your JRE installation you would like to use for UIMA.
    2. Set UIMA_HOME to the apache-uima directory of your unpacked Apache UIMA distribution
      • export UIMA_HOME=/my/applications/apache-uimaj
    3. Afin d'exécuter les outils UIMA en ligne de commande, ajouter UIMA_HOME/bin to your PATH 
      • export PATH=${UIMA_HOME}/bin:$PATH
    4. Facultatif : afin de faciliter la configuration ultérieure des exemples, ajuster les exemples à votre répertoire d'installation (via l'exécution du script UIMA_HOME/bin/adjustExamplePaths.sh)
  4. Facultatif : Un test d'installation Afin de réaliser ce test consulter la page "Comment exécuter des chaînes de traitement avec UIMA " notamment la section "Exécution d'une chaîne de traitement en ligne de commande".

Installer les outils Eclipse pour assister le développement (via plugins)

  1. Indiquer à Eclipse, le site où récupérer des plugins liés à UIMA 
    • Help > "Software updates | Install New software" > Add 
    • Name : "Apache UIMA" ; URL http://www.apache.org/dist/uima/eclipse-update-site
  2. Indiquer lui ensuite le site avec lequel vous voulez travailler. Attendez quelques instants et le système vous proposera une liste proche de celle-ci
    • Apache UIMA Eclipse tooling 
    • Apache UIMA Ruta 
    • Apache UIMA-AS (Asynchronous Scaleout) Eclipse tooling
  3. Cocher les plugins que vous voulez ajouter puis "Next". Certains peuvent ne pas vouloir s'installer. Les Eclipse tooling sont la priorité. UIMA-AS tooling seulement si vous voulez faire du AS. Ruta si vous savez que vous voulez faire du Ruta.
    • Si vous rencontrez des problèmes : Commence une étape de résolution de dépendances, il est possible qu'il faille cocher plus de sites afin de permettre cette résolution, il est possible qu'il faille faire des install un à un des sites, et il est possible qu'il faille commencer par ceux natifs d'eclipse. Quelques refresh.
  4. Accept the licence
  5. Il se peut qu'il vous signale que vous voulez installer un "Unsigned content", accepter...

Configurer son environnement au sein d'Eclipse


  1. Définir la variable UIMA_HOME au sein d'Eclipse
    • Cliquer onglet Window > Preferences > Java > Build Path > Classpath Variables > Faire New (Name: UIMA_HOME et Path: Folder... > vers "applications/apache-uima") > Ok > Ok > Yes (rebuild)
  2. Importer le répertoire de codes exemples UIMA_HOME/examples au sein d'Eclipse
    • Cliquer onglet File > Import ; Sélectionner "General/Existing Project into Workspace" ; Cliquer "Next" ; Cliquer "Browse" et naviguer jusqu'au répertoire UIMA_HOME
  3. Facultatif : Un test d'installation au sein d'Eclipse Afin de réaliser ce test consulter la page "Comment exécuter des chaînes de traitement avec UIMA " notamment la section "Exécuter une chaîne de traitement au sein d'Eclipse". 

Installer les composants et les outils tiers présents dans la sandbox d'UIMA (addons et tools)


Références



Liens externes 

jeudi 13 juin 2013

Toward a Free French Treebank


One of my current objective is to develop a Free French treebank allowing to train statistical systems on common NLP tasks such as text segmentation, morphological analysis, chunking, parsing...
As part of this project, in [2] we show a way of doing it.

Download

Here you can download the current version of the Free French Treebank [0].

Licence 


The resource (i.e. annotations) is distributed under the terms of this Lesser General
Public License for Linguistic Resources (LGLP-LR) [1].
This means you can use it in the context you want, you can modify it, and
distribute it as long as you do the same with your contribution.
If you use this project to support academic research, then please cite the
following paper as appropriate [2].


Notes on the current release


The current version is based on the  frwikinews-20130110 articles dump [3].
It has 28000 news articles covering a period from January 2005 to now.
After filtering of sentences with less than 5 tokens the version has 87461
sentences and 2535396 tokens. Texts are available under Creative Commons
Attribution 2.5 (CC-BY 2.5) licence. Prior versions from September 2005 are in
public domain. The text format have been cleaned up by using a Java Wikipedia
 API  [4], then tokenized using a rule-/dictionary-based tokenizer [5], then
POS tagged by the Stanford tagger [6].
The resource contains
  * xml-bz2 XML source archive
  * txt raw text
  * txt-tok a sentence per line and whitespace-separated words
  * txt-tok-pos a pos tag is associated with each word and is separated from this one with an underscore


References


[0] https://docs.google.com/forms/d/1fSiEaAPeq3S4tF1P1vuWJXuDvMUMQvnQILP2b-58m7k/viewform
[1] http://infolingu.univ-mlv.fr/lgpllr.html
[2] @inproceedings{hernandez:2013:taln,
    title = {{Construction automatique d'un large corpus libre annot{\'e} morpho-syntaxiquement en fran{\c c}ais}},
    author = {Hernandez, Nicolas and Boudin, Florian},
    abstract = {{Cet article {\'e}tudie la possibilit{\'e} de cr{\'e}er un nouveau corpus {\'e}crit en fran{\c c}ais annot{\'e} morpho-syntaxiquement {\`a} partir d'un corpus annot{\'e} existant. Nos objectifs sont de se lib{\'e}rer de la licence d'exploitation contraignante du corpus d'origine et d'obtenir une modernisation perp{\'e}tuelle des textes. Nous montrons qu'un corpus pr{\'e}-annot{\'e} automatiquement peut permettre d'entra{\^\i}ner un {\'e}tiqueteur produisant des performances {\'e}tat-de-l'art, si ce corpus est suffisamment grand.}},
    language = {Fran{\c c}ais},
    affiliation = {Laboratoire d'Informatique de Nantes Atlantique - LINA},
    booktitle = {{Actes de la conf{\'e}rence TALN-RECITAL 2013}},
    address = {Sables d'Olonne, France},
    audience = {nationale },
    year = {2013},
    month = Jun,
    pdf = {http://hal.archives-ouvertes.fr/hal-00816350/PDF/TALN13.pdf},
}