CAPIBArA: Conceptos de Aprendizaje Profundo para la Investigación en Biología y Áreas Afines

Introducción
Varias cajas de Pandora fueron abiertas en las ciencias biológicas mediante la aplicación de nuevas tecnologías: desde el descubrimiento de los microorganismos a la dilucidación de la maquinaria celular y molecular que hace posible la vida, un sinfín de ejemplos son enumerables. El aprendizaje profundo, una disciplina que se encuentra en ebullición en los últimos años, parece ser una de esas cajas cargadas de herramientas que serán moneda corriente para los/as biólogos/as del futuro.

Este curso se plantea introducir y ejercitar el uso de herramientas de aprendizaje profundo para el análisis de problemas biológicos. Para ello, se introducirán conceptos teóricos básicos de la disciplina, los cuales serán aplicados a problemas biológicos concretos obtenidos de la literatura reciente.

El curso no pretende ser una introducción formal y exhaustiva sobre el tópico (aunque no se evitará la rigurosidad cuando sea necesaria), teniendo por objetivo que el/la estudiante obtenga una noción básica sobre los conceptos claves del área y la aplicación a diversas áreas de la biología. En lo referente al desarrollo práctico, se ejercitará la utilización de herramientas de la librería PyTorch (Python) para aplicar los modelos presentados a datos obtenidos de la literatura.

El curso contará con un equipo interdisciplinar, reuniendo a docentes de las áreas matemática e ingeniería junto a docentes del área de biología computacional.


Objetivo

  • Comprender principios fundamentales de aprendizaje automático/profundo.
  • Aprender a seleccionar y aplicar modelos de aprendizaje profundo adecuados para diferentes tipos de datos y contextos.
  • Aprender a utilizar la librería PyTorch (lenguaje de programación Python) para el desarrollo de modelos de aprendizaje profundo.
  • Ser capaces de interpretar los resultados de los modelos de aprendizaje profundo y considerar las limitaciones e implicancias éticas de sus aplicaciones.
  • Explorar casos de estudio reales de aplicación de aprendizaje profundo en ciencias biológicas.

Temario General

· Módulo 1. Fundamentos para el Aprendizaje Profundo

  • Repaso de Aprendizaje Automático. Flujo de trabajo de AA aplicado a biología: desde datos crudos (ómicos, imágenes/microscopía, audio de campo, etc.) hasta métricas. Función de ajuste y representación de hipótesis. Aprendizaje supervisado, no supervisado y por refuerzo. Ajuste de modelos: overfitting, underfitting, bias–variance tradeoff. Validación cruzada y métricas comunes.
  • Redes Neuronales Artificiales. Perceptrón monocapa y multicapa. Funciones de activación. Teorema de aproximación universal. Conceptualización de descenso por gradiente y retropropagación. Inicialización, normalización y regularización.

· Módulo 2. Arquitecturas de Deep Learning y Aplicaciones Biológicas

  • Redes Convolucionales (CNN). Convolución, pooling, padding, stride. Datos con estructura espacial (imágenes, mapas). Patrones locales y jerárquicos en datos 1D y 2D no visuales. Arquitecturas clásicas: LeNet, AlexNet, ResNet. Transfer learning y fine-tuning en contextos biológicos. Casos biológicos: detección de motivos en secuencias de ADN, predicción de estructura secundaria a partir de la secuencia de aminoácidos, reconocimiento de patrones auditivos.
  • Autoencoders. Concepto y arquitectura básica. Autoencoders para reducción de dimensionalidad (p. ej., expresión génica, metagenómica). Denoising autoencoders, variational autoencoders (VAE). Casos biológicos.
  • Transformers y Embeddings. Redes que procesan secuencias y sus limitaciones. Word embeddings no contextuales (word2vec). Mecanismo de atención. Arquitectura transformer (encoder/decoder). Embeddings dependientes del contexto. Casos biológicos: clasificación de secuencias genómicas (DNABERT), anotación de proteínas (ESM models), análisis de cantos de aves con audio embeddings, análisis del habla.
  • Redes Neuronales en Grafos (GNNs). Representación de datos no euclidianos. Mensaje y agregación. Casos biológicos: redes de interacción ecológica, redes de co-expresión génica, redes de asociación de palabras.
  • Interpretabilidad y reproducibilidad. Grad-CAM en CNNs. Visualización de atención en transformers. Autoencoders sparse para la interpretabilidad. Alucinaciones. Aspectos éticos del uso de modelos de DL en CB. Bonus: “cómo leer un paper de deep learning en biología”.

· Módulo 3. Casos de Estudio y Proyecto Final

  • Casos de estudio:
    i. Neurociencias y Lenguaje
    ii. Genómica y Proteómica
    iii. Aplicaciones en Ecología
  • Diseño de un flujo de trabajo completo: planteo del problema, preparación y exploración de datos, entrenamiento y ajuste de modelo, evaluación y visualización de resultados.

Público esperado
El curso está dirigido a estudiantes de grado avanzado, posgrado o egresados de las áreas biológicas (e.g. Ciencias Biológicas, Bioquímica, Medicina, Veterinaria, Agronomía, etc.) con experiencia básica de programación y conocimientos matemáticos (álgebra lineal, probabilidad y estadística). Por ejemplo, con respecto a programación, haber cursado Aprendizaje Automático Básico para Científicos, Introducción a la Ciencia de Datos (cursos de CICADA), Introducción a la línea de comandos (Instituto de Higiene), o contar con niveles equivalentes, sería necesario. Los cursos de matemáticas, probabilidad y estadística usuales en las carreras de grado que incluyen estos temas serían suficientes.

El curso puede ser también útil a estudiantes con trayectorias fuera de las biociencias (e.g. ingeniería, física o matemática). Son deseables, aunque no excluyentes, conocimientos básicos de biología (equivalentes a Introducción a la Biología I o Biología General, e.g. conocimientos básicos de genética, biología molecular, ecología y evolución).


Aprobación
Se realizarán entregas de tareas asignadas durante el curso y luego se presentará un proyecto final.


Equipo docente: Mauricio Langleib, Felipe Maresca, Héctor Romero y Juan Valle Lisboa.

Docentes invitados: Paola Bermolen, Álvaro Cabana y Federico Lecumberry.

Contacto: eletor@fcien.edu.uy, cicada@ei.udelar.edu.uy


Fechas, lugar, duración y carga horaria
El curso se dictará entre el 16 de setiembre y el 20 de noviembre, y tendrá una carga horaria de 6 horas por semana (60 hs en total, 8 créditos). Será dictado en forma presencial martes y jueves de 15 a 18 horas en Facultad de Ciencias.


Inscripciones
Las inscripciones se deben realizar en este formulario.

Cierran el 15 de setiembre.


Bibliografía

  • Deep Learning for Biology: Harness AI to Solve Real-World Biology Problems. Charles Ravarani, Natasha Latysheva. O’Reilly (2025)
  • Deep Learning. Ian Goodfellow, Yoshua Bengio, and Aaron Courville. MIT (2016)
  • Deep Learning with PyTorch. Eli Stevens, Luca Antiga, and Thomas Viehmann. Manning Publications Co. (2023)
  • Deep Learning for Coders with fastai and PyTorch. Jeremy Howard and Sylvain Gugge. O’Reilly (2020)
  • The Elements of Statistical Learning. Trevor Hastie, Robert Tibshirani, and Jerome Friedman. Springer (2009)
  • Mathematics for Machine Learning. Marc Peter Deisenroth, A. Aldo Faisal, and Cheng Soon Ong. Cambridge University Press (2020)