En este curso aprenderás

  • Todos los conceptos y el principio de funcionamiento de las cuatro principales arquitecturas del Deep Learning usadas en la actualidad: las Redes Neuronales, Convolucionales, Recurrentes y LSTM y las Redes Transformer

  • A construir arquitecturas de Deep Learning usando Python, la librería Keras y Google Colab

  • A implementar de forma práctica modelos predictivos (de clasificación y regresión) y soluciones a problemas reales en áreas como el procesamiento de imágenes, la visión por computador y el procesamiento del lenguaje natural, entre otras

  • A realizar el pre-procesamiento y la visualización de datos usando técnicas como el análisis exploratorio de datos y librerías específicas de Python como Numpy, Matplotlib, Pandas y Scikit-Learn

Contenido del curso

  • 1

    Introducción al Deep Learning: definiciones básicas y fundamentos

    • Introducción al Aprendizaje Automático

    • Elementos básicos de un sistema de Deep Learning

    • Inteligencia Artificial vs Machine Learning vs Deep Learning

    • Evolución del Deep Learning y casos de éxito

    • Definiciones básicas del Deep Learning

    • Preparación del entorno Python: Google Colab

    • Introducción a Python para Deep Learning

    • Introducción a Numpy para Deep Learning

    • Introducción a Matplotlib para Deep Learning

    • Introducción a Pandas para Deep Learning

    • Elementos esenciales de Álgebra Lineal para Deep Learning

    • Elementos esenciales de Cálculo Diferencial para Deep Learning

    • Elementos esenciales de Probabilidad para Deep Learning

  • 2

    Las Redes Neuronales

    • Introducción

    • El algoritmo del Gradiente Descendente

    • La Regresión Lineal

    • Práctica 1: la Regresión Lineal desde cero en Python

    • La Regresión Lineal Múltiple

    • Gradiente Descendente estocástico con "mini-batch"

    • Práctica 2: la Regresión Lineal en Keras

    • La Neurona Artificial

    • La entropía cruzada: entrenamiento de la Neurona Artificial

    • Práctica 3: la Neurona Artificial en Keras

    • La Clasificación Multiclase

    • Práctica 4: Clasificación Multiclase en Keras

    • Idea intuitiva acerca de las Redes Neuronales

    • Las Funciones de Activación

    • Entrenamiento de una Red Neuronal: Forward y Backward Propagation

    • Práctica 5: detección de partículas con Redes Neuronales

    • Los sets de entrenamiento, prueba y validación

    • Underfitting y overfitting

    • Práctica 6: cómo crear, entrenar y validar una Red Neuronal en Keras

    • Técnicas de Regularización

    • Otros algoritmos de optimización: variantes del Gradiente Descendente

    • Otros algoritmos de optimización: Gradiente Descendente + Momentum

    • Otros algoritmos de optimización: RMSPROP

    • Otros algoritmos de optimización: Adam

    • Aspectos prácticos para la implementación de Redes Neuronales

    • Proyecto final (parte 1): Predicción del Riesgo de Diabetes con Redes Neuronales - El problema a resolver

    • Proyecto final (parte 2): Análisis Exploratorio de Datos y Manejo de Datos Faltantes

    • Proyecto final (parte 3): Pre-procesamiento y creación de los sets de entrenamiento, prueba y validación

    • Proyecto final (parte 4): entrenamiento y validación preliminar

    • Proyecto final (parte 5): cross-validation, sugerencias finales y conclusiones

  • 3

    Las Redes Convolucionales

    • Introducción

    • El sistema de visión humano y las Redes Convolucionales

    • Retos del procesamiento de imágenes y limitaciones de las Redes Neuronales

    • El filtro o kernel

    • La convolución

    • El "padding"

    • Los "strides"

    • Convolución en imágenes con múltiples canales de entrada (volúmenes)

    • Convolución con múltiples filtros

    • "Pooling"

    • Arquitectura de una Red Convolucional

    • LeNet

    • Práctica 1: clasificación de imágenes usando la red "LeNet"

    • AlexNet y VGGNet

    • Práctica 2: transferencia de aprendizaje con VGG-16

    • GoogLeNet y ResNet

    • Práctica 3 (parte 1): segmentación con Redes Convolucionales - la segmentación y el problema a resolver

    • Práctica 3 (parte 2): segmentación con Redes Convolucionales - entrenamiento y segmentación con U-Net

    • Proyecto final: Detección de Objetos Multiclase (parte 1): La Detección de Objetos y el Problema a Resolver

    • Proyecto final: Detección de Objetos Multiclase (parte 2): Preparación del Set de Datos

    • Proyecto final: Detección de Objetos Multiclase (parte 3): Creación y Entrenamiento de la Red Convolucional

    • Proyecto final: Detección de Objetos Multiclase (parte 4) : Detección de Objetos con la Red Entrenada

  • 4

    Las Redes Neuronales Recurrentes y las Redes LSTM

    • Introducción: las Redes Neuronales Recurrentes y el concepto de secuencia

    • Principio de funcionamiento de una Red Neuronal Recurrente

    • Arquitectura de una Red Neuronal Recurrente

    • Una Red Neuronal Recurrente en acción: ejemplo paso a paso

    • Entrenamiento: "backpropagation" a través del tiempo

    • Diferentes configuraciones de Redes Recurrentes

    • Práctica 1: Generación de Texto (parte 1): el set de datos y el modelo a implementar

    • Práctica 1: Generación de Texto (parte 2): entrenamiento del modelo y generación de texto

    • Limitaciones de las Redes Neuronales Recurrentes

    • Las Redes LSTM (parte 1): las compuertas y la celda de memoria candidata

    • Las Redes LSTM (parte 2): actualización de la celda de memoria y del estado oculto

    • Práctica 2: Análisis de sentimientos con Redes LSTM (parte 1): el modelo a implementar y el set de datos

    • Práctica 2: Análisis de sentimientos con Redes LSTM (parte 2): implementación de la Red y clasificación de sentimientos

    • Proyecto final: Predicción de Demanda Energética con Redes LSTM (parte 1): series de tiempo, el problema a resolver y el set de datos

    • Proyecto final: Predicción de Demanda Energética con Redes LSTM (parte 2): sets de entrenamiento y prueba y creación y entrenamiento del modelo

    • Proyecto final: Predicción de Demanda Energética con Redes LSTM (parte 3): predicción de la demanda con la red entrenada

    • Ventajas y limitaciones de las Redes Neuronales Recurrentes

  • 5

    Las Redes Transformer

    • Calendario de publicaciones

El curso está dividido en 5 secciones, que serán publicadas en las siguientes fechas:

  • "Introducción al Deep Learning: definiciones básicas y fundamentos" y "Redes Neuronales": disponibles en su totalidad desde el 16 de julio
  • "Redes Convolucionales", "Redes Recurrentes y LSTM" y "Redes Transformer": se publicarán lecciones diariamente de lunes a viernes, a partir del 21 de julio y hasta completar la totalidad de las lecciones.

Requisitos

  • Un computador (de escritorio o portátil) con acceso a Internet.

  • Una cuenta de usuario en Google. La totalidad de la parte práctica del curso será desarrollada en la plataforma Google Colab (de acceso gratuito y a través del navegador de Internet)

  • Alguna experiencia previa implementando código en cualquier lenguaje de programación. En la primera parte del curso se desarrollarán tutoriales introductorios a la programación en Python y las principales librerías requeridas

  • Conocimientos básicos de álgebra y cálculo (al menos a nivel de último año de secundaria). En la primera parte del curso se abordarán los conceptos esenciales de álgebra lineal, cálculo diferencial y probabilidad y estadística

Instructor

Fundador y creador de contenidos en Codificando Bits

Miguel Sotaquirá

Soy Ingeniero Electrónico y tengo una Maestría en esta área, así como un Doctorado en Bioingeniería. Durante 15 años he sido profesor e investigador de varias universidades de Colombia, y desde el año 2017 me he convertido en un apasionado por el Machine Learning, el Deep Learning y la Ciencia de Datos. De hecho durante mi tesis doctoral explore temas de Machine Learning y algo de Deep Learning (que aún no estaba en auge!) para el análisis de imágenes médicas. En la actualidad me dedico por completo a divulgar contenido en mi canal de YouTube y a brindar asesoría y formación a personas y empresas en estos temas.