Estamos buscando una manera de tokenizar un texto de la misma manera o similar a como lo haría un motor de búsqueda.
La razón por la que estamos haciendo esto es para que podamos ejecutar un análisis estadístico de los tokens. El lenguaje que estamos usando es python, por lo que preferiría una técnica que funcione en ese idioma, pero probablemente podría configurar algo para usar otro idioma si es necesario.
Ejemplo
Token original:
¡Tenemos unos burritos geniales!
Más simplificado: (eliminar plurales y puntuación)
Tenemos un gran burrito
Aún más simplificado: (eliminar palabras superfluas)
gran burrito
Mejor: (reconozca el significado positivo y negativo):
burrito positivo
python
search
search-engine
lucene
Chris Dutrow
fuente
fuente
Respuestas:
Python tiene un gran conjunto de herramientas de lenguaje natural, el NLTK . Es compatible con la tokenización de palabras fuera de la caja:
La última estructura incluye etiquetas de lenguaje natural, que le permiten descartar palabras de acuerdo con su clasificación. Probablemente desee centrarse en las etiquetas
JJ
(adjetivo) yNN
prefijadas (sustantivo).A partir de ahí, puede aplicar la derivación y detectar adjetivos positivos y negativos.
Sin embargo, creo que para la clasificación de adjetivos, necesitaría crear su propio corpus a partir de recursos en línea como este ; la biblioteca te da las herramientas para esto.
Aquí hay un ejemplo de derivación utilizando el algoritmo de derivación de Porter:
O'Reilly publicó un libro en la biblioteca, ahora disponible en línea .
fuente