L'assignatura es divideix en tres parts conceptuals, corresponents a tres tipus de problemes fonamentals: l'aprenentatge supervisat (regressió i classificació), no supervisat (clustering) i per reforç. Les tècniques de modelat que s'estudien inclouen els models probabilistics, els arbres de decisió, les xarxes neuronals artificials i les màquines de vectors suport. Com objectiu paral.el està la familiarització amb python, un potent entorn de computació basat en programari lliure, així com aprendre a dissenyar solucions pràctiques en problemes difícils de resoldre de manera directa.
Professorat
Responsable
- Javier Béjar Alonso ( bejar@cs.upc.edu )
Altres
- Joan Llop Palao ( joan.llop@upc.edu )
Hores setmanals
Teoria
2
Problemes
1
Laboratori
1
Aprenentatge dirigit
0
Aprenentatge autònom
6
Competències
Comunicació eficaç oral i escrita
- G4.3 - Comunicar-se de manera clara i eficient en presentacions orals i escrites sobre temes complexos, adaptant-se a la situació, al tipus de públic i als objectius de la comunicació, utilitzant les estratègies i els mitjans adequats. Analitzar, valorar i respondre adequadament a les preguntes de l'auditori.
Especialitat computació
- CCO2.1 - Demostrar coneixement dels fonaments, dels paradigmes i de les tècniques pròpies dels sistemes intel·ligents, i analitzar, dissenyar i construir sistemes, serveis i aplicacions informàtiques que utilitzin aquestes tècniques en qualsevol àmbit d'aplicació.
- CCO2.2 - Capacitat per a adquirir, obtenir, formalitzar i representar el coneixement humà d'una forma computable per a la resolució de problemes mitjançant un sistema informàtic en qualsevol àmbit d'aplicació, particularment en els que estan relacionats amb aspectes de computació, percepció i actuació en ambients o entorns intel·ligents.
- CCO2.4 - Demostrar coneixement i desenvolupar tècniques d'aprenentatge computacional; dissenyar i implementar aplicacions i sistemes que les utilitzin, incloent les que es dediquen a l'extracció automàtica d'informació i coneixement a partir de grans volums de dades.
Objectius
-
Formular el problema de l'aprenentatge automàtic a partir de dades, i conèixer els tipus de tasques que es poden donar
Competències relacionades: CCO2.1, CCO2.2, -
Organitzar el flux de resolució d'un problema de l'aprenentatge automàtic, analitzant les possibles opcions i elegint les més adequades al problema
Competències relacionades: CCO2.1, CCO2.4, -
Decidir, defensar i criticar una solució per a un problema d'aprenentatge automàtic, argumentant els punts forts i febles de l'apropament
Competències relacionades: G4.3, CCO2.1, CCO2.4, -
Contrastar, jutjar i interpretar un conjunt de resultats amb posterioritat a una hipòtesi sobre un problema de l'aprenentatge automàtic
Competències relacionades: CCO2.1, CCO2.4, -
Conèixer i saber aplicar tècniques de mínims quadrats per la resolució de problemes d'aprenentatge supervisats
Competències relacionades: CCO2.4, -
Conèixer i saber aplicar tècniques de xarxes neuronals mono i multicapa per la resolució de problemes d'aprenentatge supervisat
Competències relacionades: CCO2.2, CCO2.4, -
Conèixer i saber aplicar tècniques de màquines de vectors suport per la resolució de problemes d'aprenentatge supervisats
Competències relacionades: CCO2.4, -
Conèixer i formular diferents eines teòriques per l'anàlisi, estudi i descripció de sistemes d'aprenentatge automàtic
Competències relacionades: CCO2.4, -
Conèixer i saber aplicar les tècniques bàsiques per la resolució de problemes d'aprenentatge no supervisat
Competències relacionades: CCO2.1, CCO2.2, CCO2.4, -
Conèixer i saber aplicar les tècniques bàsiques per la resolució de problemes d'aprenentatge per reforç
Competències relacionades: CCO2.1, CCO2.2, CCO2.4, -
Conèixer les tècniques modernes més importants de l'aprenentatge automàtic i de l'aprenentatge computacional
Competències relacionades: CCO2.1,
Continguts
-
Introducció a l'Aprenentatge Automàtic
Informació general i conceptes bàsics. Descripció i plantejament dels problemes atacats per l'aprenentatge automàtic. Aprenentatge supervisat (regressió i classificació), no supervisat (clustering) i per reforç. Exemples moderns d'aplicació. -
Teoria de l'Aprenentatge automàtic supervisat
Plantejament del problema de l'Aprenentatge Automàtic supervisat. Problemes de classificació i de regressió. Compromís biaix-variància. Sobreajust i infrajust. Minimitzación empírica del risc/Log versemblança. Selecció de models i selecció de les variables del model. -
Visualització i reducció de dimensionalitat
La maledicció de la dimensionalitat. Métodes de selecció de variables i de transformació de dades. Métodes de reducció de dimensions lineals (Anàlisi de components principals). Métodes de reducción de dimensions no lineals (LLE, t-SNE) -
Aprenentatge automàtic supervisat (I): Mètodes lineals
Mètodes lineals d'aprenentatge per problemes de regressió i classificació. Regressió lineal per mínims quadrats i regularització. Models lineals probabilistics i discriminats per la classificació: Anàlisi discriminant (LDA QDA), models bayesians, regressió logística. Interpretación de models lineals. -
Aprenentatge automàtic supervisat (II): Métodes no lineals
Models no lineals per a la regressió i la classificació. Models no paramétrics (k-veïns propers). Xarxes neuronals i perceptró multi capa, aprenentatge profund. Màquines de suport vectorial i kernels. Àrbres de decisió i combinació de classificadors. Interpretación de modelos no lineales. -
Aprenentatge automàtic no supervisat
Definició i plantejament de l'aprenentatge automàtic no supervisat. Algorismes de clustering: algorisme E-M i algorisme k-means. -
Aprenentatge per reforç
Descripció de l'aprenentatge per reforç. Processos de Markov. Equacions de Bellman. Valors i mètodes de diferències temporals. Aprenentatge Q i algorisme Sarsa. Aplicacions.
Activitats
Activitat Acte avaluatiu
Resolució dels problemes del tema 2 de l'assignatura
El professor planteja fins a 3 problemes relacionats amb el tema en curs i els alumnes se'ls preparen. A les classes de problemes, el professor resol dificultats, dóna orientacions cap a la solució total dels problemes i resol eventuals dubtes generals. Els alumnes treballen de nou els problemes i els entreguen.Objectius: 3 1 8
Setmana: 2
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Desenvolupament del tema 3 de l'assignatura
L'alumne rep les explicacions sobre el problema de l'Aprenentatge Automàtic supervisat, les diferències entre problemes de classificació i de regressió, el compromís biaix-variància i les nocions de sobreajust i infrajust i resta d'eines teòriques per selecció de models.Objectius: 1 8
Continguts:
Teoria
6h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Resolució dels problemes del tema 3 de l'assignatura
El professor planteja fins a 3 problemes relacionats amb el tema en curs i els alumnes se'ls preparen. A les classes de problemes, el professor resol dificultats, dona orientacions i resol dubtes. Els alumnes treballen de nou els problemes i els entreguen.Objectius: 3 4 5 6
Setmana: 5
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Desenvolupament del tema 4 de l'assignatura
L'alumne rep explicaciones sobre els fonaments dels algorismes de separació per hiperplans: l'algorisme del Perceptró i la separació amb marge màxim. Se l'introdueix a les funcions de kernel i les màquines de vectors suport per classificació. Se l'introdueix a les xarxes neuronals per classificació: perceptró multicapa i xarxa de funcions de base radial.Objectius: 11 1 6 7
Continguts:
Teoria
5h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Resolució dels problemes del tema 4 de l'assignatura
El professor planteja fins a 3 problemes relacionats amb el tema en curs i els alumnes se'ls preparen. A les classes de problemes, el professor resol dificultats, dona orientacions i resol dubtes. Els alumnes treballen de nou els problemes i els entreguen.Objectius: 3 4 2 6
Setmana: 8
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Desenvolupament del tema 5 de l'assignatura
L'alumne rep les explicacions sobre els mètodes per problemes de regressió: bàsicament mínims quadrats (métodes analítics i iteratius). Se l'introdueixen les funcions d'error per regressió i com adaptar les xarxes neuronals multicapa i la màquina de vectors suport en aquest cas.Objectius: 1 5 6 7
Continguts:
Teoria
5h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Resolució dels problemes del tema 5 de l'assignatura
El professor planteja fins a 3 problemes relacionats amb el tema en curs i els alumnes se'ls preparen. A les classes de problemes, el professor resol dificultats, dona orientacions i resol dubtes. Els alumnes treballen de nou els problemes i els entreguen.Objectius: 3 4 7
Setmana: 10
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Desenvolupament del tema 6 de l'assignatura
L'alumne rep les explicacions de les tècniques bàsiques d'ensembles: Bagging, boosting i ECOC, i les veu a la llum del compromís biaix/variància.Objectius: 2 11 8
Continguts:
Teoria
4h
Problemes
0h
Laboratori
2h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Resolució dels problemes del tema 6 de l'assignatura
El professor planteja fins a 3 problemes relacionats amb el tema en curs i els alumnes se'ls preparen. A les classes de problemes, el professor resol dificultats, dona orientacions i resol dubtes. Els alumnes treballen de nou els problemes i els entreguen.Objectius: 3 4 2 9 10
Setmana: 12
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Desenvolupament del tema 7 de l'assignatura
L'alumne rep les explicacions sobre els fonaments de l'aprenentatge per reforç i les seves aplicacions; se l'introdueix breument a l'aprenentatge transductiu.Objectius: 11 10
Continguts:
Teoria
3h
Problemes
0h
Laboratori
3h
Aprenentatge dirigit
0h
Aprenentatge autònom
4h
Resolució dels problemes del tema 7 de l'assignatura
El professor planteja fins a 3 problemes relacionats amb el tema en curs i els alumnes se'ls preparen. A les classes de problemes, el professor resol dificultats, dona orientacions i resol dubtes. Els alumnes treballen de nou els problemes i els entreguen.Objectius: 3 4 11
Setmana: 14
Teoria
0h
Problemes
0h
Laboratori
0h
Aprenentatge dirigit
0h
Aprenentatge autònom
0h
Metodologia docent
El temari s'exposa a les classes de teoria de forma molt motivada (per què s'explica) i motivadora (per què és important conèixer-lo) complementat amb molts exemples.Les classes de teoria introdueixen tot els coneixements, les tècniques, conceptes i resultats necessaris per assolir un nivell ben fonamentat i entenidor. Aquests conceptes es posen en pràctica en les classes de problemes i en les de laboratori.
Amb anterioritat a cada classe de problemes, el professor planteja problemes relacionats amb el tema en curs i els alumnes tenen temps per poder-se'ls preparar a les hores d'AA de treball personal. A les classes de problemes (d'una hora de duració), la classe es dividirà entre varis grupets en funció del nombre d'alumnes. El professor resol dificultats, dóna orientacions i eventualment resol dubtes, donant realimentació i fent que els alumnes avancin en la resolució. S'espera usar estratègies d'aprenentatge col·laboratiu on un o més alumnes prenen la responsabilitat de liderar el procés de resolució dels problemes, argumentant-se entre tots. Els alumnes treballen de nou els problemes i els entreguen. Aquestes entregues de problemes són continuades, uniformes en càrrega i avaluades. També s'avalua mitjançant aquesta estratègia la competència genèrica de comunicació eficaç.
A les classes de laboratori es posen en pràctica els conceptes treballats a les classes de teoria i alguns dels problemes ja treballats a les classes de problemes, usant un entorn de programació avançat i molt adequat a la filosofia de l'assignatura, com és el llenguatge python.
Les dues hores de classes de teoria es fan setmanalment. Les dues hores de classes de laboratori es fan quinzenalment. L'hora de problemes es fa setmanalment.
Hi ha un treball pràctic avaluable, que treballa un problema real a elegir pel propi estudiant i que recull i integra els coneixements i les competències de tot el curs. També s'avalua mitjançant el treball pràctic la competència genèrica de comunicació eficaç.
Mètode d'avaluació
L'assignatura pot aprovar-se mitjançant l'avaluació continuada, de la següent manera:NProbs = Nota mitjana dels problemes realitzats durant el curs
NPract = Nota del treball pràctic
NCom = Nota de la competència transversal
NF1 = 50% NProbs + 40% NPract + 10% NPart
L'assignatura pot també aprovar-se mitjançant un examen final, de la següent manera:
NExF = Nota obtinguda a l'examen final (en periode d'exàmens)
NF2 = 40% NExF + 20% NProbs + 30% NPract + 10% NCom
en qualsevol cas, la nota final és el màxim de les dues:
NOTA FINAL = max(NF1, NF2)
Bibliografia
Bàsic
-
Pattern recognition and machine learning
- Bishop, C.M,
Springer,
2006.
ISBN: 0387310738
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991003157379706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Mathematics for machine learning
- Deisenroth, M.P.; Faisal, A.A.; Ong, Ch. S,
Cambridge University Press,
2020.
ISBN: 9781108470049
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004193259706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
The elements of statistical learning: data mining, inference, and prediction
- Hastie, T.; Tibshirani, R.; Friedman, J,
Springer,
2009.
ISBN: 0387952845
https://link-springer-com.recursos.biblioteca.upc.edu/book/10.1007/978-0-387-84858-7 -
Interpretable machine learning: a guide for making black box models explainable
- Molnar, C.,
Christoph Molnar,
2022.
ISBN: 9798411463330
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991005074275306711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Introduction to machine learning
- Alpaydin, E,
The MIT Press,
2020.
ISBN: 9780262043793
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004193529706711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Complementari
-
Pattern classification
- Duda, R.O.; Hart, P.E.; Stork, D.G,
John Wiley & Sons,
2001.
ISBN: 0471056693
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991002131619706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Neural networks for pattern recognition
- Bishop, C.M,
Clarendon Press,
1995.
ISBN: 0198538642
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991001363259706711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Hands-on machine learning with Scikit-Learn, Keras, and TensorFlow: concepts, tools, and techniques to build intelligent systems
- Géron, A,
O'Reilly,
2023.
ISBN: 9781098125974
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991005067276006711&context=L&vid=34CSUC_UPC:VU1&lang=ca -
Probabilistic machine learning : an introduction
- Murphy, Kevin P,
The MIT Press,
[2022].
ISBN: 9780262046824
https://discovery.upc.edu/discovery/fulldisplay?docid=alma991004949216206711&context=L&vid=34CSUC_UPC:VU1&lang=ca
Web links
- Pagina oficial de la llibreria de machine learning Scikit learn https://scikit-learn.org/stable/index.html
- Curs de Machine Learning amb scikit learn de la Universitat de Columbia https://www.cs.columbia.edu/~amueller/comsw4995s20
- Web oficial del llenguatge de programació python https://www.python.org/
Capacitats prèvies
Nocions elementals de probabilitat i estadística.Nocions bàsiques d'algebra lineal i d'anàlisi real
Bon nivell de programació en un llenguatge d'alt nivell