Blog
-Como instalar Theano
-Cómo se puede definir, compilar y calcular una expresión simbólica muy simple.
Theano es una librería Python para el cálculo numérico rápido que se puede ejecutar en la CPU o GPU. Es una biblioteca clave para el Deep Learning en Python que puedes usar directamente para crear modelos de Deep Learning.
¿Qué es Theano?
Theano es un proyecto de código abierto liberado bajo la licencia BSD y fue desarrollado por el LISA (ahora MILA1) en la Universidad de Montreal, Quebec, Canadá (sede de Yoshua Bengio). Lleva el nombre de un matemático griego. En su corazón Theano es un compilador para matemáticas en Python. Sabe cómo tomar sus estructuras para convertirlas en codigo eficiente que utiliza NumPy, bibliotecas nativas antiguas como BLAS y código nativo para ejecutarse tan rápido como es posible en la CPUs o GPUs.
Utiliza una gran cantidad de ingeniosas optimizaciones de código para exprimir al máximo el rendimiento posible desde su hardware. La sintaxis actual de las expresiones de Theano es simbólica.
Theano fue diseñado específicamente para manejar los tipos de computación requeridos para grandes empresas como los algoritmos de redes neuronales usados en deep learning. Fue una de las primeras bibliotecas de su tipo (el desarrollo comenzó en 2007) y se considera un estándar de la industria para la investigación de aprendizaje profundo y desarrollo.
Como Instalar Theano
Theano proporciona extensas instrucciones de instalación para los principales sistemas operativos: Windows, OS X y Linux. Lea la guía de instalación de Theano para su plataforma. Theano asume que usted trabaja en un entorno Python 2 o Python 3 con SciPy. Hay varias formas de realizar la instalación fácil, como usar Anaconda para configurar rápidamente Python y SciPy en su máquina. Con un entorno de trabajo Python y SciPy, es relativamente fácil de instalar Theano usando pip, si estas en window con anaconda ver al prompt de Anaconda. Vaya a “Windows” –> Busque “Anaconda Prompt” y ejecute como administrador, como se muestra a continuación:
Ahora escribe el comando para instalar Theano:
pip install Theano
Si estas en en linux:
sudo pip install Theano
Es posible que se anuncien nuevas versiones de Theano y querrá actualizarlas para no obtener cualquier error y mejorar de la eficiencia. Puedes actualizar Theano usando pip de la siguiente manera:
sudo pip install --upgrade --no-deps theano
*Si estas en window elimina sudo del comando
Si lo desea, puede utilizar la versión más moderna de Theano chequeada directamente desde GitHub. Esto puede ser necesario en el caso de algunas bibliotecas de envolturas que utilizan cambios de API de última generación. Puede instalar Theano directamente desde un directorio de GitHub de la siguiente manera:
sudo pip install --upgrade --no-deps git+git://github.com/Theano/Theano.git
*Si estas en window elimina sudo del comando
Ahora está listo para ejecutar Theano en su CPU, lo cual es muy importante para el desarrollo de modelos pequeños. Los modelos grandes pueden funcionar lentamente en la CPU. Si tienes una GPU Nvidia, puedes ver cómo congestionar Theano para usar su GPU. Existe una gran cantidad de documentación sobre Theano en su página web.
Ejemplo con Theano
En esta sección mostramos un sencillo script Python con Theano. En este ejemplo se eliminan dos variables simbólicas de coma flotante a y b. Se elimina una expresión que utiliza estas variables (c = a + b). Luego compilamos esta expresión simbólica en una función usando Theano que podemos usar más tarde. Finalmente, usamos nuestra expresión compilada conectando algunos datos reales y realizamos el cálculo utilizando el código con Theano compilado eficientemente.
# ejemplo Theano libreria import theano from theano import tensor # declaramos 2 escalares de punto flotante a = tensor.dscalar() b = tensor.dscalar() # creamos la expresion simbolica c = a + b # convertimos la expresion en un objeto llamable que toma a y b y computa c f = theano.function([a,b], c) result = f(1.5, 2.5) print(result)
Al ejecutar el ejemplo se imprime la salida 4, que coincide con nuestra expectativa de que 1.5+2.5 = 4.0. Este es un ejemplo útil ya que podemos ver una expresión simbólica, compiladas y utilizadas. Aunque sólo hemos realizado una introducción básica de sumar 2 y 2, puede ver cómo el cálculo predefinido puede ser compilado de forma eficiente y esto puede ser escalado a grandes operaciones vectoriales y matriciales necesarias para Deep Learning.
Extensiones y envolturas para Theano
Si eres nuevo en Deep Learning no tienes porque usar Theano directamente. De hecho, te animamos a que uses uno de los muchos proyectos populares de Python que hacen que Theano sea mucho más fácil de usar para Deep Learning. Estos proyectos proporcionan estructuras de datos y comportamientos en Python, diseñados específicamente para crear modelos de aprendizaje profundo de forma rápida y fiable a la vez que garantizan que Theano cree y ejecute modelos rápidos y eficientes. Keras es una librería de envolturas que oculta Theano completamente y proporciona una API muy simple para trabajar y crear modelos de Deep Learning.
Si has tenido algún problema al instalar la librería Theano, no te preocupes y sigue adelante. En las próximas clases verás que hay mas formas de usar Theano como por ejemplo a través de Keras.
➡ Si quieres convertirte en un experto de Deep Learning te invitamos a realizar nuestro curso: