Hola a todos,

En un proyecto de buscador web en el que hemos trabajado recientemente
hemos descubierto Snowball: http://snowball.tartarus.org/

Se trata de un pequeño lenguaje para el manejo de strings que permite
implementar algoritmos de normalización del lenguaje (steeming
algorithms) mediante sencillos scripts. Posteriormente mediante un
compilador se genera una salida en C o en Java.

Como en cualquier buscador de calidad pretendíamos conseguir que las
consultas fueran case-insensitive y accent-insensitive. Pero además, en
esta ocasión también queríamos que las búsquedas fueran independientes,
hasta cierto punto, de las terminaciones morfológicas. Es decir, que se
pudiera buscar indistintamente por "documentos ténicos" y "documentación
técnica", o por "acceso", "accesible", "accesibilidad", etc.

Para eso necesitabamos implementar un algoritmo de normalización
(stemmer) que redujera los términos de la consulta a las unidades
mínimas con significado léxico (lexemas). Este tipo de algoritmos,
basados en el algoritmo de Porter
(http://www.tartarus.org/~martin/PorterStemmer/) para la lengua inglesa,
son fáciles de escribir en Snowball para otros idiomas. De hecho, hay
disponibles algoritmos en la página de snowball para varios idiomas,
incluido el español.

Creo que es este lenguaje es una opción muy interesante para cualquier
proyecto de recuperación de información, en general.

Un saludo, Rafa.

-- 
Rafael Luque, <[EMAIL PROTECTED]>


---------------------------------------------------------------------
Para eliminar la suscripción, mail a: [EMAIL PROTECTED]
Para comandos adicionales, mail a: [EMAIL PROTECTED]


Responder a