Sebastian Durandeu Blog

  • Visitantes

Archive for September, 2011

Utilizar NLTK desde IronPython 2.7 y Visual Studio

Posted by sebastiandurandeu on September 13, 2011

NLTK (Natural Language Toolkit – http://www.nltk.org/) es una suite de bibliotecas para realizar procesamiento de lenguaje natural (NLP – Natural Language Processing) en Python, publicado bajo licencia GPL. El campo del procesamiento del lenguaje natural permite realizar procesamiento de texto utilizando técnicas de aprendizaje automático, por ejemplo, clasificación de documentos, búsqueda de documentos relevantes en base a un tema, traducción automática, entre otras cosas.

Mas concretamente yo estoy utilizando NLTK desde IronPython para realizar análisis de sentimiento para saber si un texto sobre un tema en particular representa una opinión positiva o negativa. Hay algunos ejemplos en este otro artículo: http://streamhacker.com/2010/05/10/text-classification-sentiment-analysis-naive-bayes-classifier/

Una fuente muy, muy completa sobre aplicaciones de NLTK al procesamiento de texto se puede encontrar en el siguiente libro Python Text Processing with NLTK 2.0 Cookbook. Sino, como referencia general pueden revisar este libro online: http://www.nltk.org/book

Para utilizar NLTK desde IronPython y Visual Studio deben seguir lo siguientes pasos:

  1. Si aún no lo tienen instalado, instalar IronPython desde http://ironpython.codeplex.com/releases/view/54498. Por default se va a instalar en “C:\Program Files\IronPython 2.7”.
  2. Descargar PyYAML (3.10) en su versión zip desde http://pyyaml.org/wiki/PyYAML y descoprimirlo en cualquier carpeta.
  3. Abrir una consola (con permisos de administrador) donde descomprimieron el zip de PyYAML y ejecutar el siguiente lo siguiente desde una consola (suponiendo que IronPython esta instalado en la carpeta default).
    "C:\Program Files\IronPython 2.7\ipy.exe" setup.py install
  4. Ejecutar los siguientes pasos para instalar Expat (se pueden ver los pasos orginales en http://code.google.com/p/robotframework/issues/detail?id=154):
    1. Descargar el Python 2.7.2 compressed source tarball desde http://www.python.org/ftp/python/2.7.2/Python-2.7.2.tgz. Extraer el contenido. Esto lo hacemos para obtener algunos archivos que no se incluyen por default con IronPython.
    2. Copiar expatbuilder.py desde la carpeta Lib\xml\dom de los archivos de Python descomprimidos a C:\Program Files\IronPython 2.7\Lib\xml\dom
    3. Copiar expat.py desde la carpeta Python\Lib\xml\parsers de los archivos de Python descomprimidos a C:\Program Files\IronPython 2.7\Lib\xml\parsers
    4. Descargar el siguiente archivo https://fepy.svn.sourceforge.net/svnroot/fepy/trunk/lib/pyexpat.py y copiarlo a C:\Program Files\IronPython 2.7\Lib
  5. Descargar el instalador de NLTK (msi o exe) desde http://www.nltk.org/download.
  6. Instalar NLTK, pero como no tenemos instalado Python, el instalador va a crear una carpeta Lib en la misma carpeta donde lo descargamos.
  7. Abrir la carpeta Lib donde se instalo NLTK y copiar el contenido a C:\Program Files\IronPython 2.7\Lib.

Tengan en cuenta que una vez que instalaron NLTK, puede ser que necesiten descargar manualmente alguno de sus módulos usando el NLTK Downloader. Para esto abran una consola de IronPython desde C:\Program Files\IronPython 2.7\ipy.exe y ingresen:

>>> import nltk

>>> nltk.download()

Posted in Uncategorized | Leave a Comment »