Este artículo fue publicado como parte del Blogatón de ciencia de datos.
Visión general
- comprender las GPU en aprendizaje profundoEl aprendizaje profundo, una subdisciplina de la inteligencia artificial, se basa en redes neuronales artificiales para analizar y procesar grandes volúmenes de datos. Esta técnica permite a las máquinas aprender patrones y realizar tareas complejas, como el reconocimiento de voz y la visión por computadora. Su capacidad para mejorar continuamente a medida que se le proporcionan más datos la convierte en una herramienta clave en diversas industrias, desde la salud....
- Comenzando con los requisitos previos para la instalación de TensorFlow -GPU.
- Instalación y configuración del entorno de GPU.
- Probando y verificando la instalación de GPU
«Los gráficos han hecho
un gran cambio hacia el aprendizaje automático, que en sí mismo se trata de comprender
datos»
_ Jefferson Han, fundador y científico jefe de Perceptive Pixel
Fuente: imágenes de Google
Comprender las GPU en el aprendizaje profundo
Las CPU pueden recuperar datos a un ritmo más rápido, pero no pueden procesar más datos a la vez, ya que la CPU tiene que realizar muchas iteraciones en la memoria principal para realizar una tarea simple. Por otro lado, la GPU viene con su propia memoria VRAM (RAM de video) dedicada, por lo tanto, hace menos llamadas a la memoria principal, por lo que es rápido
La CPU ejecuta trabajos de forma secuencial y tiene menos núcleos, pero las GPU vienen con cientos de núcleos más pequeños que funcionan en paralelo, lo que hace que la GPU sea una arquitectura altamente paralela, lo que mejora el rendimiento.
Comenzando con los requisitos previos para la instalación de TensorFlow – GPU
La GPU Tensorflow solo puede funcionar si tiene una tarjeta gráfica habilitada para CUDA. Todas las tarjetas gráficas NVidia más nuevas de los últimos tres o cuatro años han habilitado CUDA.
Sin embargo, hagamos una pausa y verifiquemos si su tarjeta gráfica está habilitada con CUDA, ya que “Hacer suposiciones incorrectas causa dolor y sufrimiento a todos”, dijo Jennifer young.
Para verificar los detalles de la tarjeta gráfica. Abra la ventana de ejecución desde el menú Inicio y ejecute Control / nombre Microsoft.DeviceManager.La tarjeta gráfica se mostrará en Adaptadores de pantalla
Cada máquina estará equipada con tarjetas gráficas integradas que se colocan en el mismo chip que la CPU y se basa en la memoria del sistema para manejar los gráficos, mientras que una tarjeta gráfica discreta es una unidad independiente de la CPU y tiene un alto rendimiento de procesamiento de gráficos.
Las capacidades de la GPU las proporcionan tarjetas gráficas discretas. Por lo tanto, asegúrese de que su máquina tenga tanto gráficos integrados como la tarjeta gráfica discreta instalada.
Las capacidades de cómputo de cada tarjeta gráfica Nvidia habilitada con Cuda están incluidas en el sitio web de Nvidia. Solo si la tarjeta gráfica discreta está disponible en esta lista, puede admitir TensorFlow GPU.
Fuente: https://developer.nvidia.com/cuda-gpus
Una vez que se sabe que la tarjeta gráfica discreta puede admitir la GPU TensorFlow. Comience con la instalación
Para asegurarse de que ninguno de los ajustes o configuraciones anteriores de NVidia no afecte la instalación, desinstale todos los controladores de gráficos y el software de NVidia (paso opcional).
Instalaciones de los requisitos previos necesarios
Paso 1: Instalación de Visual Studio 2017
Microsoft Visual Studio es un entorno de desarrollo integrado de Microsoft que se utiliza para desarrollar programas informáticos, así como sitios web, aplicaciones web, servicios web y aplicaciones móviles.
El kit de herramientas CUDA incluye plantillas de proyectos de Visual Studio y NSight IDE (que puede usar desde Visual Studio). Necesitamos instalar el conjunto de herramientas VC ++ 2017 (CUDA aún no es compatible con la última versión de Visual Studio).
- Visual Studio se puede descargar desde el sitio web oficial de Visual Studio de Microsoft. Descargue el software seleccionando la carga de trabajo ‘Desarrollo de escritorio con c ++’ e instálelo.
- Cuda toolkit durante la instalación, instala las bibliotecas necesarias y luego verifica las versiones de Visual Studio disponibles en el sistema y luego instala las integraciones de Visual Studio. Por lo tanto, tener un Visual Studio instalado en el sistema es un paso obligatorio a seguir.
Paso 2: Descargue e instale el controlador NVIDIA
Controlador de nvidia es el controlador de software para Nvidia GPU de gráficos instalada en la PC. Es un programa que se utiliza para comunicarse desde el sistema operativo Windows PC al dispositivo. Este software es necesario en la mayoría de los casos para que el dispositivo de hardware funcione correctamente.
Para descargar, navega a la página de descarga de Nvidia.com y proporciona todos los detalles de la tarjeta gráfica y el sistema en los menús desplegables. Haga clic en buscar y le proporcionaremos el enlace de descarga.
Instale los controladores descargados de Nvidia
una vez instalado, deberíamos obtener una carpeta NVidia GPU computing toolkit en los archivos de programa de la unidad C que contiene la subcarpeta CUDA en su interior.
Paso 3: Kit de herramientas de Cuda
El kit de herramientas Nvidia CUDA proporciona un entorno de desarrollo para crear aplicaciones aceleradas por GPU de alto rendimiento. Con el kit de herramientas CUDA, puede desarrollar, optimizar e implementar sus aplicaciones en sistemas integrados acelerados por GPU, estaciones de trabajo de escritorio, centros de datos empresariales, plataformas basadas en la nube y supercomputadoras HPC. El kit de herramientas incluye bibliotecas aceleradas por GPU, herramientas de depuración y optimización, un compilador C / C ++ y una biblioteca en tiempo de ejecución para construir e implementar su aplicación en las principales arquitecturas, incluidas x86, Arm y POWER.
Hay varias versiones de CUDA que son compatibles con Tensorflow. Podemos encontrar la versión actual de Cuda compatible con TensorFlow, en la página web de soporte de GPU de TensorFlow.
En el archivo del kit de herramientas CUDA de developer.nvidia.com, descargue el kit de herramientas CUDA requerido
Paso 4: Descarga cuDNN
cuDNN es una biblioteca con un conjunto de primitivas optimizadas de bajo nivel para aumentar la velocidad de procesamiento de redes neuronales profundas (DNN) en GPU compatibles con CUDA.
Vaya a la página web de descarga de cuDNN de developer.nvidia.com y descargue la versión de cuDNN compatible con la versión de CUDA.
Una vez que se complete la descarga, extraiga la carpeta descargada. La carpeta descargada debe contener la carpeta CUDA y esta carpeta CUDA debe coincidir en contenido con la carpeta CUDA en la carpeta de archivos de programa del kit de herramientas de cálculo NVidia GPU. Consulte la imagen a continuación.
Copie cudnn64_88.dll del bin de la última carpeta extraída y péguelo en la carpeta bin similar dentro de la carpeta Cuda del kit de herramientas de computación Nvidia GPU.
Copie el archivo cudnn.h de la subcarpeta include de la última carpeta extraída y péguelo en la carpeta bin similar dentro de la carpeta Cuda del kit de herramientas informáticas Nvidia GPU.
Copie el archivo cudnn.lib de lib> subcarpeta de la carpeta X64 de la última carpeta extraída y péguelo en la carpeta bin similar dentro de la carpeta Cuda del kit de herramientas de computación Nvidia GPU.
Ahora hemos completado la descarga e instalación de Cuda para GPU. Configuremos el entorno.
Instalación y configuración del entorno de la GPU
Anaconda es una distribución de Python que ayuda a configurar un entorno virtual. Suponiendo que anaconda ya está instalado, comencemos con la creación de un entorno virtual.
Paso 1: Crecomió una variableEn estadística y matemáticas, una "variable" es un símbolo que representa un valor que puede cambiar o variar. Existen diferentes tipos de variables, como las cualitativas, que describen características no numéricas, y las cuantitativas, que representan cantidades numéricas. Las variables son fundamentales en experimentos y estudios, ya que permiten analizar relaciones y patrones entre diferentes elementos, facilitando la comprensión de fenómenos complejos.... de entorno
Cree un entorno virtual desde el símbolo del sistema mediante el comando – conda create -n [env_name] python = [python_version]
El flujo tensorial solo admite algunas versiones de Python. Elija una versión de Python que admita tensorLos tensores son estructuras matemáticas que generalizan conceptos como scalars y vectores. Se utilizan en diversas disciplinas, incluyendo física, ingeniería y aprendizaje automático, para representar datos multidimensionales. Un tensor puede ser visualizado como una matriz de múltiples dimensiones, lo que permite modelar relaciones complejas entre diferentes variables. Su versatilidad y capacidad para manejar grandes volúmenes de información los convierten en herramientas fundamentales en el análisis y procesamiento de datos.... mientras crea un entorno.
A continuación, active el entorno virtual utilizando el comando – activar [env_name].
Dentro del entorno virtual creado, instale la última versión de la GPU de flujo tensorial mediante el comando – pip install – ignore-installed –upgrade TensorFlow-GPU
Una vez que hayamos terminado con la instalación de la GPU de flujo tensorial, verifique si su máquina tiene paquetes básicos de Python como pandas, numpy, jupyter y Keras. si no existen, instálelos.
Instale ipykernel a través del comando – pip install ipykernel
Establezcamos el nombre para mostrar y vinculemos el kernel a la variable de entorno virtual usando el comando – python –m ipykernel install –user –name [env_name] –Display-name “cualquier nombre”.
Paso 2: configure el kernel de Python en jupyter.
Abra el cuaderno jupyter y desde la barra de menú haga clic en kernel y cambie el kernel a la variable de entorno que acabamos de configurar
Probar y verificar la instalación de la GPU.
Para comprobar todos los físico Dispositivos GPU disponible para TensorFlow. Ejecute el siguiente código
From tensorflow.python.client import device_lib
print(device_lib.list_local_devices())
Esto imprime todos los dispositivos disponibles para Tensorflow
Para verificar si CUDA está habilitado para TensorFlow, ejecute el siguiente código
Import tensorflow as tf
print(tf.test.is_built_with_cuda())
La salida será un valor booleano que da como resultado verdadero si TensorFlow se compila con CUDA
Para saber si la GPU se activa durante el tiempo de ejecución, inicie la ejecución de cualquier red neuronalLas redes neuronales son modelos computacionales inspirados en el funcionamiento del cerebro humano. Utilizan estructuras conocidas como neuronas artificiales para procesar y aprender de los datos. Estas redes son fundamentales en el campo de la inteligencia artificial, permitiendo avances significativos en tareas como el reconocimiento de imágenes, el procesamiento del lenguaje natural y la predicción de series temporales, entre otros. Su capacidad para aprender patrones complejos las hace herramientas poderosas... compleja.
El administrador de tareas muestra la utilización de la GPU y la memoria ocupada para la ejecución del programa Tensorflow.
si la pestaña de proceso del administrador de tareas no muestra la utilización de la GPU, que es un escenario para las máquinas que se ejecutan en el sistema operativo Windows 8.1, use herramientas de terceros como GPUZ para observar la utilización de la GPU
Ahora se completa la instalación y configuración completa de la GPU.
Conclusión
- Hay muchas plataformas de computación en la nube de GPU gratuitas que podrían acelerar nuestros cálculos de GPU en redes neuronales profundas. Así que pruébelos si su máquina no contiene una GPU dedicada.
- Todos los pasos de instalación anteriores dependen unos de otros, por lo que debemos seguir la misma secuencia que se mencionó anteriormente.
- No hay forma de que podamos depurar por qué nuestra máquina no puede consumir GPU dedicada, así que no se pierda ninguno de los pasos.