Programa del Curso
Parte 1 – Deep Learning y conceptos de DNN
Introducción AI, Machine Learning y Deep Learning
-
Historia, conceptos básicos y aplicaciones habituales de la inteligencia artificial lejos de las fantasías que conlleva este dominio
-
Inteligencia Colectiva: agregación de conocimiento compartido por muchos agentes virtuales
-
Algoritmos genéticos: para evolucionar una población de agentes virtuales por selección
-
Máquina de aprendizaje habitual: definición.
-
Tipos de tareas: aprendizaje supervisado, aprendizaje no supervisado, aprendizaje por refuerzo
-
Tipos de acciones: clasificación, regresión, agrupamiento, estimación de densidad, reducción de dimensionalidad
-
Ejemplos de Machine Learning algoritmos: Regresión lineal, Bayes ingenuo, Árbol aleatorio
-
Aprendizaje automático VS Deep Learning: problemas en los que Machine Learning permanece Hoy en día el estado del arte (Random Forests y XGBoosts)
Conceptos básicos de una red neuronal (Aplicación: perceptrón multicapa)
-
Recordatorio de las bases matemáticas.
-
Definición de una red de neuronas: arquitectura clásica, activación y
-
Ponderación de activaciones anteriores, profundidad de una red
-
Definición del aprendizaje de una red de neuronas: funciones de costo, retropropagación, descenso de gradiente estocástico, máxima verosimilitud.
-
Modelado de una red neuronal: modelado de datos de entrada y salida según el tipo de problema (regresión, clasificación...). Maldición de la dimensionalidad.
-
Distinción entre datos multifunción y señal. Elección de una función de coste en función de los datos.
-
Aproximación de una función por una red de neuronas: presentación y ejemplos
-
Aproximación de una distribución por una red de neuronas: presentación y ejemplos
-
Aumento de datos: cómo equilibrar un conjunto de datos
-
Generalización de los resultados de una red de neuronas.
-
Inicialización y regularización de una red neuronal: regularización L1 / L2, normalización por lotes
-
Algoritmos de optimización y convergencia
Herramientas ML / DL estándar
Se planea una presentación sencilla con ventajas, desventajas, posición en el ecosistema y uso.
-
Herramientas de gestión de datos: Apache Spark, Apache Hadoop Herramientas
-
Machine Learning: Numpy, Scipy, Sci-kit
-
Marcos de alto nivel DL: PyTorch, Keras, Lasaña
-
Marcos DL de bajo nivel: Theano, Torch, Caffe, Tensorflow
Convolucional Neural Networks (CNN).
-
Presentación de las CNN: principios fundamentales y aplicaciones
-
Funcionamiento básico de una CNN: capa convolucional, uso de un núcleo,
-
Relleno y zancada, generación de mapas de características, agrupación de capas. Extensiones 1D, 2D y 3D.
-
Presentación de las diferentes arquitecturas CNN que aportaron el estado del arte en clasificación
-
Imágenes: LeNet, VGG Networks, Red en Red, Inception, Resnet. Presentación de las Innovaciones aportadas por cada arquitectura y sus aplicaciones más globales (Convolución 1x1 o conexiones residuales)
-
Uso de un modelo de atención.
-
Aplicación a un caso de clasificación común (texto o imagen)
-
CNNs para generación: superresolución, segmentación píxel a píxel. Presentación de
-
Principales estrategias para aumentar los mapas de características para la generación de imágenes.
Recurrente Neural Networks (RNN).
-
Presentación de las RNNs: principios fundamentales y aplicaciones.
-
Funcionamiento básico de la RNN: activación oculta, propagación hacia atrás a través del tiempo, versión desplegada.
-
Evoluciones hacia las Unidades Recurrentes Cerradas (GRUs) y LSTM (Memoria a Largo Corto Plazo).
-
Presentación de los diferentes estados y las evoluciones que han traído estas arquitecturas
-
Problemas de convergencia y gradiente de fuga
-
Arquitecturas clásicas: Predicción de una serie temporal, clasificación...
-
Arquitectura de tipo decodificador de codificador RNN. Uso de un modelo de atención.
-
Aplicaciones de PNL: codificación de palabras / caracteres, traducción.
-
Aplicaciones de vídeo: predicción de la siguiente imagen generada de una secuencia de vídeo.
Modelos generacionales: AutoEncoder Variacional (VAE) y Redes Generativas Adversarias (GAN).
-
Presentación de los modelos generacionales, vinculación con las CNNs
-
Autocodificador: reducción de la dimensionalidad y generación limitada
-
Autocodificador variacional: modelo generacional y aproximación de la distribución de un determinado producto. Definición y uso del espacio latente. Truco de reparametrización. Aplicaciones y límites observados
-
Redes generativas adversarias: fundamentos.
-
Arquitectura de red dual (generador y discriminador) con aprendizaje alternativo, funciones de costo disponibles.
-
Convergencia de una GAN y dificultades encontradas.
-
Convergencia mejorada: Wasserstein GAN, Comenzó. Distancia de movimiento de la tierra.
-
Aplicaciones para la generación de imágenes o fotografías, generación de texto, super-resolución.
Profundo Reinforcement Learning.
-
Presentación del aprendizaje por refuerzo: control de un agente en un entorno definido
-
Por un Estado y las posibles acciones
-
Uso de una red neuronal para aproximar la función de estado
-
Deep Q Learning: rejugabilidad de la experiencia, y aplicación al control de un videojuego.
-
Optimización de la política de aprendizaje. En la póliza y fuera de la póliza. Actor crítico de arquitectura. A3C.
-
Aplicaciones: control de un solo videojuego o de un sistema digital.
Parte 2 – Theano para Deep Learning
Conceptos básicos de Theano
-
Introducción
-
Instalación y configuración
Funciones de Theano
-
Entradas, salidas, actualizaciones, datos
Entrenamiento y optimización de una red neuronal usando Theano
-
Modelado de redes neuronales
-
Regresión logística
-
Capas ocultas
-
Formación de una red
-
Computación y Clasificación
-
Optimización
-
Pérdida de registro
Probando el modelo
Parte 3 – DNN usando Tensorflow
TensorFlow Conceptos básicos
-
Creación, inicialización, almacenamiento y restauración de variables TensorFlow
-
Alimentación, lectura y precarga TensorFlow Datos
-
Cómo usar la infraestructura TensorFlow para entrenar modelos a escala
-
Visualización y evaluación de modelos con TensorBoard
TensorFlow Mecánica
-
Preparación de los datos
-
Descargar
-
Entradas y marcadores de posición
-
Construir el GraphS
-
Inferencia
-
Pérdida
-
Adiestramiento
-
-
Entrenamiento del modelo
-
El grafo
-
La sesión
-
Bucle de tren
-
-
Evaluar el modelo
-
Construir el gráfico de evaluación
-
Salida de evaluación
-
El perceptrón
-
Funciones de activación
-
El algoritmo de aprendizaje del perceptrón
-
Clasificación binaria con el perceptrón
-
Clasificación de documentos con el perceptrón
-
Limitaciones del perceptrón
Del perceptrón a las máquinas vectoriales de soporte
-
Los kernels y el truco del kernel
-
Clasificación de márgenes máximos y vectores de soporte
Artificial Neural Networks
-
Límites de decisión no lineales
-
Redes neuronales artificiales de retroalimentación y retroalimentación
-
Perceptrones multicapa
-
Minimización de la función de coste
-
Propagación hacia adelante
-
Propagación hacia atrás
-
Mejorar la forma en que aprenden las redes neuronales
Convolucional Neural Networks
-
Go als
-
Arquitectura de modelos
-
Principios
-
Organización del código
-
Lanzamiento y entrenamiento del modelo
-
Evaluación de un modelo
Introducciones básicas que se darán a los siguientes módulos (la breve introducción se proporcionará según la disponibilidad de tiempo):
Tensorflow - Uso avanzado
-
Subprocesos y colas
-
Distribuidos TensorFlow
-
Escribir Documentation y compartir el modelo
-
Personalización de lectores de datos
-
Manipulación de TensorFlow archivos de modelo
TensorFlow Sirviendo
-
Introducción
-
Tutorial básico de servicio
-
Tutorial de Serving Avanzado
-
Tutorial del modelo de inicio de servicio
Requerimientos
Conocimientos de física, matemáticas y programación. Participación en actividades de procesamiento de imágenes.
Los delegados deben tener un conocimiento previo de los conceptos de aprendizaje automático y deben haber trabajado en Python programación y bibliotecas.
Testimonios (2)
El entrenador explicó bien el contenido y mantuvo nuestra atención durante todo el tiempo. Se detenía para hacer preguntas y nos dejaba llegar a nuestras propias soluciones en algunas sesiones prácticas. También adaptó muy bien el curso a nuestras necesidades.
Robert Baker
Curso - Deep Learning with TensorFlow 2.0
Traducción Automática
Very updated approach or CPI (tensor flow, era, learn) to do machine learning.
Paul Lee
Curso - TensorFlow for Image Recognition
Traducción Automática