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)
The trainer explained the content well and was engaging throughout. He stopped to ask questions and let us come to our own solutions in some practical sessions. He also tailored the course well for our needs.
Robert Baker
Curso - Deep Learning with TensorFlow 2.0
Very updated approach or CPI (tensor flow, era, learn) to do machine learning.