Info 2024.2 - UdeA
Contents
Info 2024.2 - UdeA¶
REGISTRO¶
Para acceder a los laboratorios del curso tienes que registrate en el siguiente formulario
Trabajando con los materiales del curso¶
01 - Jupyter notebooks y Google colab: video 13mins Explicamos brevemente cómo es el entorno de ejecución de código Python en la nube de Google que vamos a usar durante el curso
02 - Laboratorios y envío de soluciones: video 12mins Describimos cómo es el mecanismo de envío de soluciones y la plataforma de autocorrección de talleres.
Sesiones sincrónicas¶
Para acceder a las sesiones
Para acceder a las grabaciones
Calendario y fechas¶
Fechas límite para entregas¶
8/sep: Laboratorios unidad 1 y 2
15/sep: Laboratorios unidad 3
29/sep: Proyecto entrega 1
13/oct: Laboratorios unidad 4
27/oct: Laboratorios unidad 5
20/nov: Proyecto informe final
Cualquier solicitud de cambio de fechas habrá de realizarse al menos tres días antes de la fecha sobre la que se solicita el cambio, por medio de un correo a raul.ramos@udea.edu.co consensuado al menos por un 50% de la clase y con copia explícita a los estudiantes que formen parte del consenso.
Las fechas de entrega de los laboratorios son ESTRICTAS. Como estudiantes tienen la posibilidad de solicitar ordenadamente aplazamientos. No se admitirán entregas de laboratorios después de las fechas establecidas o aplazadas según el protocolo anterior.
Fechas oficiales facultad de ingeniería¶
12/aug/2024 Inicio de clases
28/sep/2024 Evaluación al 40% (pregreado)
30/sep/2024 Evaluación al 50% (posgrado)
22/nov/2024 Finalización clases (posgrado)
23/nov/2024 Finalización clases (pregrado)
25/nov - 30/nov/2024 Exámentes finales
1/dic/2024 Fecha límite cierre de notas
5/dic/2024 Terminación oficial (posgrado)
10/dic/2024 Terminación oficial (pregreado)
Evaluaciones¶
20% Laboratorios unidades 1,2,3
20% Laboratorios unidad 4
20% Laboratorios unidad 5
40% Proyecto
Proyecto¶
Deberás de realizar un proyecto que aplique las técnicas del módulo 4 o del módulo 5 a un problema que escojas. Por ejemplo:
Relacionado con tu trabajo de investigación o interés que tú tengas.
Un challenge de www.kaggle.com (aunque ya haya pasado la competición)
Sobre algún dataset público
etc.
Los proyectos se podrán hacer en grupos de una, dos o tres personas. Todos los miembros de un grupo habrán de realizar las entregas cada uno en un repositorio github propio. Cada estudiante es responsable de su propia entrega. Si un estudiante no realiza su entrega no recibirá calificación, aunque los demás miembros del grupo la tengan.
Cualquier entrega de proyecto fuera de fechas será penalizada con el 50% de la evaluación.
Te recomendamos que:
Verifiques que los datos están disponibles antes de escoger tu proyecto.
Estimes los requerimientos computacionales para generar los modelos que necesites. Reduce el alcance de tu proyecto si lo necesitas (menos datos, menos clases, etc.).
Realices una primera iteración cuanto antes. Es decir, que llegues a tener un primer modelo sencillo produciendo predicciones. Implementa en esta primera iteración estrictamente lo que necesites para tener un modelo. El objetivo es resolver la mayoría de los problemas técnicos que te puedan surgir para ya, después, enfocarte en todo lo que quieras hacer en las siguientes iteraciones (preprocesado de datos, otros modelos, etc.)
Entregas¶
Deberàs de rellenar un formulario PARA CADA ENTREGA
Formulario ENTREGA 1: ENLACE FORMULARIO
Formulario ENTREGA 2: ENLACE FORMULARIO
Para verificar las fechas de entrega se considerará (1) que el formulario se haya rellenado antes de la fecha de entrega; y (2) el último commit antes de cada fecha. Es decir,
si cualquier entregable aparece únicamente en commits posteriores a cualquier fecha de entrega no se tendrá en cuenta.
si no se rellena el formulario no se considerará la entrega realizada, aunque haya commits dentro de la fecha de entrega.
Entrega 1¶
Tendrás que entregar un documento (1-3 páginas máximo) con la siguiente estructura
Contexto de aplicación.
Objetivo de machine learning (queremos predecir X, dada tal información)
Dataset: tipo de datos, tamaño (número de datos y tamaño en disco), distribución de las clases
Métricas de desempeño (de machine learning y negocio)
Referencias y resultados previos
Para la entrega crea un nuevo repositorio en http://github.com e incluye el informe con el nombre ENTREGA1.PDF.
Entrega 2¶
Para realizar esta entrega tienes que realizar TRES cosas:
Incluye en el repositorio github los notebooks con tu soluciòn, el informe de la primera entrega y el informe final y lo que consideres oportuno.
Crea un video de presentación y súbelo a http://youtube.com
Incluye en el README.md del repositorio, el enlace al video de youtube.
La entrega ha de constar de los siguientes elementos:
Notebooks reproducibles
Incluye los notebooks que consideres que implementen tu solución o las iteraciones que hiciste sobre la misma (distintas arquitecturas, etc.)
Los notebooks han de ser directamente reproducibles sobre Google Colab. CUALQUIER NOTEBOOK QUE PRODUZCA ERRORES AL EJECUTARSE SERÁ DESCARTADO DE TU ENTREGA
Organiza tus notebooks con un prejifo numérico para que estén ordenados, mira el ejemplo de estructura de tu carpeta de entrega más abajo
Informe
Redacta un informe ejecutivo e inclúyelo en la carpeta compartida en formato PDF. El informe no debería de ser muy largo (p.ej. entre 5 y 10 páginas), y ha de incluir:
Descripción de la estructura de los notebooks entregados
Descripción de tu solución (arquitectura, preprocesado, etc.)
Descripción de las iteraciones que hiciste
Descripción de los resultados.
El fichero con el informe se ha de llamar INFORME_PROYECTO.PDF.
Video (súbelo a youtube)
Realiza un video de entre 5 y 10mins donde expliques tu entrega. P.ej.:
Describe y muestra brevemente los datos
Describe y muestra brevemente tu código
Muestra la pantalla con tus notebooks según los ejecutas
Muestre algunos de los resultados obtenidos
Incluye, en el
README.md
de tu repositorio un enlace al video en youtube.
Datos
Incluye en tu informe cómo obtener y hacer disponibles tus datos a los procesos implementados en tus notebooks.
Modelos entrenados
El proceso de entrenamiento de los modelos ha de ser ejecutable desde los notebooks de tu entrega.
Estructura del repositorio github¶
Tu repositorio de la entrega final ha tener la siguiente estructura. Los nombres de los notebooks pueden ser distintos, pero HAN DE ESTAR NUMERADOS.
|
+- 01 - exploración de datos.ipynb
+- 02 - preprocesado.ipynb
+- 03 - arquitectura de linea de base.ipynb
+- xx - otros_notebooks
+- INFORME_PROYECTO.PDF
+- ENTREGA1.PDF
SI NO SIGUES ESTAS REGLAS DE NOMBRADO DE LOS NOTEBOOKS, LOS INFORMES EN PDF, Y LA INCLUSIÓN DEL ENLACE DEL VIDEO EN YOUTUBE, TENDRÁS UNA PENALIZACIÓN DEL 50% EN LA CALIFICACIÓN TOTAL DEL PROYECTO.
Evaluación del proyecto¶
10%: Entrega 1 realizada a tiempo
40%: Claridad
25%: reproducibilidad
25%: compleción
Referencias¶
Guías sobre Deep Learning
Aggarwal, Charu C. Neural networks and deep learning. Springer 10 (2018): 978-3.
Calin, Ovidiu. Deep Learning Architectures. Springer International Publishing, 2020.
Goodfellow, I., Bengio, Y., Courville, A., & Bengio, Y. (2016). Deep learning (Vol. 1). Cambridge: MIT Press website pdf
Con un foco especial en alguno de los módulos
Hochreiter, S., & Schmidhuber, J. (1997). Long short-term memory. Neural computation, 9(8), 1735-1780.
Vinyals, O., Toshev, A., Bengio, S., & Erhan, D. (2015). Show and tell: A neural image caption generator. In Proceedings of the IEEE conference on computer vision and pattern recognition (pp. 3156-3164).
Venugopalan, S., Rohrbach, M., Donahue, J., Mooney, R., Darrell, T., & Saenko, K. (2015). Sequence to sequence-video to text. In Proceedings of the IEEE international conference on computer vision (pp. 4534-4542).
Sutskever, I., Vinyals, O., & Le, Q. V. (2014). Sequence to sequence learning with neural networks. In Advances in neural information processing systems (pp. 3104-3112).
Pradeep Pujari, Md. Rezaul Karim, Mohit Sewak (2017) , Practical Convolutional Neural Networks, O’Reilly,
Vaswani et al. (2023), Attention is all you need arxiv
Karpathy, Alex (2023) Let’s build GPT: from scratch, in code, spelled out. youtube
KDNuggets (2023) A Comprehensive List of Resources to Master Large Language Models website
Generales de machine learning
Hastie, Tibshirani, Friedman, The Elements of Statistical Learning, Springer-Verlag website pdf
Haykin, S. S., Haykin, S. S., Haykin, S. S., & Haykin, S. S. (2009). Neural networks and learning machines (Vol. 3). Upper Saddle River, NJ, USA:: Pearson.
Materiales complementarios
Curso de pregrado Modelos y simulación: https://github.com/jdariasl/ML_2020
Curso abierto Introducción a la IA para las Ciecnias e Ingenierías https://rramosp.github.io/ai4eng.v1
https://numpy.org/doc/stable/user/numpy-for-matlab-users.html