Diagrama de temas

  • Aprendizaje Automático para Datos en Grafos - Edición 2021

    Partidos de fútbol a en función de los años

    IMPORTANTE: Esta versión intensiva de una semana del curso se dictó por única vez en 2021. Una versión extendida de todo el semestre se puede encontrar [aquí]

    Los grafos (o redes) son una estructura de datos presente en muchísimas áreas de conocimiento: redes de telecomunicaciones, sistemas de recomendación, redes de regulación genética, estructuturas de proteínas o movilidad urbana son solo algunos ejemplos. Básicamente, son entidades (nodos) que interactúan entre sí (aristas).

    Sobre estos datos existen muchos problemas interesantes de aprendizaje automático, donde básicamente se busca realizar predicciones o descubrir cierta estructura en los datos: detección de anomalías en una red inalámbrica, recomendación de libros a partir de clasificaciones anteriores y de otros usuarios, o clasificación del rol de ciertas proteínas en redes de interacción biológica. Sin embargo, está claro que técnicas de aprendizaje “tradicionales” (donde los datos son básicamente un vector o una matriz) que no toman en cuenta las relaciones entre las distintas entidades tendrán menor poder de generalización (y por lo tanto mucho peor desempeño) que aquellas que sí lo tomen en cuenta.

    El objetivo general del curso es que los estudiantes puedan afrontar un problema de aprendizaje automático donde los datos se encuentran en forma de grafos. Se brindarán los conceptos teóricos fundamentales y las herramientas prácticas necesarias para ello. Al finalizar el curso los estudiantes serán capaces de implementar y entender distintas técnicas del estado del arte en inferencia y predicción en grafos.

    Docente: Prof. Gonzalo Mateos (Universidad de Rochester, EEUU).
    Docente invitado: Fernando Gama (Universidad de California Berkeley, EEUU).
    Otros docentes: Marcelo Fiori y Federico La Rocca.
    Fechas: Lunes 1º de febrero al viernes 5 jueves 4 de febrero, y jueves 11 de febrero.
    Horario: 9hs a 12hs15 (lunes a jueves) y 14hs a 17hs15 el jueves 11/2.
    Lugar: remoto via zoom
    IMPORTANTE
    Inscripciones como curso de posgrado en: https://bedelias.udelar.edu.uy/
    Inscripciones como Educación Permanente en: https://www.fing.edu.uy/bedelia/inscripciones/actualizacion
    De todas formas quienes planean inscribirse deben matricularse en este EVA para recibir los anuncios y demás información.

  • Clase 1 - Introducción y motivación

    • Charla dictada por Federico La Rocca en el marco de las Tech Meetings de Tryolabs. Puede servir como introducción al curso.

    • Se cubren las nociones y definiciones básicas relacionadas con los grafos dirigidos y no dirigidos, el movimiento en un grafo y la conectividad, así como la aparición de una componente conexa gigante en muchas redes reales. A continuación, describimos familias de grafos clásicas que incluyen grafos completos, regulares, bipartitos, árboles y planares. Nos resultaran de gran utilidad las nociones de teoría algebraica de grafos, como la matriz adyacencia, la matriz de incidencia y el Laplaciano de un grafo, sus relaciones y propiedades espectrales. Terminamos con algoritmos y estructuras de datos para grafos y describimos breadth-first-search (BFS) para, por ejemplo, calcular distancias desde un vértice determinado.

    • Se repasan elementos básicos de inferencia estadística tales como los modelos paramétricos y no paramétricos, y los problemas fundamentales de estimación, predicción y test de hipótesis. Esbozaremos los conceptos de estimación puntual, intervalos de confianza y estadístico de prueba, ademas de estimadores clásicos como el método de los momentos, máxima verosimilitud, mínimos cuadrados y máximo a posteriori (MAP). Todos estos métodos se discutirán en el contexto de dos problemas clásicos: inferencia de la media de una distribución y regresión (mas predicción) con modelos lineales.

    • En esta clase introductoria comenzamos con una presentación de los aspectos administrativos del curso. Se introduce el concepto fundamental de red (así como su abstracción mediante un grafo) y desde una perspectiva histórica motivamos la “ciencia de datos de redes”. A través de ejemplos en múltiples disciplinas intentamos justificar la importancia e impacto del aprendizaje automático para datos en grafos. El resto de la clase se divide en cuatro “cuentos cortos” sobre problemas prototípicos del aprendizaje automático para datos en grafos.  Durante esta recorrida resaltaremos el nuevo paradigma necesario para atacar problemas de inferencia estadística con datos irregulares, es decir donde no hay un dominio Euclideo subyacente como en series temporales o imágenes. También delineamos los principales desafíos técnicos (metodológicos y computacionales) de esta área emergente donde las oportunidades son cada vez mayores, motivando el camino a seguir en el resto del curso.

  • Clase 2 - Graph Neural Networks

  • Clase 3 - Graph learning

  • Clase 4 - Modelos generativos

  • Clase 5 - Graph representation learning

  • Laboratorios

    • Un primer laboratorio para familiarizarse con algunas herramientas para procesar grafos.

    • Un laboratorio para repasar algunos modelos clásicos de grafos, y sobre cómo usar espacios latentes para detectar comunidades en grafos.

    • Un laboratorio sobre sistemas de recomendación para afianzar conceptos de GNNs.

    • Entregar un único pdf con las respuestas a los tres laboratorios. Hay tiempo hasta el domingo 28 de febrero a las 23:55.

  • Trabajos finales

    • El plazo para entregar la propuesta de trabajo final es el viernes 19/2 a las 23:55. 

    • Entregar un único pdf con el informe. Material extra, como código o demos en google colab, deben referirse desde este pdf. La fecha límite para la entrega del informe final es el lunes 5 de abril a las 23:55.

  • Recursos