Logo UAB
2023/2024

Xarxes Neuronals i Aprenentatge Profund

Codi: 104407 Crèdits: 6
Titulació Tipus Curs Semestre
2503740 Matemàtica Computacional i Analítica de Dades OB 3 2

Professor/a de contacte

Nom:
Oriol Ramos Terrades
Correu electrònic:
oriol.ramos@uab.cat

Idiomes dels grups

Podeu accedir-hi des d'aquest enllaç. Per consultar l'idioma us caldrà introduir el CODI de l'assignatura. Tingueu en compte que la informació és provisional fins a 30 de novembre de 2023.

Equip docent

Carlos Boned Riera

Prerequisits

Haver cursat les assignatures de la matèria 7: Intel·ligència Artificial i Aprenentatge Computacional, i les assignatures de Modelització i Inferència (2n), Anàlisi Complex de Dades (2n), i Teoria de la Informació (3r).


Objectius

Aquesta assignatura té com a objectiu donar una introducció pràctica als models de xarxes neuronals i l'aprenentatge profund.

Els estudiants consolidaran i ampliaran els seus antecedents teòrics, construint sobre assignatures anteriors de aprenentatge automàtic i complementant el coneixement previ amb nous conceptes sobre el disseny de xarxes neuronals, les eines i sistemes d'aprenentatge profund, i les tècniques d'aprenentatge per a aquests models.

Els estudiants han d'acabar aquesta assignatura, tenint un ampli coneixement de les diferents arquitectures de xarxes neuronals i els seus escenaris d'ús típics, i una capacitat demostrada per triar críticament l'arquitectura correcta i els mecanismes d'aprenentatge adequats per a cada tasca.

Finalment, els estudiants rebran capacitació pràctica i adquiriran experiència en l'ús dels sistemes actuals d'aprenentatge profund per resoldre tasques concretes.


Competències

  • Avaluar de manera crítica i amb criteris qualitat el treball realitzat.
  • Que els estudiants hagin demostrat que comprenen i tenen coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es basa en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda d'aquell camp d'estudi.
  • Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tant especialitzat com no especialitzat.
  • Que els estudiants sàpiguen aplicar els coneixements propis a la seva feina o vocació d'una manera professional i tinguin les competències que se solen demostrar per mitjà de l'elaboració i la defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi.
  • Resoldre problemes relacionats amb l'anàlisi de grans volums de dades a través del disseny de sistemes intel·ligents i d'aprenentatge computacional.
  • Treballar cooperativament en un context multidisciplinar asumiendo y respetando el rol de los diferentes miembros del equipo.
  • Utilitzar eficaçment la bibliografia i els recursos electrònics per obtenir informació.

Resultats d'aprenentatge

  1. Avaluar de manera crítica i amb criteris de qualitat el treball desenvolupat.
  2. Comprendre els mecanismes d'aprenentatge profund basat en xarxes neuronals per poder dissenyar i aplicar l'arquitectura més adequada a un problema determinat.
  3. Conèixer i aplicar les tècniques d'aprenentatge més adequades per resoldre problemes computacionals en diferents casos d'estudi.
  4. Entendre i avaluar els resultats i les limitacions de les tècniques d'aprenentatge més comunes.
  5. Identificar i definir solucions computacionals en múltiples dominis per a la presa de decisions basada en l'exploració d'alternatives, el raonament incert i la planificació de tasques.
  6. Que els estudiants hagin demostrat que comprenen i tenen coneixements en una àrea d'estudi que parteix de la base de l'educació secundària general, i se sol trobar a un nivell que, si bé es basa en llibres de text avançats, inclou també alguns aspectes que impliquen coneixements procedents de l'avantguarda d'aquell camp d'estudi.
  7. Que els estudiants puguin transmetre informació, idees, problemes i solucions a un públic tant especialitzat com no especialitzat.
  8. Que els estudiants sàpiguen aplicar els coneixements propis a la seva feina o vocació d'una manera professional i tinguin les competències que se solen demostrar per mitjà de l'elaboració i la defensa d'arguments i la resolució de problemes dins de la seva àrea d'estudi.
  9. Treballar cooperativament en un context multidisciplinari assumint i respectant el rol dels diferents membres de l'equip.
  10. Utilitzar eficaçment la bibliografia i els recursos electrònics per obtenir informació.

Continguts

  • Xarxes neuronals
    • Perceptron
    • Multi-layer perceptrón
    • backpropagation
  • Procés d'entrenament
    • Inicialització
    • Algorismes d'optimització
    • Tècniques de regularització
    • Tasques i funcions de cost
  • Arquitectures profundes de xarxes neuronals
    • Xarxes convolucionals
    • Xarxes recurrents
    • Aprenentatge no supervisat (autoencoders)
    • Generative adversarial Networks

Metodologia

El disseny de xarxes neuronals ve donat pels tipus de problemes que es pretenen resoldre. Al llarg d'aquesta assignatura serà aquesta tipologia de problemes la que motivarà  de cada apartat i orientarà l'organització dels continguts.

Hi haura tres tipus de sessions:

Classes de teoria: L'objectiu d'aquestes sessions és que el professor expliqui a els antecedents teòrics de l'assignatura. Per a cadascú dels temes estudiats s'explica la teoria i la formulació matemàtica, així com les solucions algorítmiques corresponents.

Sessions de laboratori: les sessions de laboratori tenen com a objectiu facilitar la interacció, el treball col·laboratiu i reforçar la comprensió dels temes vistos a les classes de teoria. Durant les sessions de laboratori els estudiants treballaran casos pràctics que requereixen el disseny de solucions mitjançant els mètodes estudiats a les classes de teoria. La resolució de problemes s’iniciarà a la classe i es complementarà amb un conjunt setmanal de problemes per treballar a casa.

Sessions de projecte: cap a finals de curs es dedicaran  les últimes sessions a fer el seguiment d'un projecte. Aquest projecte  consistirà en una tasca que s'haurà de resoldre amb les eines i conceptes treballats al llarg del curs.

Tota la informació de l’assignatura i els documents relacionats que necessiten els estudiants estaran disponibles al campus virtual (cv.uab.cat).

Nota: es reservaran 15 minuts d'una classe, dins del calendari establert pel centre/titulació, per a la complementació per part de l'alumnat de les enquestes d'avaluació de l'actuació del professorat i d'avaluació de l'assignatura/mòdul.


Activitats formatives

Títol Hores ECTS Resultats d'aprenentatge
Tipus: Dirigides      
Classe de Pràctiques 14 0,56 2, 3, 4, 5, 6, 7, 8, 9, 10
Classe de Teoria 20 0,8 2, 3, 4, 5, 6
Sessions de projecte 16 0,64 1, 2, 3, 4, 5, 7, 8, 9, 10
Tipus: Supervisades      
Tutories 5 0,2 1, 2, 3, 4, 5, 10
Tipus: Autònomes      
Dedicació als practicals 29 1,16 1, 2, 3, 4, 6, 7, 8, 10
Desenvolupament del projecte 16 0,64 1, 3, 4, 5, 9, 10
Lectura i estudi de material 45 1,8 2, 3, 4, 5, 10

Avaluació

Per avaluar el nivell d'aprenentatge de l'estudiant s'estableix una fórmula que combina l'aprenentatge de coneixements, la capacitat de resolució de problemes i les capacitats de treballar en equip, així com de la presentació dels resultats obtinguts.

Nota Final

La nota final es calcula ponderadament de la següent manera i d'acord amb les diferents activitats que es duen a terme:

Nota final = 0,45* Nota Teoria + 0,1 * Nota Problemes + 0,45 * Nota Projecte

S'aplicarà aquesta fórmula sempre que la nota de teoria sigui més gran que 4. No hi ha cap restricció sobre la nota de problemes ni sobre la nota de projectes. Si fent el càlcul de la fórmula surt >= 5, però la notes de teoria no arriben a el mínim exigit, llavors la nota que es posarà en l'expedient serà la més petita entre el resultat d'aplicar la fòrmula anterior i 4.5.

Nota de Teoria

La nota de teoria pretén valorar les capacitats individuals de l'estudiant pel que fa als continguts teòrics de l'assignatura, això es fa de forma continuada durant el curs amb dos exàmens parcials:

Nota Teoria = 0,5 * Nota Examen 1 + 0,5 * Nota Examen 2

Aquests exàmens pretenen fer una avaluació individualitzada de les capacitats de cada estudiant per a resoldre problemes utilitzant les tècniques explicades a classe, així com avaluar el nivell de conceptualització que l'estudiant ha fet de les tècniques vistes. Si fent el càlcul de la fórmula surt una nota de teoria < 5 caldrà fer l'examen de recuperació.

Examen de recuperació. En cas que la nota de teoria no arribi a l'aprovat, els estudiants s'hauran de presentar a un examen de recuperació on s'avaluarà de tots els continguts de l'assignatura fets al llarg del curs. En cas d'aprovar, lanota màxima de l'examen de recuperació serà 5.

Nota de Problemes

La part de problemes té com a objectiu aconseguir que l'estudiant s'entreni amb els continguts de l'assignatura de manera continuada i que es familiaritzi directament en l'aplicació de la teoria. Com evidència d'aquest treball es demana la presentació d'un portfoli en el qual s'aniran guardant els problemes realitzats. Per obtenir nota de problemes es requereix el lliurament de el 70% dels conjunts de problemes com a mínim, en cas contrari, la nota de problemes serà igual a 0.

Nota Problemes = Avaluació del portfoli

Nota de Projecte

La part de formació més pràctica d'aquesta assignatura es basa en el desenvolupament d'un projecte que es farà a finals de curs. Té un pes essencial en la nota global de l'assignatura i pretén que l'estudiant s'enfronti al problema de dissenyar una solució a un repte que es planteja de manera contextualitzada i que, per tant, requereix el disseny d'una solució integral, des de la preparació de les dades fins al disseny i entrenament d'un model neuronal. A més, l'estudiant ha de demostrar les seves habilitats per treballar en equip i presentar convincentment els resultats.

Els projectes s'avalua a través del seu lliurable, una presentació oral que faran els estudiants a classe, i un procés d'autoavaluació per part dels estudiants. La nota es calcula de la següent manera:

Nota Projecte = 0.5 * Nota Lliurables + 0.3 * Nota Presentació + 0.2 * Nota Autoavaluació

En cas de no superar el projecte es permetrà la recuperació a nivell de grup o a nivell individual amb la restricció que la nota màxima del projecte serà un 5 (aprovat). En la recuperació del projecte les notes obtingudes a la presentació i autoavaluació no esconsideran.

Notes importants

Aquesta assignatura no preveu el sistema d’avaluació única.

Sense perjudici d'altres mesures disciplinàries que s'estimin oportunes, i d'acord amb la normativa acadèmica vigent, la comissió d'activitats irregulars per part de l'estudiant (per exemple, plagiar, copiar, deixar copiar, l’ús no autoritzat de la IA, ...) implicarà suspendre l'activitat corresponent amb un zero (0). Les activitats d'avaluació qualificades d'aquesta forma i per aquest procediment no seran recuperables.

En cas que no es faci cap lliurament de problemes, no s'assisteixi a cap sessió de presentació dels projectes en pràctiques de laboratori i no es faci cap examen, la nota corresponent serà un "no avaluable". En un altre cas, els "no presentats" computen com un 0 per al càlcul de la mitjana ponderada.

Per obtenir matrícula d'honor, la qualificació final ha de ser igual o superior a 9,5 punts. S'atorga a qui tingui la qualificació final més alta i en ordre descend fins arribar al màxim possible. En cas d'empat, es tindran en compte els resultats dels exàmens parcials de teoria.


Activitats d'avaluació continuada

Títol Pes Hores ECTS Resultats d'aprenentatge
Avaluació del projecte 45 1 0,04 1, 2, 3, 4, 6, 7, 8, 9, 10
Exámens 45 4 0,16 2, 3, 4, 5, 6, 8, 10
Lliurables de problemes 10 0 0 2, 3, 4, 5, 6, 7, 8, 10

Bibliografia

Llibres:

  • Deep Learning, Ian Goodfellow, Yoshua Bengio, and Aaron Courville, MIT Press, 1st Ed. 2016
  • Deep learning with Python, François Chollet, Manning Publications, 1st Ed., 2017
  • Pattern Recognition and Machine Learning, Christopher Bishop, Springer, 2011
  • Neural Networks for Pattern Recognition, Christopher Bishop, Oxford University Press, 1st ed., 1996

Llibres en línia:


Programari

Per a les activitats pràctiques del curs utilitzarem Python (NumPy, MatPlotLib, SciKit Learn) i PyTorch