[Qualipso-a4] instalación y pruebas de las herramientas de NLP

Javier Pueyo jpueyo en gsyc.es
Lun Dic 7 17:27:30 CET 2009


El lun, 07-12-2009 a las 14:41 +0100, Jose Gato Luis escribió:
> Viendo hoy el mensaje de error con más detalle, he visto que no me 
> encontraba el modulo de nltk.  Solucionado ese problema, ahora me ocurre 
> el siguiente, muy parecido:

Jose y yo hemos comprobado que se trataba de un problema de versiones
del NLTK. Hemos actualizado ambos a la última versión (la que viene en
el paquete Debian de nuestro SVN). Es la versión 

>>> import nltk
>>> nltk.__version__
'2.0b5'

Desafortunadamente en esta versión el fichero

/usr/lib/python2.5/site-packages/nltk/probability.py

tiene un bug y hace fallar la ejecución de los clasificadores (aunque
permite crearlos sin problemas). He comentado la línea 131 de ese
fichero que es la que da problemas y he subido la versión modificada al
SVN, bajo:

private/work/A4/3rdIteration/src/jpueyo/NLTK_additions/nltk/probability.py

Copiando ese fichero en nuestra instalación de NLTK 2.0b5 debería
solucionar el problema... I hope...

Un saludo

Javier

> 
> 
> Traceback (most recent call last):
>    File "test.py", line 7, in <module>
>      only_topics = NLP.getItemTopics(item0)
>    File 
> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py", 
> line 116, in getItemTopics
>      topics = self.getItemTopicsEntities(doc_item, is_mail, only_topics)
>    File 
> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py", 
> line 107, in getItemTopicsEntities
>      topics = self.str_to_list(topics_entities)
>    File 
> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py", 
> line 144, in str_to_list
>      my_list = eval(my_string)
>    File "<string>", line 1
>      /usr/lib/python2.5/site-packages/nltk/data.py:150: 
> DeprecationWarning: object.__init__() takes no parameters
>      ^
> SyntaxError: invalid syntax
> 
> 
> El problema, es que intenta hacer un eval sobre my_string, que tiene el 
> siguiente valor:
> 
> /usr/lib/python2.5/site-packages/nltk/data.py:150: DeprecationWarning: 
> object.__init__() takes no parameters
>    str.__init__(self, path)
> ['noissue', 'license']
> 
> 
> algún error, esta concatenando algún residuo al valor verdadero de 
> my_string ['noissue', 'license']
> 
> 
> 
> El 07/12/09 14:08, Javier Pueyo escribió:
> > El lun, 07-12-2009 a las 01:21 +0100, Jose Gato Luis escribió:
> >> ok, mañana pruebo. De todos modos, explícame un poco en que consiste la
> >> función str_to_list, si aun así no me funciona, puedo tratar de buscar
> >> una alternativa :)
> >
> > La función str_to_list lo que hace es convertir una cadena de texto (a
> > la que se le supone un formato de lista) a una lista real. Como de un
> > script a otro estoy pasando cadenas de texto (que es lo único que me
> > permite pasar el módulo "subprocess") necesitaba un método rápido para
> > convertir esas cadenas a listas. Para ello str_to_list utiliza un eval
> > que (creo que) evalúa si la cadena que le pasas está bien formada y
> > devuelve la misma cadena como lista. Es decir, que yo le paso una str
> > como:
> >
> > ['issue', 'license']
> >
> > y me la devuelve como una lista de verdad sobre la que se puede trabajar
> > normalmente.
> >
> > Cuando a mí me salía el bug era porque la cadena que yo le pasaba desde
> > un script no estaba bien formada (es decir, que a eval no le parecía una
> > lista). Esto me ocurría cuando el item traía una backslash suelta que
> > freeling no procesaba bien y la cadena que me devolvía no era correcta.
> >
> > En fin, que si en alguna parte del proceso se produce un error al
> > procesar el ítem, es muy probable que nos encontremos con este resultado
> > (quizá la cadena llega vacía si algún script falla). Tengo en el TODO
> > list mejorar el código para manejar los errores antes de llegar ahí.
> >
> > Otra cosa que se me ocurre es que en un python en una máquina de 64 bits
> > eval funcione de otra manera, pero no tengo ni idea...
> >
> > Para que no pierdas tu tiempo, si quieres puedes darme acceso a una
> > máquina donde esté instalado y trato de examinar el bug, porque aquí no
> > lo puedo reproducir ni usando el ejemplo que tú usas.
> >
> > Un saludo,
> >
> > Javier
> >
> >> Un saludo,
> >>
> >> El 04/12/09 15:40, Javier Pueyo escribió:
> >>> Perdona Jose, quería decir que los copiaras manualmente desde el SVN (es
> >>> decir sin usar svn). De ahí me he hecho yo un checkout limpio y el bug
> >>> no está en el código, pero mi temor es que yo haya hecho algo mal en mis
> >>> commits (estoy usando kdesvn) y no se te hayan propagado los cambios en
> >>> tus últimos updates. Ya sé que sería *muy* raro, pero es que no entiendo
> >>> por qué te aparece ese bug antiguo y a mí no...
> >>>
> >>> El vie, 04-12-2009 a las 15:22 +0100, Jose Gato Luis escribió:
> >>>>
> >>>> El 04/12/09 14:33, Javier Pueyo escribió:
> >>>>> Vaya!
> >>>>>
> >>>>> Me acabo de hacer un
> >>>>> svn checkout
> >>>>> https://svn.libresoft.es/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo
> >>>>>
> >>>>> limpio en un nuevo directorio y me funciona sin problemas. Podría pensar
> >>>>> que es algo que tengo en mi máquina que evita el bug, pero es que ese
> >>>>> bug sí me salía hace días en mi propia máquina y conseguí corregirlo
> >>>>> modificando los ficheros:
> >>>>>
> >>>>> jpueyo/floss_nlp/NLP_POST/floss_item_classifier.py
> >>>>> jpueyo/floss_nlp/NLP_POST/floss_item_info_extractor.py
> >>>>>
> >>>>> ¿tienes posibilidad de copiarlos a mano a tu máquina desde el svn, no
> >>>>> vaya a ser que yo haya hecho algo mal en los commits y no te propague
> >>>>> esos cambios?
> >>>>
> >>>> pero, ¿desde dónde lo copio? No lo entiendo muy bien...
> >>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> El vie, 04-12-2009 a las 14:07 +0100, Jose Gato Luis escribió:
> >>>>>> Sigue fallándome :(
> >>>>>>
> >>>>>> python2.5 sample.py
> >>>>>> Traceback (most recent call last):
> >>>>>>       File "sample.py", line 105, in<module>
> >>>>>>         only_topics = NLP.getItemTopics(item0, is_mail=True)
> >>>>>>       File
> >>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>> line 116, in getItemTopics
> >>>>>>         topics = self.getItemTopicsEntities(doc_item, is_mail, only_topics)
> >>>>>>       File
> >>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>> line 107, in getItemTopicsEntities
> >>>>>>         topics = self.str_to_list(topics_entities)
> >>>>>>       File
> >>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>> line 143, in str_to_list
> >>>>>>         my_list = eval(my_string)
> >>>>>>       File "<string>", line 1
> >>>>>>         Traceback (most recent call last):
> >>>>>>                              ^
> >>>>>> SyntaxError: invalid syntax
> >>>>>>
> >>>>>>
> >>>>>>
> >>>>>> El 04/12/09 14:02, Javier Pueyo escribió:
> >>>>>>> Hola,
> >>>>>>>
> >>>>>>> Pues ese es uno de los bugs que corregí ayer y el arreglo debería estar
> >>>>>>> en la última revisión del svn (hice un commit ayer). En mi copia local
> >>>>>>> al menos funciona sin problemas... ¿Puedes comprobar si funciona ahora?
> >>>>>>> Quizá había hecho algo mal y no se ha completa el commit. He vuelto a
> >>>>>>> hacerlo.
> >>>>>>>
> >>>>>>> Un saludo,
> >>>>>>>
> >>>>>>> Javier
> >>>>>>>
> >>>>>>> El vie, 04-12-2009 a las 11:19 +0100, Jose Gato Luis escribió:
> >>>>>>>> Buenas,
> >>>>>>>>
> >>>>>>>> para no marear tantos correos, en este, voy a ir contando los problemas
> >>>>>>>> a los que me enfrente:
> >>>>>>>>
> >>>>>>>>       * He instalado Freeling (he bajado la versión para máquinas de 64bits)
> >>>>>>>>       * He añadido las modificaciones de NLTK
> >>>>>>>>       * Cuando me dispongo a hacer una prueba sencilla:
> >>>>>>>>
> >>>>>>>> ===
> >>>>>>>> from floss_nlp.NLP_Process import NLP_Process
> >>>>>>>>
> >>>>>>>> NLP = NLP_Process()
> >>>>>>>>
> >>>>>>>> item0 = '''I saw Richard Stallman and Linus Torvalds filed 30765, which
> >>>>>>>> is a GPL_3 license bug and report. The file is license.txt. '''
> >>>>>>>>
> >>>>>>>> only_topics = NLP.getItemTopics(item0)
> >>>>>>>> print str (only_topics)
> >>>>>>>>
> >>>>>>>> ====
> >>>>>>>>
> >>>>>>>> tengo el siguiente error:
> >>>>>>>>
> >>>>>>>> Traceback (most recent call last):
> >>>>>>>>        File "test.py", line 7, in<module>
> >>>>>>>>          only_topics = NLP.getItemTopics(item0)
> >>>>>>>>        File
> >>>>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>>>> line 116, in getItemTopics
> >>>>>>>>          topics = self.getItemTopicsEntities(doc_item, is_mail, only_topics)
> >>>>>>>>        File
> >>>>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>>>> line 107, in getItemTopicsEntities
> >>>>>>>>          topics = self.str_to_list(topics_entities)
> >>>>>>>>        File
> >>>>>>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
> >>>>>>>> line 143, in str_to_list
> >>>>>>>>          my_list = eval(my_string)
> >>>>>>>>        File "<string>", line 1
> >>>>>>>>          Traceback (most recent call last):
> >>>>>>>>
> >>>>>>>> Saludos,
> >>>>>>>>
> >>>>>>>>
> >>>>>>>
> >>>>>>> _______________________________________________
> >>>>>>> Qualipso-a4 mailing list
> >>>>>>> Qualipso-a4 en gsyc.escet.urjc.es
> >>>>>>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> >>>>>>
> >>>>>
> >>>>> _______________________________________________
> >>>>> Qualipso-a4 mailing list
> >>>>> Qualipso-a4 en gsyc.escet.urjc.es
> >>>>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> >>>>
> >>>
> >>> _______________________________________________
> >>> Qualipso-a4 mailing list
> >>> Qualipso-a4 en gsyc.escet.urjc.es
> >>> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> >>
> >
> > _______________________________________________
> > Qualipso-a4 mailing list
> > Qualipso-a4 en gsyc.escet.urjc.es
> > http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
> 



More information about the Qualipso-a4 mailing list