Nuxeo/Blogs

Product & Development / All about the Nuxeo Platform, from strategy to feature highlights to dev tricks

Product & Development

[GramOOo] [tagging] petit test

without comments

J’ai testé notre tagger avec le petit texte suivant :

Voici une blague de Toto qui fait du surf. Seulement, sur la piste, la
neige est mauvaise, elle a fondu. Et Toto qui ne sait pas surfer se casse la
figure. Alors il hurle:
“Dorénavant je ne ferai plus de surf le week-end de Pâques !”
Les personnes qui ont skié ce week-end comprendront. Je sais, ce texte ne
fait pas trop rigoler. Je voulais voir la façon dont il était désambiguïsé.
Il est désambiguïsé !

Voici la sortie du tagger sans qu’aucune règle ne soit appliquée:
Les mots ambigus sont entre balises <B></B>

<?xml version=”1.0″ encoding=”utf-8″ standalone=”no”?>
<!DOCTYPE teacs SYSTEM “/dtds/gramadoir.dtd”>
<teacs>
<line> <B><Z><A/><P/></Z>
Voici
</B> <B><Z><D f
s/><J f s/><N f s/></Z>une</B> <B><Z><N f
s/><V imp pres 2 s/><V ind pres 1 s/><V ind pres 3
s/><V sub pres 1 s/><V sub pres …

Written by

March 30th, 2005 at 12:27 pm

[GramOOo] [tagging] ordre des règles et plusieurs passages

without comments

L’ordre des règles est très important dans Gramadoir. La première que trouve
le programme est appliquée. Il faut donc mettre les plus générales à la
fin.
Si le contexte qui sert à désambiguïser est lui même ambigu, la règle ne
s’applique pas.
Prenons les trois mots suivants:

<line> <R pers suj 3 f s>elle</R> <V etre ind pres
3 s>est</V> <V ppa f s>prise</V>
</line>

Elle” n’est pas ambigu. Il permet de désambiguïser “est” qui
peut être un nom, un adjectif ou le verbe être. S’il est précédé d’un pronom
personnel, alors c’est un verbe. Ensuite, il faut que la règle qui concerne
la désambiguïsation du participe passé soit placée après, sinon, elle ne va
pas s’appliquer si “est” n’est pas encore desambiguïsé. Mais par
contre, il faut qu’elle soit placé avant les règles sur l’indicatif sinon
prise sera étiqueté :

<V ind pres

Written by

March 29th, 2005 at 10:12 am

[OOo]Uno Slots for the 2.0

without comments

Uno slots are ID that uniquely identifies functions generally available
through menus. The macro recorder uses these UNO slots to call the menu
actions through dispatching. It is sometimes the quickest and only way to
cover some functionalities not available through API (like copy/paste)

The OOo Framework project
announced the publication of this list for OOo2.0. It is available at

http://www.openoffice.org/files/documents/25/2570/commandsReference.html

An other use of the slots, less known, is to call functions directly from
command line, enabling direct access to some wizards (new name for
autopilots) and toolboxes:

  • New doc from Templates : /opt/openoffice.org1.9.84/program$ ./soffice
    slot:5500
  • New presentation wizard : /opt/openoffice.org1.9.84/program$ ./soffice
    slot:6686
  • Macro organizer : /opt/openoffice.org1.9.84/program$ ./soffice
    slot:6691

Although it is disadvised, the numerical codes seem to be required instead
of symbolic names in this particular use.

(Post originally written by Laurent Godard on the old Nuxeo blogs.)…

Written by

March 23rd, 2005 at 12:49 pm

[GramOOo] [tagging] avancement du projet

without comments

Nous avons maintenant une liste de tags et lexique taggé, les ressources
pour démarrer le travail de tagging.
Nous les avons soumises à Kevin
P. Scannell
qui a adapté son programme pour le gaélique (qui contenait
moins de 255 tags alors que nous en avons plus) pour que nous puissions
faire une version française.
J’en profite pour remercier Kevin qui est très présent et nous aide
beaucoup.
Il a donc vu que son programme pouvait prendre en compte le français et a
sorti un premier résultat:

<line> <N f
s>Une</N> <N f s>première</N> <N f
s>version</N> <V ind pres 3 s>fonctionne</V>
<A>parfaitement</A>. </line>

Nous voyons déjà dans cet exemple, qu’il y a deux mots ambigus qui ont
plusieurs étiquettes dans le lexique:
Une a trois tags,  première en a deux :
une    <J f s>
une    <D f s>
une    <N f s>
première <N f s>
première <J f …

Written by

March 23rd, 2005 at 10:35 am

[GramOOo] [tagging] évaluation de la progression

without comments

Nous avons sorti quelques chiffres afin de mesurer l’avancement de notre
tagger.
Sans qu’aucune règle ne soit appliquée (ni aucune fréquence car elles
n’entreront en jeu que s’il y a échec des règles), Gramadoir donne 60% de
mots non ambigus, soit 6 mots sur 10.
Avec des règles désambiguïsant uniquement les detérminants “le” et “la”, on
gagne 2%. On passe à 65% de non ambigüs avec quelques règles sur les
déterminants, les noms et les adjectifs.
Notons que ces dernières ne sont pas encore optimales et vont être
améliorées. Le gain qu’elles apportent devrait être bien plus conséquent. En
effet, les SN (= syntagmes nominaux, c’est-à-dire notament déterminant, nom,
adjectif) sont nombreux dans la langue et les noms sont très souvent
ambigüs.

Nous allons également utiliser les taux de précision et de décision définis
par la campagne d’évaluation de GRACE (http://www.up.univ-mrs.fr/veronis/Atala/TALN/pdf/A76.pdf)
et qui servent à évaluer des taggers …

Written by

March 23rd, 2005 at 10:33 am

[GramOOo] [tagging] progression

without comments

Aujourd’hui nous avons atteint un taux de mots non ambigus de 77% (le taux
sans aucune règle était de 54%). C’est un bon avancement au niveau de la
quantité à désambiguïser. Mais cela ne veut pas dire que 77% de mots sont
bien étiquetés, cela signifie que 77% des mots n’ont qu’un seul tag. D’où
l’importance de taux tels que “précision” et “décision” qui mesurent à la
fois le nombre de mots non ambigus et le nombre de mots correctement
étiquetés.

(Post originally written by Myriam Lechelt on the old Nuxeo blogs.)…

Written by

March 23rd, 2005 at 10:32 am

Moving from Five to Zope3: It gets easier every day

without comments

Well, every week at least. The work on CMF integration was recently released
as Five 0.3, and last week the announcement that Zope2.8 will integrate Five
and ship with Zope3s component architecture came. So, during the weekend I
decided to put the theory to the test: How hard is it to take a product made
for Five and moving it to Zope 3? Well, there are both easy bits, and
difficult bits. The easy bit are handled by search and replace. They are:

Replacing some Zope2 and Five imports with Zope3 imports.

The difficult bit here is to know what to import. The Zope 2 and Five code
isn't organized the same as the Zope 3 code, so "from Products.Five.a import
b" is not "from zope.a import b" but rather "from zope.app.foo.browser.a
import b". "OFS.Folder" is "zope.app.folder.folder" and so on. So, it's a
matter of trying to load Zope3, getting …

Written by

March 22nd, 2005 at 5:21 pm

And now for something completely different!

without comments

As most readers of Nuxeos blogs will know, Nuxeo organised
a sprint
here in
Paris last week. what started out in December as a sprint to make Five
more complete and usable, especially with CMF, had by the time the sprint
started turned into an Zope 3 ECM sprint. Mainly thanks to that the
necessary Five enhancements had
already happened
. But after the first day of manu discussions on what we
needed, we realized that what we were trying to do was to build more
frameworks, but what was needed was more people!

The group of people using Zope 3 is currently small, close-knit and
extremely clever. The result of this has been an excellent framework for
building web applications. But as we saw with Zope 2, frameworks are not
enough. Building something with a framework means you have to learn that
framework. What is needed to increase the …

Written by

March 22nd, 2005 at 4:35 pm

[GramOOo] [tagging] difficulté de désambiguïser ce qui n’est pas parfait

without comments

Nous devons garder à l’esprit que les règles vont servir à désambiguïser non
seulement des phrases correctes, mais aussi et surtout des phrases
fausses.
Comme la désambiguïsation se fait sur le contexte droit ou gauche, il faut
tenir compte du fait qu’il puisse contenir des erreurs.
Imaginons que l’utilisateur écrive:
    Des chats noir

Et que l’on ait la règle suivante:

<N m s>ANYTHING</N>
<B><Z>ANYJMS</Z>ANYTHING</B>:<J m s>

Cette règle ne va désambiguïser seulement les adjectifs maculins singuliers
qui sont précédés de noms masculins singuliers. Elle ne désambiguïse que ce
qui est correct grammaticalement et ne désambiguisera donc pas l’exemple
ci-dessus car chats est pluriel et noir singulier. Par
conséquent, on ne pourra pas corriger cette faute.
Ici la solution est de généraliser le nom qui précède:

<N>ANYTHING</N>
<B><Z>ANYJMS</Z>ANYTHING</B>:<J m s>

(un adjectif masculin singulier ambigu précédé de n’importe quel nom est un
adjectif masculin singulier).

Un autre exemple et celui …

Written by

March 22nd, 2005 at 9:12 am

[gramOOo] [tagging] Gramadoir, quelques fichiers importants

without comments

Quelques mots sur les principaux fichiers de Gramadoir.
- lexicon-fr.txt : contient toutes les formes fléchies du lexique avec le
nombre qui correspond à leur tag.
- pos-fr.txt : liste tous les tags et le nombre qui leur correspond
- aonchiall-fr.in : répertorie les règles de désambiguïsation du
tagging
- macra-fr.meta.pl : macro qui permet de définir des mots qui globalisent
certains mots pour les règles, à l’aide d’expressions régulières (ex si l’on
veut dire “n’importe quoi” ou “tous les adjectifs”).
- unigram-fr-txt : liste les tags par fréquences.

Pour plus de détails : http://borel.slu.edu/gramadoir/manual/c409.html

(Post originally written by Myriam Lechelt on the old Nuxeo blogs.)…

Written by

March 21st, 2005 at 3:23 pm