2009-10-31 16 views
6

Estoy mirando para extraer nombres y lugares de ráfagas muy cortas de texto ejemplo¿Debo usar LingPipe o NLTK para extraer nombres y lugares?

 
"cardinals vs jays in toronto" 
" Daniel Nestor and Nenad Zimonjic play Jonas Bjorkman w/ Kevin Ullyett, paris time to be announced" 
"jenson button - pole position, brawn-mercedes - monaco". 

Estos datos se encuentra actualmente en una base de datos MySQL, y yo (más o menos) tienen un registro separado para cada atleta, aunque los nombres a veces se deletrean mal, etc.

Me gustaría extraer los atletas y las ubicaciones. Normalmente trabajo en PHP, pero no he podido encontrar una biblioteca para la extracción de entidades (y es posible que desee profundizar en algunos NLP y ML en el futuro).

De lo que he encontrado, LingPipe y NLTK parecen ser los más recomendados, pero no puedo entender si alguno de ellos realmente se adapta a mi propósito, o si algo más sería mejor.

No he programado ni en Java ni en Python, así que antes de comenzar a aprender nuevos idiomas, espero obtener algunos consejos sobre qué ruta debo seguir u otras recomendaciones.

+0

"... una mesa separada para cada atleta ..." ¿tal vez te refieres a un _record_ para cada atleta? (Eso sería una gran cantidad de tablas de lo contrario ...) – mjv

+0

sí! ¡idiomas/módulos sería el menor de mis problemas si tuviera una mesa separada para cada atleta! Gracias por señalar eso. – pedalpete

Respuesta

4

Lo que estás describiendo es named entity recognition. Así que recomendaría consultar el otro questions con respecto a este tema si aún no los ha visto. This parece la respuesta más útil para mí.

Realmente no puedo comentar si NLTK o LingPipe es el más adecuado para esta tarea, aunque al mirar las respuestas parece que hay muchos otros recursos escritos en Java.

Una ventaja de ir con NLTK es que Python es muy accesible como idioma. La otra ventaja es que el NLTK book (que está disponible de forma gratuita) ofrece una introducción a Python y NLTK al mismo tiempo, que sería útil para usted.