[Qualipso-a4] instalación y pruebas de las herramientas de NLP
Jose Gato Luis
jgato en libresoft.es
Mar Dic 8 17:57:44 CET 2009
El 08/12/09 14:28, Javier Pueyo escribió:
> Hola Jose,
>
> El mar, 08-12-2009 a las 00:31 +0100, Jose Gato Luis escribió:
>> Acabo de darme cuenta, que existen unas variables para configurar
>> ciertos paths, por defecto están pensadas para ejecutar programas dentro
>> de donde tenemos todo lo de NLP:
>>
>> config_FLOSS_NLP_PATH = sys.path[0] + "/"
>>
>> config_FLOSS_NLP_PATH_NLP_FLOSS = config_FLOSS_NLP_PATH + "floss_nlp/"
>>
>> si ejecuto el programa desde cualquier otro directorio, sys.path no va a
>> tener el valor esperado. De momento he puesto el valor que quiero a
>> pelo, estaría bien, que al crear la clase NLP, puedas configurar esos
>> valores.
>
> Sí. Lo cierto es que config.py asumía erróneamente que los programas se
> ejecutarían en un lugar determinado. La solución que se me ocurre es
> colocar el directorio floss_nlp/ bajo la raiz de python, es decir, aquí:
>
> /usr/lib/python2.5/site-packages/floss_nlp
>
> Y modificar el fichero config.py de esta manera:
>
> - config_FLOSS_NLP_PATH = sys.path[0] + "/"
> + config_FLOSS_NLP_PATH = "/usr/lib/python2.5/site-packages/"
>
> ¿Qué te parece? Si te parece bien, "cometo" ese cambio al SVN.
déjame que pregunte a los expertos en python libresofter'os, para no
tener que depender del path donde se instale.
>
>
>> Por otro lado, aparece un nuevo error:
>
> Buff. Llevo peleando con bugs de NLTK desde hace meses... Lo mejor es
> volver de momento a la versión 0.9.9b1 y ver si conseguimos avanzar. Ya
> iré yo mirando si puedo corregir los bugs de la 2.0. He subido al SVN un
> paquete RPM y un DEB (este lo he creado a partir del rpm, pero parece
> funcionar bien). Después de instalarlo hay que volver a integrar los
> files de NLTK_additions, (y si aún lo tenéis en vuestras copias locales,
> hay borrar el file modificado "probability.py" que ya no sirve... yo ya
> lo he quitado del SVN). A mí un simple:
>
> sudo cp -R NLTK_additions/nltk/* /usr/lib/python2.5/site-packages/nltk/
>
> me funciona bien.
He vuelto a esa versión, pero me sigue dando problemas :(
*** /usr/lib/python2.5/site-packages/nltk/data.py:150:
DeprecationWarning: object.__init__() takes no parameters
str.__init__(self, path)
['noissue', 'license']
*****
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
Estos errores son extraños, en algún sitio, estas esperando que se te
devuelva un resultado y no estas controlando que pasa cuando te
devuelven una excepción. ¿tienes idea de en que parte se devuelven esos
textos/warnings/exceptions?
/usr/lib/python2.5/site-packages/nltk/data.py:150:
DeprecationWarning: object.__init__() takes no parameters
Puedo echarte una mano...
Un saludo,
>
> Un saludo,
>
> Javier
>
>> *** Traceback (most recent call last):
>> File
>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_POST/floss_item_classifier.py",
>> line 213, in<module>
>> (topics, extracted_entities_clean) = classify_item(doc_item)
>> File
>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_POST/floss_item_classifier.py",
>> line 207, in classify_item
>> topic = classifier.classify(item_features(item_info,dictionary_info))
>> File "/usr/lib/python2.5/site-packages/nltk/classify/naivebayes.py",
>> line 89, in classify
>> return self.prob_classify(featureset).max()
>> File "/usr/lib/python2.5/site-packages/nltk/classify/naivebayes.py",
>> line 122, in prob_classify
>> return DictionaryProbDist(logprob, normalize=True, log=True)
>> File "/usr/lib/python2.5/site-packages/nltk/probability.py", line
>> 638, in __init__
>> value_sum = sum_logs(self._prob_dict.values())
>> File "/usr/lib/python2.5/site-packages/nltk/probability.py", line
>> 1791, in sum_logs
>> return reduce(add_logs, logs[1:], logs[0])
>> AttributeError: 'module' object has no attribute 'reduce'
>> *****
>>
>> Javier, si ves que va a ser más fácil, podemos volver a una versión
>> anterior de nltk ;)
>>
>> Saludos,
>>
>> El 07/12/09 19:03, Jose Gato Luis escribió:
>>> Ahora estoy integrando de verdad las herramientas, dentro del extractor
>>> de correos y....
>>>
>>>
>>> Traceback (most recent call last):
>>> File
>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/plugins/MailingLists/mlFeedery.py",
>>> line 320, in<module>
>>> analizeResourcesFromMbox (project, emailList)
>>> File
>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/plugins/MailingLists/mlFeedery.py",
>>> line 257, in analizeResourcesFromMbox
>>> subjectBugs = searchBugInMessage (emailResource.email['subject'])
>>> File
>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/plugins/MailingLists/mlFeedery.py",
>>> line 179, in searchBugInMessage
>>> print nlp.getItemTopics(message,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 103, in getItemTopicsEntities
>>> doc_item = self.tagItem(doc_item, is_mail)
>>> File
>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
>>> line 74, in tagItem
>>> doc_item = self.getItemContents(doc_item, is_mail)
>>> File
>>> "/home/jgato/proyectos/Qualipso/A4/svn/qualipso/private/work/A4/3rdIteration/src/jpueyo/floss_nlp/NLP_Process.py",
>>> line 56, in getItemContents
>>> p = Popen([FLOSS_NLP_PATH_PRE + 'item_processor_1.pl', doc_item],
>>> stdout=PIPE, stderr=STDOUT)
>>> File "/usr/lib/python2.5/subprocess.py", line 594, in __init__
>>> errread, errwrite)
>>> File "/usr/lib/python2.5/subprocess.py", line 1153, in _execute_child
>>>
>>>
>>> ¿tiene algo que ver, el hecho de que este usando eclipse?
>>>
>>>
>>> El 07/12/09 18:21, Jose Gato Luis escribió:
>>>> Genial Javier, funciona ;)
>>>>
>>>> El 07/12/09 17:27, Javier Pueyo escribió:
>>>>> Copiando ese fichero en nuestra instalación de NLTK 2.0b5 debería
>>>>> solucionar el problema... I hope...
>>>>
>>>
>>
>> --
>> José Gato Luis | Libre Software Engineering Lab (GSyC)
>> Tel: (+34)-914 888 105 | Universidad Rey Juan Carlos
>> jgato en libresoft.es | Edif. Departamental II - Despacho 121
>> http://libresoft.urjc.es/ | c/Tulipán s/n 28933 Móstoles (Madrid)
>
> _______________________________________________
> Qualipso-a4 mailing list
> Qualipso-a4 en gsyc.escet.urjc.es
> http://gsyc.escet.urjc.es/cgi-bin/mailman/listinfo/qualipso-a4
--
José Gato Luis | Libre Software Engineering Lab (GSyC)
Tel: (+34)-914 888 105 | Universidad Rey Juan Carlos
jgato en libresoft.es | Edif. Departamental II - Despacho 121
http://libresoft.urjc.es/ | c/Tulipán s/n 28933 Móstoles (Madrid)
More information about the Qualipso-a4
mailing list