O Tuesday 12 de August de 2008, mvillarino escribiu:
 
> Como nos ficheiros de glosario normalmente non se meten formas
> conxugadas/declinadas/o_que_sexa, senón a forma "base, como o
> infinitivo no caso dos verbos, e o singular masculino/neutro no dos
> substantivos e adxectivos, resulta que antes de facer 1) ou 2) debo
> reducir a palabra --por simplificar-- que aparece no texto inicial á
> forma base, e analogamente co texto termo, e despois aplicar 1) ou 2).
> 
> Despois do rollo, as perguntas:
> 
> 1.- É isto lematizar?

Si. Digamos que un lematizador, dado o texto

"a nena come a mazá na rúa"

devolvería

"o neno comer o mazá en o rúa"

Vén sendo o procedemento de normalización máis simple.

> 2.- É isto o traballo dun stemmer?

Humm, non. Un stemmer o que fai é quedarse coa raíz (stem) da palabra
de acordo con determinados criterios. Por exemplo, un lematizador
devolvería "libraría" como lema de "librarías", pero un stemmer podería
devolver "libr".

> 4.- Que tal é o stemmer ese de PERL
> (http://search.cpan.org/~xern/Lingua-PT-Stemmer-0.01/lib/Lingua/GL/Stemmer.pm)
> ?

NPI. Pero eu para lematizar probaría a usar ben un tagger (freeling é
libre e está entrenado para galego) ben dicionarios construídos con FSA
(autómatas finitos), pero que eu saiba o que hai para galego a día de hoxe
non é libre.

Por exemplo:

http://www.eti.pg.gda.pl/katedry/kiw/pracownicy/Jan.Daciuk/personal/fsa.html

Este software é o que se emprega en LanguageTool
(http://www.languagetool.org) para a lematización. Aínda non hai soporte
para galego (e polo tanto tampouco dicionario), pero agora mesmo estou
traballando neste tema. Conto con ter un dicionario máis ou menos
decente en setembro/outubro.

Isto non é Perl, nin tampouco Python. É C++, aínda que _creo_ que o
estaban a portar a Java.

> 5.- PERL é ilexíbel, hai algún en Python?

Baahh, ilexíbel. Moito visio é o que hai :)

> 6.- Python non é rápido, hay algún utilizábel como biblioteca C++?

Vid supra :) Pero non é un stemmer, só son táboas mooooi rápidas e
presentan o problema da ambigüidade.

para    parar
para    parir
para    para

Coido que para o que buscas o mellor sería freeling, que é C++ e
tamén utilizábel como biblioteca. E rápido. Mesmo se podería ver a
posibilidade de entrenalo usando como corpus cadeas de ficheiros PO,
aínda que levaría o seu tempo.

-- 
Susana Sotelo Docio                         http://gramatica.usc.es/~sdocio
Linux User #96506                                          gpg-id: 0E9BEDA4

"Only after the last tree has been cut, only after the last river has
been poisoned, only after the last fish has been fished, only then you will
discover that money can not be eaten." -- Evelyn Waugh

Responderlle a