TICS-579-Deep Learning

Clase 0: Presentación del Curso

Alfonso Tobar-Arancibia

¿Quién soy?

  • Alfonso Tobar-Arancibia
  • Estudié Ingeniería Civil pero llevo 10 años trabajando como:
    • Data Analyst.
    • Data Scientist.
    • ML Engineer.
    • Data Engineer.
  • Soy Msc. en Data Science y estoy cursando el PhD. en la UAI especificamente en Deep Learning.
  • Me gusta mucho programar (en vivo).
  • Contribuyo a HuggingFace y Feature Engine.
  • He ganado 2 competencias de Machine Learning.
  • Publiqué mi primer paper el año pasado sobre Hate Speech en Español.
  • Juego Tenis de Mesa, hago Agility con mi perrita Kira y escribo en mi Blog.

¡¡Cuéntenme de ustedes!!

Disclaimer

Mucho del contenido de este curso será una mezcla entre inglés y español. Esto debido a que el contenido del curso está en constante desarrollo y casi no existen libros o artículos en español al respecto.

Este curso se considera altamente teórico y con una fuerte componente en programación.

¡Están advertidos!

Está completamente prohibido copiar y pegar código de algún modelo de IA. Hablaremos más adelante cómo trataremos de mitigar esto ya que gran parte del curso requiere programación fuerte.

Objetivos del Curso

Ser el curso más completo y exhaustivo de Deep Learning del país.

  • Identificar elementos claves de las Redes Neuronales.
  • Entender conceptos básicos como el Training Loop, Gradient Propagation, Optimización, etc.
  • Identificar los distintos tipos de Redes Neuronales:
    • Feed Fordward Networks,
    • Convolutional Neural Networks,
    • Recurrent Neural Networks,
    • Transformers.
  • Entender las Arquitecturas Estado del Arte en diferentes dominios: Datos Tabulares, Computer Vision, Natural Language Processing.
  • Implementar, entrenar y evaluar Deep Neural Networks utilizando Pytorch.

Tópicos del Curso

  • Shallow Models
  • El Perceptron
  • Tensores
  • Entrenamiento y Evaluación de Modelos
  • Arquitecturas de Redes Neuronales
  • Aplicación de estas redes a distintos dominios.

Implementación en librerías SOTA como Pytorch y HuggingFace.

Logística

  • Clases todos los Jueves de 8:45 a 11:25 de manera presencial.
    • Sala: Por Confirmar.
  • Instructor: Alfonso Tobar-Arancibia (alfonso.tobar.a@edu.uai.cl)
    • Office Hours: Miercoles por la mañana en la A-220.
  • Ayudantías Online, sólo en algunas semanas.*
    • Ayudante: María Alejandra Bravo (mariaabravo@alumnos.uai.cl)

Horarios Posibles:

  • Martes de 17:00 a 18:10 hrs.
  • Miércoles de 8:45 a 09:55 hrs.
  • Miércoles de 10:15 a 11:25 hrs.
  • Miércoles de 17:00 a 18:10 hrs.

Prerequisitos

  • Haber cursado Minería de Datos (no es excluyente pero es necesario saber de Machine Learning).
    • Entrenamiento de un Modelo
    • Evaluación y Validación
    • Regresión Logística
  • Tener conocimientos de Algebra Lineal (poner mucha atención al curso de Algebra Lineal del MSDS).
    • Notación Matricial
    • Multiplicaciones Matriciales
    • Transformaciones Lineales
  • Entender Inglés
    • Mucho del material adicional serán lecturas o videos en inglés.

Recursos

  • Diapositivas Interactivas creadas en Quarto (links van a estar disponibles en Webcursos)
    • Contiene un índice de todas las slides.
    • Permite copiar y pegar código directamente.
    • Imágenes se pueden ver en tamaño completo al clickearlas.
    • Se puede buscar contenido específico de cualquier Slide utilizando la Search Bar.
    • Se puede obtener una copia en PDF presionando la tecla E para luego guardarlas para tomar notas.

Herramientas

Se espera que los estudiantes dominen las siguientes herramientas:

Material Complementario

No hay un texto guía para este curso. La mayoría de las cosas aparecen día a día o las podemos encontrar en Papers, los cuales irán siendo mencionados a medida que sea necesario.

Lectura Recomendada

Reglas del Curso

Nota Final

\[NF = NT + 0.3 \cdot NQ\]

Tareas

  • Se realizarán 5 Tareas. T5 es opcional y reemplaza la peor nota.

\[NT = 0.1 \cdot T1 + 0.15 \cdot T2 + 0.20 \cdot T3 + 0.25 \cdot T4\]

Quizes

  • Se realizarán controles cortos al inicio de clases (previo aviso).
  • Se realizarán suficientes controles para eliminar algunos al final del semestre.
  • No hay controles recuperativos.

\[NQ = \frac{1}{n}\sum_{i=1}^n Q_i\]

Tareas

Reglas

  • Se deben entregar en Jupyter Notebook.
  • Se realizarán en parejas o un grupo de 3 (sólo en caso de número impar) previa inscripción.
  • Las partes teóricas que necesiten notación matemática se deben realizar dentro del Jupyter Notebook pero usando simbología Latex (Dudas de cómo hacerlo a la ayudante).

Defensa de Código

  • El código presentado en las tareas se defenderá mediante interrogación oral en horarios a convenir (normalmente de ayudantía).
  • 3 preguntas aleatorias a cualquier miembro del grupo.
  • En caso de no defender el código correctamente se penalizará de la siguiente manera:
    • 3 preguntas buenas: 100% del puntaje.
    • 2 preguntas buenas: 70% del puntaje.
    • 1 preguntas buenas: 40% del puntaje.
    • 0 preguntas buenas: 20% del puntaje.

Fechas Tareas

Tarea 1

15 de Septiembre (23:59 hrs)

Tarea 2

13 de Octubre (23:59 hrs)

Tarea 3

3 de Noviembre (23:59 hrs)

Tarea 4

24 de Noviembre (23:59 hrs)

Tarea 5 (Opcional, pero recomendada)

15 de Diciembre (23:59 hrs)

Garantías

Vamos a sufrir harto al menos las primeras semanas (yo al menos he sufrido harto preparando las clases), pero les aseguro que va a valer la pena.

Bare with me!!

Vamos a aprender conceptos muy avanzados que no muchos cursos consideran. Lo siento, pero van a ser mis conejillos de indias.

Vamos a pasarla bien mal, estudiando harto, demorándonos harto en las tareas, pero vamos a pasar todos.

Eso NO SIGNIFICA que las notas van a ser regaladas.

Gracias