Formación : Deep Learning y redes neuronales: conceptos básicos

Deep Learning y redes neuronales: conceptos básicos




La Inteligencia Artificial se presenta a menudo en los grandes medios de comunicación como una fantasía. Este seminario le permitirá aclarar los conceptos clave de las redes neuronales profundas (Deep Learning) y sus diversos ámbitos de uso. Las demostraciones presentarán una variedad de casos de uso.


ABIERTA
IN-COMPANY
A MEDIDA

Formación en tus instalaciones, en nuestro centro o a distancia

Ref. DRN
  3d - 21h
Duración, formato, fechas y lugar: ¡Tú decides, nosotros nos encargamos de organizarlo!

Descargar en formato pdf

Compartir este curso por correo electrónico




La Inteligencia Artificial se presenta a menudo en los grandes medios de comunicación como una fantasía. Este seminario le permitirá aclarar los conceptos clave de las redes neuronales profundas (Deep Learning) y sus diversos ámbitos de uso. Las demostraciones presentarán una variedad de casos de uso.


Objetivos pedagógicos
Una vez finalizada la formación, el participante podrá:
Comprender los conceptos de aprendizaje automático y el avance hacia el aprendizaje profundo (redes neuronales profundas).
Dominar los fundamentos teóricos y prácticos de la arquitectura y la convergencia de las redes neuronales
Estar familiarizado con las diferentes arquitecturas fundamentales que existen y dominar sus implementaciones fundamentales.
Dominar las metodologías de creación de redes neuronales, así como los puntos fuertes y las limitaciones de estas herramientas.
Comprender los componentes básicos del aprendizaje profundo: redes neuronales simples, convolucionales y recursivas.
Comprensión de modelos más avanzados: autocodificadores, gans, aprendizaje por refuerzo, etc.

Público afectado
Cualquier persona interesada en Deep Learning y redes neuronales: Ingenieros, Analistas, Data Scientists, Data Analysts, Data Stewards, desarrolladores, etc.

Requisitos previos
Conocimientos básicos de programación y dominio de herramientas informáticas y estadísticas. Se recomiendan conocimientos básicos de Machine Learning.

Modalidades prácticas
Métodos pedagógicos
Este seminario se basa en presentaciones, debates y casos prácticos. Se presentarán herramientas como Lasagne y Keras.

Programa de la formación

1
Introducción a la IA, el aprendizaje automático y el aprendizaje profundo

  • La historia, los conceptos básicos y las aplicaciones de la Inteligencia Artificial están muy lejos de las fantasías que rodean este campo.
  • Inteligencia colectiva: agregar conocimientos compartidos por un gran número de agentes virtuales.
  • Algoritmos genéticos: desarrollo de una población de agentes virtuales mediante selección.
  • Aprendizaje automático común: definición.
  • Tipos de tareas: Aprendizaje supervisado, Aprendizaje no supervisado, Aprendizaje por refuerzo.
  • Tipos de acciones: clasificación, regresión, agrupación, estimación de la densidad, reducción de la dimensionalidad.
  • Ejemplos de algoritmos de aprendizaje automático: regresión lineal, Naive Bayes, árbol aleatorio.
  • Aprendizaje automático frente a aprendizaje profundo: ¿por qué el aprendizaje automático sigue siendo el más avanzado (Random Forests y XGBoosts)?

2
Conceptos fundamentales de una red neuronal

  • Recordatorio de matemáticas básicas.
  • La red neuronal: arquitectura, funciones de activación y ponderación de las activaciones anteriores...
  • Aprendizaje de una red neuronal: funciones de coste, retropropagación, descenso de gradiente estocástico...
  • Modelización de una red neuronal: modelización de los datos de entrada y salida en función del tipo de problema.
  • Comprender una función mediante una red neuronal. Comprender una distribución mediante una red neuronal.
  • Aumento de datos: ¿cómo equilibrar un conjunto de datos?
  • Generalización de los resultados de una red neuronal.
  • Inicialización y regularización de una red neuronal: Regularización L1/L2, Normalización por lotes.
  • Algoritmos de optimización y convergencia.
Demostración
Aproximación de una función y una distribución mediante una red neuronal.

3
Herramientas comunes de aprendizaje automático y aprendizaje profundo

  • Herramientas de gestión de datos: Apache Spark, Apache Hadoop.
  • Herramientas comunes de aprendizaje automático: Numpy, Scipy, Sci-kit.
  • Frameworks de DL de alto nivel: PyTorch, Keras, Lasagne.
  • Marcos de DL de bajo nivel: Theano, Torch, Caffe, Tensorflow.
Demostración
Aplicaciones y limitaciones de las herramientas presentadas.

4
Redes neuronales convolucionales (CNN)

  • Presentación de las CNN: principios fundamentales y aplicaciones.
  • Funcionamiento básico de una CNN: capa convolucional, uso de un núcleo, padding y stride, etc.
  • Estado del arte de las arquitecturas CNN para la clasificación de imágenes: LeNet, redes VGG, red en red, etc.
  • Utilización de un modelo de atención.
  • Aplicación a un escenario de clasificación común (texto o imagen).
  • CNN para generación: superresolución, segmentación píxel a píxel.
  • Principales estrategias de aumento de los mapas de características para generar una imagen.
Estudios de caso
Innovaciones aportadas por cada arquitectura CNN y sus aplicaciones más globales (convolución 1x1 o conexiones residuales).

5
Redes neuronales recurrentes (RNN)

  • Presentación de las RNN: principios fundamentales y aplicaciones.
  • Funcionamiento básico de la RNN: activación oculta, retropropagación en el tiempo, versión desplegada.
  • Desarrollos hacia GRU (Gated Recurrent Units) y LSTM (Long Short Term Memory).
  • Problemas de convergencia y gradiente evanescente.
  • Tipos de arquitecturas clásicas: predicción de una serie temporal, clasificación, etc.
  • Arquitectura del codificador y decodificador RNN. Utilización de un modelo de atención.
  • Aplicaciones PNL: codificación de palabras/caracteres, traducción.
  • Aplicaciones de vídeo: predicción de la siguiente imagen generada en una secuencia de vídeo.
Demostración
Diferentes estados y desarrollos provocados por las arquitecturas Gated Recurrent Units y Long Short Term Memory.

6
Modelos generacionales: VAE y GAN

  • Presentación de los modelos generacionales Variational AutoEncoder (VAE) y Generative Adversarial Networks (GAN).
  • Autocodificador: reducción de la dimensionalidad y generación limitada.
  • Variational AutoEncoder: modelo generacional y aproximación de la distribución de datos.
  • Definición y uso del espacio latente. Truco de reparametrización.
  • Fundamentos de las redes generativas adversariales.
  • Convergencia de un GAN y dificultades encontradas.
  • Convergencia mejorada: Wasserstein GAN, BeGAN. Distancia de movimiento de tierras.
  • Aplicaciones para generar imágenes o fotografías, generación de texto, superresolución.
Demostración
Aplicaciones de los modelos generacionales y uso del espacio latente.

7
Aprendizaje por refuerzo profundo

  • Aprendizaje por refuerzo.
  • Utilización de una red neuronal para comprender la función de estado.
  • Deep Q Learning: repetición de experiencias y aplicación al control de videojuegos.
  • Optimización de la política de aprendizaje. Dentro y fuera de la política. Arquitectura crítica de actores. A3C.
  • Aplicaciones: control de un videojuego sencillo o de un sistema digital.
Demostración
Control de un agente en un entorno definido por un estado y posibles acciones.


Fechas y lugares
Selecciona tu ubicación u opta por la clase remota y luego elige tu fecha.
Clase a distancia