
GPU: el cerebro de la IA
La GPU es el sustrato físico que permite la ejecución de algoritmos de Inteligencia Artificial y del Deep Learning más concretamente.
David Baños Abril – 4 de marzo de 2022
En estos talleres hemos presentado con anterioridad la biblioteca TensorFlow. A pesar de haber salido un año después, la biblioteca de PyTorch ha conseguido labrarse un hueco entre las herramientas especializadas en modelos de Deep Learning, y en algunos ámbitos, como es el de la investigación, ha logrado imponerse por encima de su rival de Google.
Este artículo lo dedicaremos a configurar nuestro entrono de desarrollo en Windows para comenzar a trabajar con PyTorch.
Anaconda es una plataforma desde la que gestionaremos nuestros programas y su ejecución. Su instalación incluye Anaconda Navigator, desde el que podremos gestionar nuestras aplicaciones, así como Conda, el entorno de desarrollo definitivo para trabajar con Python.
Creada por los ingenieros del laboratorio de IA de Facebook, PyTorch es el protagonista de esta serie de tutoriales. Siendo algo más complejo que TensorFlow, es también un lenguaje mucho más flexible, permitiendo un mayor control de los modelos y su entrenamiento.
Los cuadernos de Jupyter son un entorno de desarrollo extremadamente polifacético, con el que no solo podremos interactuar de formas mucho más versátiles con nuestro código, sino que también tendremos la opción de incluir texto y otros archivos multimedia.
Tendremos la opción de construir nuestros modelos de Deep Learning sin preocuparnos de la configuración de nuestro PC gracias a Google Colaboratory. Los cuadernos de Colab nos permitiran programar directamente desde el navegador.
La primera de las decisiones que debemos tomar concierne trabajar en local o apoyarnos en un navegador e interactuar con un dispositivo externo. Dependiendo de los recursos que pueda ofrecer nuestra computadora, podremos escoger si configurar nuestro PC para ejecutar las ingentes cantidades de cálculos que requiere el entrenamiento de una red neuronal, o si por el contrario decidimos hacer uso de recursos externos brindados por una herramienta como es Google Colab.
Si quieres pasar directo al grano o consideras que tu equipo no es excesivamente potente, pasa directamente a la Opción 2: Colab.
Esta sección estará dedicada a la primera de las opciones. A continuación os mostraremos los pasos para instalar PyTorch en vuestro equipo local. Nuestra referencia será la propia web oficial de PyTorch, donde se ofrecen las instrucciones paso a paso para la instalación de PyTorch en local.
La instalación la realizaremos a través del gestor de paquetes Anaconda, una opción muy útil que simplificará nuestro trabajo.
Para comenzar la instalación de Anaconda tan solo debemos realizar la descarga desde el sitio oficial y seguir las instrucciones indicadas como en cualquier instalador.
Una vez instalado, deberíamos poder encontrar en nuestro PC Anaconda Navigator. Si lo abrimos debería aparecer algo parecido a la imagen de abajo:
--
version Como vemos, en nuestro caso se trata de la versión 4.12.
Podemos hacer lo mismo para comprobar la versión de Python con el comando python --
version. Nosotros utilizaremos Python 3.9.
Toca comenzar con la instalación de PyTorch, pero antes debemos tomar una decisión. Como comentamos en un artículo de este mismo portal, los dispositivos GPU, como son las tarjetas gráficas, están mucho mejor preparadas para el cálculo en paralelo necesario para el entrenamiento de redes neuronales.
Si no es el caso, o simplemente es una posibilidad que no quieres contemplar, pasa directamente al paso 2(B).
La herramienta que nos permite interactuar con nuestra tarjeta gráfica es CUDA en su última versión, la 11. Instalaremos PyTorch junto a CUDA desde la consola de Anaconda Navigator.
Tal y como nos muestra la web oficial de Python, tan solo es necesario ejecutar el siguiente comando
La instalación tardará unos minutos. Durante el proceso podremos identificar las versiones que estemos utilizado. En nuestro caso: CUDA 11.3 y PyTorch 1.11.
Si nuestra intención es ejecutar los algoritmos en CPU, el comando a utilizar en la consola de Anaconda será:
Una vez hayas instalado PyTorch y te surge la duda de sí tu PC soporta la opción para GPUs, puede ejecutar el comando python y después el script:
Si devuelve True sabrás que tu equipo es capaz de soportar CUDA y ejecutar localmente en GPU.
Los cuadernos de Jupyter serán el framework donde construiremos e interactuaremos con nuestro código.
Para abrir uno de esos cuadernos tan solo debemos buscador en el navegador de Anaconda el apartado Notebook. Si pulsamos debería aparecer una ventana como la que mostramos abajo:
Para comprobar que todo marcha correctamente, ejecuta el mismo script mostrado arriba, tal y como vemos en la imagen:
Ya tendríamos todo listo para ponernos a programar en PyTorch.
Con el único requisito de contar con un correo gmail de Google y acceso a Internet podemos comenzar a programar en PyTorch sin necesidad de preocuparnos por las características de nuestro PC.
Una vez instalada podremos acceder a Google Colaboratory, que nos ofrecerá de forma automática nuestro primer cuaderno como se muestra en la imagen inferior.
Comprueba que la ejecución en GPU funciona correctamente con el script
'
GPU'
) El resultado debería ser algo parecido a esto:
'
/physical_device:GPU:0'
, device_type='
GPU'
)] Colab también nos da la opción de ejecutar con TPU. Estos dispositivos están específicamente diseñados para operaciones con tensores, y la velocidad a la que realizan los cálculos propios del entrenamiento de una red neuronal puede ser varias veces superior al de una GPU.
Ya está todo listo para empezar a programar. Aun así, será recomendable conocer como trabaja PyTorch. El próximo artículo lo dedicaremos a introducir las estructuras de datos con las que opera PyTorch.
La Máquina Oráculo » Deep Learning » Configuración del entorno de PyTorch
La GPU es el sustrato físico que permite la ejecución de algoritmos de Inteligencia Artificial y del Deep Learning más concretamente.