Machine Learning, Tensor Flow, Keras, Redes de Neuronas
Las redes convolucionales son un tipo de red neuronal que ha hecho muy popular en los últimos años debido a su capacidad para identificar información de la imágenes mediante la aplicación sucesiva de filtros tradicionalmente utilizados en la visión computador. Mediante un conjunto lo suficientemente grande ejemplos de entrenamiento son capaces de identificar aquellas características o "patrones" que permiten clasificar los objetos entre el conjunto de clases entre las que se reparten los ejemplos de aprendizaje.
En este taller se describe el proceso de construcción de un red de neuronas de tipo convolucional para la identificación de diferentes de prendas de ropa. Para el desarrollo del taller se ha plantenado el siguiente roadmap el cual se encuentra formado por dos grupos de ejercicios. Los ejercicios 1 y 2 son los referentes al despliegue de la plataforma para el desarrollo de los cuadernos (notebooks) y los otros tres ejercicios se corresponde con la preparación de los datos y los procesos de entrenamiento mediante Keras y TensorFlow.
- Teoría - Aprendizaje Automático y redes neuronales
- Ejercicio 1 - Jupyter Notebook sobre Docker
- Ejercicio 1.1 - Instalación de Docker
- Ejercicio 1.2 - Desplegando mi servidor Jupyter
- Ejercicio 2 - Jupyter Notebook sobre Collaborate
- Ejercicio 3 - Preparación de los datos de entrenamiento
- Ejercicio 4 - Construcción de una red de neuronas convolucional mediante Keras
- Ejercicio 5 - Construcción de una red de neuronas convolucional mediante TensorFlow
El taller puede realizarme mediante dos itenerarios que dependerán de la posibilidad y/o capacidad de instalar docker y otras herramientas en vuestro ordenadores:
- Itinerario 1: Ejercicio 1 => Ejercicio 3 => Ejercicio 4 => Ejercicio 5
- Itinerario 2: Ejercicio 2 => Ejercicio 3 => Ejercicio 4 => Ejercicio 5
El itinerario 1 depende de la posibilidad de poder instalar docker, si no puedes instalar docker en tu ordenador no selecciones este iternario. Mientras que el itinerario 2 sólo necesita una cuenta de gmail para acceder a collaborate, por lo que yo recomiendo la utilización de este itinerario.
A continuación se describen los requisitos mínimos para poder realizar este taller.
- Sistema operativo: Linux (Ubuntu), Mac o Windows. Se recomienda realizar el taller en Linux o Mac.
- Memoría Ram: 8 Gbs de memoria ram. Se recomienda 16 Gbs.
- Espacio: 5 Gigas de espacio (Opción Jupyter Notebook sobre docker)
- Conexión a internet.
- Python como lenguaje de programación para el desarrollo de nuestros ejercicios.
- Docker para construir el contenedor donde se desplegará nuestro servidor Jupyter.
- TensorFlow como framework para el desarrollo de redes de neuronas convolucionales.
- Tutoriales sobre tensorFlow si quieres aprender más sobre TensorFlow.
- Keras como framework para el desarrollo de redes de neuronas convolucionales.
- TensorFlow Board como sistema de visualización para ver la evolución de nuestro procesos de entrenamiento y sus resultados.