Logo UAB
2022/2023

Xarxes Neuronals i Aprenentatge Profund

Codi: 106573 Crèdits: 6
Titulació Tipus Curs Semestre
2504392 Intel·ligència Artificial / Artificial Intelligence OB 2 2

Professor/a de contacte

Nom:
Dimosthenis Karatzas
Correu electrònic:
dimosthenis.karatzas@uab.cat

Utilització d'idiomes a l'assignatura

Llengua vehicular majoritària:
anglès (eng)
Grup íntegre en anglès:
Grup íntegre en català:
No
Grup íntegre en espanyol:
No

Prerequisits

Haver cursat les assignatures de Fonaments d'Aprenentatge Automàtic, Fonaments de Programació, Fonaments de Matemàtiques, Probabilitat i Estadística, i Enginyeria de Dades

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

  • Desenvolupar pensament crític per analitzar de manera fonamentada i argumentada alternatives i propostes tant pròpies com alienes.
  • Elaborar estratègies per formular i solucionar diferents problemes d’aprenentatge de manera científica, creativa, crítica i sistemàtica, coneixent les capacitats i limitacions dels diferents mètodes i eines existents.
  • Identificar, comprendre i aplicar els conceptes i tècniques fonamentals de representació del coneixement, raonament i aprenentatge computacional més adequats per a la solució de problemes d’intel·ligència artificial.
  • Introduir canvis en els mètodes i els processos de l’àmbit de coneixement per donar respostes innovadores a les necessitats i demandes de la societat. 
  • Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes destacats d'índole social, científica o ètica.
  • Treballar cooperativament per aconseguir objectius comuns, assumint la pròpia responsabilitat i respectant el rol dels diferents membres de l’equip.

Resultats d'aprenentatge

  1. Comprendre els mecanismes d'aprenentatge profund basat en xarxes neuronals per poder dissenyar i aplicar l'arquitectura més adequada a un problema determinat.
  2. Comprendre l’algoritme de descens de gradient i les seves variants, i poder aplicar-lo per resoldre problemes de regressió i classificació.
  3. Desenvolupar pensament crític per analitzar de manera fonamentada i argumentada alternatives i propostes tant pròpies com alienes.
  4. Entendre els conceptes de biaix i variància, i poder utilitzar mètodes de preparació de dades i tècniques de regularització per obtenir solucions generalitzables a partir de les dades disponibles.
  5. Formular la funció de cost més adequada per a un problema concret segons les característiques de les dades experimentals i requeriments / restriccions del problema.
  6. Planificar, executar i interpretar el procés d’entrenament d’un model de xarxa neuronal profunda usant un mètode d’optimització adequat, fent servir les tècniques adequades de preprocessament i inicialització de dades, i les tècniques de regularització necessàries.
  7. Ponderar els riscos i les oportunitats de les propostes de millora tant pròpies com alienes.
  8. Que els estudiants tinguin la capacitat de reunir i interpretar dades rellevants (normalment dins de la seva àrea d'estudi) per emetre judicis que incloguin una reflexió sobre temes destacats d'índole social, científica o ètica.
  9. Treballar cooperativament per aconseguir objectius comuns, assumint la pròpia responsabilitat i respectant el rol dels diferents membres de l’equip.

Continguts

  • Xarxes neuronals
    • Neurones McCulloch-Pitts i 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)
    • Aprenentatge de mètriques (siamese i triplet networks)
    • Generative adversarial Networks

Metodologia

El disseny de xarxes neuronals és guia pèls tipus de problemes que pretenen resoldre. A l'llarg d'aquesta assignatura serà aquesta tipologia de problemes la que proporcionarà la motivació de cada apartat i orientarà l'organització dels continguts.

Hi haura dos 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.

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      
Classes de teoria 24 0,96 1, 2, 4, 5, 6
Sessions de laboratori 21 0,84 1, 2, 3, 4, 5, 6, 7, 8, 9
Tipus: Supervisades      
Treball en problemes / projectes 40 1,6 1, 3, 5, 6, 7, 8, 9
Tutories 2 0,08 1, 2, 3, 4, 5, 6, 7
Tipus: Autònomes      
Estudi individual 20 0,8 1, 2, 4, 5, 6
Treball en problemes / projectes 30 1,2 1, 3, 5, 6, 7, 8, 9

Avaluació

Per avaluar el nivell d'aprenentatge de l'alumne, s'estableix una fórmula que combina l'adquisició de coneixements teòrics i pràctics, i la capacitat de resolució de problemes.

Nota final

La nota final es calcula ponderada de la següent manera i segons les diferents activitats que es duen a terme:

Nota final = 0.5 * Nota de teoria + 0.1 * Nota de problemes + 0.4 * Evaluació pràctica

Aquesta fórmula s'aplicarà sempre que la qualificació de l'avaluació teòrica i pràctica sigui superior a 5. No hi ha restricció en la qualificació de la cartera de problemes. Si al fer el càlcul de la fórmula s'obté> = 5 però la nota de teoria o la nota de l'avaluació pràctica no arriba al mínim exigit, s'atorgarà una nota final de 4,5.

Nota de teoria

La nota de teoria té com a objectiu avaluar les habilitats individuals de l'alumne pel que fa al contingut teòric de l'assignatura, això es realitza de forma contínua durant el curs a través de dos exàmens parcials. La qualificació general de teoria és la mitjana de les qualificacions dels dos exàmens parcials.

L'examen parcial # 1 es realitza a meitat de semestre i serveix per eliminar part de la matèria si s'aprova. L'examen parcial # 2 es realitza al final del semestre i serveix per eliminar la part del temari que ve després del parcial 1 si s'aprova.

Aquests exàmens tenen com a objectiu avaluar les habilitats de cada alumne de forma individualitzada, tant en la resolució de problemes utilitzant les tècniques explicades a classe, com valorant el nivell de conceptualització que ha fet l'alumne de les tècniques vistes. Per obtenir una nota de teoria es requerirà que les qualificacions de tots dos exàmens parcials siguin superiors a 4. Si al fer el càlcul de la fórmula s'obté> = 5 però les qualificacions de qualsevol dels dos exàmens parcials no arriben al mínim requerit, llavors la nota final de teoria serà de 4.5.

Examen de recuperació. En cas que la nota de teoria no arriba al nivell adequat per aprovar, els alumnes poden realitzar un examen de recuperació, destinat a recuperar la part reprovada (1, 2 o ambdues) del procés d'avaluació contínua.

Nota de Problemes

L'objectiu dels problemes és que l'alumne s'entreni de manera continuada amb els continguts de l'assignatura i es familiaritzi amb l'aplicació dels conceptes teòrics. Com a prova d'aquest treball se sol·licita el lliurament d'un portafoli amb les solucions als problemes setmanals. Per obtenir una nota de problemes es requereix que l'alumne lliuri un mínim del 70% dels problemes. En cas contrari, la qualificació de problemes serà 0.

Nota d'avaluació pràctica

Les habilitats pràctiques dels estudiants s'avaluaran dues vegades durant el semestre. Cada alumne haurà de defensar, bé oralment o de manera escrita les solucions que ha aportat com a solució a problemes setmanals. Aquesta avaluació serà individual i es podrà centrarse en un subconjunt de problemes. Eventualment es pot plantejar problemes de més calat de forma no dirigida als quals s'haurà de presentar una solució computacional.

La qualificació general de l'avaluació pràctica és la mitjana de les dues avaluacions pràctiques.

En cas de no aprovar alguna de les avaluacions pràctiques, l'alumne podrà recuperar la part no aprovada, amb una nota màxima restringida a 7/10.

Notes importants

Sense perjudici d'altres mesures disciplinàries que s'estimin oportunes, i d'acord amb la normativa acadèmica vigent, les activitats d'avaluació seran suspeses amb zero (0) sempre que un alumne cometi alguna irregularitat acadèmica que pugui alterar aquesta avaluació (per exemple, plagi, còpia, cessió de còpia, ...). Les activitats d'avaluació qualificades d'aquesta forma i per aquest procediment no seran recuperables. Si es necessita aprovar alguna d'aquestes activitats d'avaluació per aprovar l'assignatura, aquesta assignatura es suspendrà directament, sense possibilitat de recuperar-la en el mateix curs.

En cas que l'alumne no faci cap lliurament de problemes, no participi en cap avaluació pràctica i en cap dels exàmens, la nota corresponent serà "no avaluable". En qualsevol 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 punts. A causa que el nombre d'estudiants amb aquesta distinció no pot excedir el 5% de l'nombre total d'estudiants inscrits al curs, se li atorga a qui tingui la qualificació final més alta. En cas d'empat, es tindran en compte els resultats dels exàmens parcials.

Més detalls sobre el procés d'avaluació es faran a classe durant les primeres setmanes del semestre. En cas de discrepància entre aquesta guia i la informació donada a classe, prevaldrà la informació proporcionada a classe.

Activitats d'avaluació

Títol Pes Hores ECTS Resultats d'aprenentatge
Lliurament de problemes 10% 5 0,2 3, 7, 8, 9
Proves escrites 50% 4 0,16 1, 2, 4, 5, 6
Proves practiques 40% 4 0,16 3, 7, 8

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

Llibres en línia:

Programari

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