Intel·ligència artificial avançada Codi:  M1.204    Crèdits:  6
Consulta de les dades generals   Descripció   Informació prèvia a la matrícula   Objectius i competències   Continguts   Consulta dels recursos d'aprenentatge de la UOC per a l'assignatura   Informació addicional sobre els recursos d'aprenentatge i eines de suport   Metodologia   Informació sobre l'avaluació a la UOC   Consulta del model d'avaluació   Avaluació continuada   Avaluació final   Feedback  
Aquest és el pla docent de l'assignatura per al primer semestre del curs 2024-2025. Podeu consultar si l'assignatura s'ofereix aquest semestre a l'espai del campus Més UOC / La universitat / Plans d'estudis). Un cop comenci la docència, heu de consultar-lo a l'aula. El pla docent pot estar subjecte a canvis.

La motivació principal d'aquesta assignatura és la de donar a conèixer l'aprenentatge automàtic i com es situa dins del camp de la Intel·ligència Artificial.

A Intel·ligència Artificial (Grau en Enginyeria Informàtica) es va donar una visió general de la Intel·ligència Artificial i es varen presentar alguns dels mètodes i tècniques anomenats clàssics, com son la resolució de problemes i cerca i els sistemes basats en el coneixement, també es varen veure tècniques més avançades com son les xarxes neurals i el raonament aproximat. A l'assignatura d'Aprenentatge computacional es van introduir els problemes de l'aprenentatge (supervisat i no supervisat) i sistemes multi agent. En aquesta assignatura s'aprofundirà en problemes avançats d'aprenentatge, introduint els sistemes d'extracció de característiques, els sistemes no lineals basats en Kernels, els processos d'optimització o les tècniques d'aprenentatge profund,  sempre des d'una vessant pràctica tocant exemples de problemes reals.

Amunt

És recomanable haver cursat les assignatures d'Intel·ligència Artificial i Aprenentatge Computacional del grau en Enginyeria Informàtica.  També és molt recomanable haver superat l'assignatura de prácitques de programació o equivalent en algun programa d'informàtica. Si vé l'assignatura no està pensada per a tenir una alta càrrega de programació, es donaran per sabuts els conceptes més bàsics d'algorísmica.

Amunt

Les competències generals del Màster que es posen de manifest en aquesta assignatura són

  1. Capacitat per a projectar, calcular i dissenyar productes, processos i instal·lacions en tots els àmbits de l'enginyeria en informàtica.
  2. Capacitat per al modelat matemàtic, càlcul i simulació en centres tecnològics i d'enginyeria d'empresa, particularment en tasques d'investigació, desenvolupament i innovació en tots els àmbits relacionats amb l'enginyeria en informàtica
  3. Capacitat per a l'aplicació dels coneixments adquirits i de solucionar problemes en entorns nous o poc coneguts dins de contextes més amplis i multidisciplinars, essent capaços d'integrar aquests coneixements.
  4. Posseir habilitats per  a l'aprenentatge continuat, autodirigit i autònom.
  5. Capacitat per a modelar, disenyar, definir l'arquitectura, implantar, gestionar, operar, administrar y mantenir aplicacions, xarxes, sistemes, serveis i continguts informàtics.
  6. Capacitat per assegurar, gestionar, auditar i certificar la qualitat dels desenvolupaments, processos, sistemes, serveis, aplicacions i productes informàtics.
  7. Capacitat per a comprendre y poder aplicar coneixements avançats de computació d'altes prestacions i mètodes numèrics o computacionals a problemes d'enginyeria.

Les competències específiques d'aquesta assingatura són:

  1. Entendre que és l'aprenentatge automàtic en el context de la Intel·ligència Artificial
  2. Distingir entre els diferents tipus i mètodes d'aprenentatge
  3. Conèixer els diferents mètodes d'extracció de característiques sobre un conjunt de dades donat
  4. Conèixer els diferents paradigmes de classificació i els sues punts forts i febles.
  5. Saber avaluar els algorismes de classificació i extreure'n conclusions de la seva eficiència, permetent seleccionar els més adients en cada cas.
  6. Aplicar les tècniques estudiades a un cas concret

Amunt

En aquesta assignatura els continguts s'han estructurat en dos mòduls.

En el primer mòdul es dona una visió general de l'aprenentatge dins de la Intel·ligència Artificial. En principi es fa la distinció entre algorismes dedicats a l'agrupació (clustering) i recomanació d'informació, els algorismes d'extracció i selecció de característiques, els algorismes de classificació, els mètodes d'optimització i les tècniques d'aprenentatge profund.  La distinció entre aprenentatge supervisat i no supervisat es inherent al capítols de clustering i classificació, tot i que es també present en el capítol d'extracció de característiques.

El segon mòdul, molt més breu,  està dedicat a l'aprenentatge del llenguatge Python. Es pretén introduir a l'estudiant en algunes (de les moltes) característiques que té aquest llenguatge, de cara a una millor comprensió dels mòduls de teoria, i poder realitzar pràctiques de forma autònoma.

A continuació es dóna el contingut  detallat de cadascun d'aquests mòduls.

1. Introducció a la Intel·ligència Artificial (IA)
1.1. Neurones i transistors
1.2. Breu història de
la IA
1.3. Àmbits d'aplicació


2. Recomanadors i agrupaments
2.1. Mètriques i mesures de similitud
2.1.1. Exemple d'aplicació
2.1.2. Distància euclidiana
2.1.3. Correlació de Pearson
2.2. Sistemes recomanadors
2.2.1. Conceptes generals
2.2.2. La biblioteca Surprise
2.2.3. Veïns més propers
2.2.4. Descomposició en valors singulars

2.2.5. Conclusions
2.3. Algorismes d'agrupament (clustering)
2.3.1. Exemple d'aplicació
2.3.2. Conceptes generals
2.3.3. Agrupament jeràrquic. Dendrogrames
2.3.4. k-mitjans (k-means)
2.3.5. c-mitjans difús (Fuzzy c-means)
2.3.6. Agrupament espectral (Spectral Clustering)
2.3.7. Recomanadors basats en models


3. Extracció i selecció d'atributs
3.1. Tècniques de factorització matricial
3.1.1. Descomposició en valors singulars (SVD)
3.1.2. Anàlisi de components principals (PCA)
3.1.3. Anàlisi de components independents (ICA)
3.1.4. Factorització de matrius no-negatives (NMF)
3.2. Discriminació de dades en classes
3.2.1. Anàlisi de discriminants lineals (LDA)
3.3. Visualització de dades mutidimensionals
3.3.1. Escalament multidimensional (MDS)


4. Classificació
4.1. Introducció
4.1.1. Categorització de textos
4.1.2. Aprenentatge automàtic per classificació
4.1.3. Tipologia d'algorismes per classificació
4.2. Mètodes basats en models probabilístics
4.2.1. Naïve Bayes
4.2.2. Màxima Entropia
4.3. Mètodes basats en distàncies
4.3.1. KNN
4.3.2. Classificador lineal basat en distàncies
4.3.3. Clustering dins de classes
4.4. Mètodes basats en regles
4.4.1. Arbres de decisió
4.4.2. AdaBoost
4.5. Classificadors lineals i mètodes basats en Kernels
4.5.1. Classificador lineal basat en producte escalar
4.5.2. Classificador lineal amb Kernel
4.5.3. Kernels per a tractament de textos
4.5.4. Màquines de vectors de suport
4.6. Protocols de test
4.6.1. Protocols de validació
4.6.2. Mesures d'avaluació
4.6.3. Tests estadístics
4.6.4. Comparativa de classificadors


5. Optimització
5.1. Introducció
5.1.1. Tipologia dels mètodes d'optimització
5.1.2. Característiques dels metaheurístics d'optimització
5.2. Optimització mitjançant multiplicadors de Lagrange
5.2.1. Descripció del mètode
5.2.2. Exemple d'aplicació
5.2.3. Anàlisi del mètode
5.3. Descens de gradients
5.3.1. Presentació de la idea
5.3.2. Exemple d'aplicació
5.3.3. Qüestions addicionals
5.4. Salt de valls

5.4.1. Descripció del mètode

5.4.2. Exemple d'aplicació

5.4.3. Anàlisi del mètode 
5.5. Algorismes genètics
5.5.1. Descripció del mètode
5.5.2. Ampliacions i millores
5.5.3. Exemples d'aplicació
5.5.4. Recopilació d'estadístiques
5.5.5. Problemes combinatoris

5.5.6. Problemes amb restriccions

5.5.7. Anàlisi del mètode
5.6. Colònies de formigues
5.6.1. Descripció del mètode
5.6.2. Exemple d'aplicació
5.6.3. Anàlisi del mètode
5.6.4. Codi font en Python
5.7. Optimització amb eixams de partícules
5.7.1. Descripció del mètode
5.7.2. Exemple d'aplicació
5.7.3. Anàlisi del mètode
5.7.4. Codi font en Python
5.8. Cerca tabú.
5.8.1. Descripció del mètode
5.8.2. Exemple d'aplicació
5.8.3. Anàlisi del mètode
5.8.4. Codi font en Python

 

6. Aprenentatge profund
6.1. Introducció

6.1.1. Assoliments recents

6.1.2. Causes

6.1.3. Arquitectures

6.1.4. Biblioteques

6.2. Xarxes neuronals

6.2.1. Components d'una xarxa neuronal

6.2.2. Funcions d'activació

6.2.3. Entrenament d'una xarxa neuronal

6.2.4. Problemes d'aprenentatge

6.2.5. Algunes solucions

6.2.6. Aprenentatge profund

6.3. Perceptró multicapa

6.3.1. Idea

6.3.2. Exemple d'MLP

6.4. Classificació d'imatges amb xarxes neuronals convolucionals (CNN)

6.4.1. Implementació de les CNN a Python utilitzant les llibreries Keras

6.5. Xarxes recurrents

6.5.1. Idea

6.5.2. Programació

6.6. Altres arquitectures

6.6.1. Autocodificadors

6.6.2. Aprenentatge per reforç

6.6.3. Sistemes generadors

 

7. Annex: conceptes bàsics d'estadística

Amunt

Material Suport
Classification Framework with Naïve Bayes Audiovisual
Support Vector Machines using Python and scikit-learn Audiovisual
User-defined kernels for SVMs using scikit-learns Audiovisual
Data Clustering with k-Means Audiovisual
Distances, similarities and normalization of data. Audiovisual
Optimization with simulated annealing and genetic algorithms Audiovisual
Introducción a la programación en Python Audiovisual
Inteligencia artificial en Python Audiovisual
Principal component Analysis (PCA) Audiovisual
La Librería matplotlib en Python Audiovisual
MovieLens-data Web
Codi font. Exemples materials Web
Intel·ligència artificial avançada PDF
Xarxes neuronals: fonaments i intuïcions (Notebook) Codi font
Neuronal networks examples (Notebook) Codi font
Python: introducció al llenguatge de programació Audiovisual
Ús de Google Colaboratory per a Machine Learning Audiovisual

Amunt

L'assignatura es compon dels mòduls didàctics en suport paper, que contenen exercicis d'autoavaluació amb solucions i activitats diverses.

Aquest material es complementarà amb aquell que els consultors posin a l'abast dels estudiants a l'aula de l'assignatura.

Es preveu també la creació d'una aula de laboratori per a resoldre els dubtes corresponents al llenguatge Python

Amunt

Pel que respecta a l'estudi dels materials, convé remarcar que es considera fonamental la realització dels exercicis que es plantegen a cada mòdul. Només així s'aconseguirà una bona assimilació dels conceptes i mètodes presentats en el mòdul. Durant el curs es proposen recursos complementaris en anglès, de manera que cal disposar de coneixements suficients d'anglès a nivell de lectura i comprensió.

La major part dels conceptes explicats tenen la seva implementació en codi Python. Es recomana intentar primer resoldre el problema i després comprovar el resultat amb la solució proposada. Els codis estan pensats per a entendre millor el que s'explica a teoria, i si s'escau poder fer visualitzacions amb els exemples pràctics que proposem (trets de casos reals).

Per això recomanem, per a cada exercici d'autoavaluació:

  • Resoldre'l.
  • Comparar la solució amb la del solucionari (poden ser diferents).
  • Si teniu dubtes sobre la correcció de la vostra solució, adreceu-vos al professor consultor.

Es recomana també, per a cada tema:

  • Llegir les explicacions contingudes en cada apartat, fent especial èmfasi en els exercicis resolts que es donen com a exemples en Python.
  • Si sorgeixen dubtes posar-se en contacte amb el consultor a través del fòrum de l'assignatura intentant ser el màxim de concrets possible.
  • Un cop es considera que s'han assimilat els coneixements introduïts, intentar resoldre els exercicis d'autoavaluació corresponents a aquell apartat.
  • La participació en les activitats proposades a l'aula.


Temporalització i itineraris formatius

Accedint al calendari, l'estudiant disposarà d'una distribució orientativa del temps que es proposa per a l'estudi de cada mòdul. A més, el calendari inclou les dates clau del semestre, com ara la publicació i el lliurament de les Proves d'Avaluació Continuada (PAC) i de la pràctica. Les dates de lliurament de les PAC i de la pràctica s'han de respectar estrictament. Per tant, és molt recomanable que se segueixi la temporització proposada i s'intentin respectar les dates indicades per a l'estudi de cada mòdul didàctic.

L'estudiant podrà accedir als enunciats de les PAC i de la pràctica en l'espai de Planificació de l'Aula Virtual, fent clic en la data del calendari assenyalada com a publicació de l'activitat en qüestió.

Amunt

El procés d'avaluació es fonamenta en el treball personal de l'estudiant i pressuposa l'autenticitat de l'autoria i l'originalitat dels exercicis realitzats.

La manca d'autenticitat en l'autoria o d'originalitat de les proves d'avaluació; la còpia o el plagi; l'intent fraudulent d'obtenir un resultat acadèmic millor; la col·laboració, l'encobriment o l'afavoriment de la còpia, o la utilització de material o dispositius no autoritzats durant l'avaluació, entre d'altres, són conductes irregulars que poden tenir conseqüències acadèmiques i disciplinàries greus.

D'una banda, si es detecta alguna d'aquestes conductes irregulars, pot comportar el suspens (D/0) en les activitats avaluables que es defineixin en el pla docent - incloses les proves finals - o en la qualificació final de l'assignatura, sigui perquè s'han utilitzat materials o dispositius no autoritzats durant les proves, com ara xarxes socials o cercadors d'informació a internet, perquè s'han copiat fragments de text d'una font externa (internet, apunts, llibres, articles, treballs o proves d'altres estudiants, etc.) sense la citació corresponent, o perquè s'ha practicat qualsevol altra conducta irregular.

De l'altra, i d'acord amb les normatives acadèmiques, les conductes irregulars en l'avaluació, a més de comportar el suspens de l'assignatura, poden donar lloc a la incoació d'un procediment disciplinari i a l'aplicació, si escau, de la sanció que correspongui.

La UOC es reserva la potestat de sol·licitar a l'estudiant que s'identifiqui o que acrediti l'autoria del seu treball al llarg de tot el procés d'avaluació pels mitjans que estableixi la Universitat (síncrons o asíncrons). A aquests efectes, la UOC pot exigir a l'estudiant l'ús d'un micròfon, una càmera o altres eines durant l'avaluació i que s'asseguri que funcionen correctament.

La verificació dels coneixements per garantir l'autoria de la prova no implicarà en cap cas una segona avaluació.

Amunt

Aquesta assignatura només es pot superar a partir de l'avaluació contínua (AC), nota que es combina amb una nota de pràctiques (Pr) per a obtenir la nota final de l'assignatura. No es preveu fer cap prova d'avaluació final. La fórmula d'acreditació de l'assignatura és la següent: AC + Pr.


Ponderació de les qualificacions

Opció per superar l'assignatura: AC + Pr

Nota final d'assignatura = Final Continuada (FC)= AC+Pr

AC = 60%

Pr = 40%

Notes mínimes:

· Pr = 4

· AC = 4

En cas de no assolir la nota mínima a la Pr, la nota obtinguda en la fórmula correspon a l'obtinguda a la Pr, o el que indiqui el model d'avaluació.

Amunt

La nota final de l'assignatura (FC) es compon de tres proves d'avaluació continuada (PACs) i d'una pràctica.

La nota final s'obté com el 60% de la qualificació obtinguda de l'avaluació continuada (AC) i el 40% de la qualificació de la Pràctica. Perquè es calculi aquesta nota (FC), hi ha dos requisits que s'han de complir:

  • Nota mínima d'AC de 4.0
  • Nota mínima de Pràctica de 4.0

La qualificació d'AC es calcularà com la mitjana de la qualificacions obtingudes per a cadascuna de les PACs. Qualsevol PAC no lliurada es comptabilitzarà amb una qualificació de 0 per calcular la qualificació d'AC.

Es permetrà el lliurament de les PACs/Pràctica amb un màxim de 7 dies de retard, sempre previ a la publicació de la solució, però amb una penalització d'un punt per dia de retard en el lliurament. En aquests casos, caldrà també avisar al professor col·laborador que heu fet el lliurament perquè en tingui constància. Aquesta mesura és per donar-vos certa flexibilitat però sent justos amb tots els estudiants que respecteu els terminis fixats.

El fet de lliurar com a mínim la meitat de PACs (2 o més) implica que obtindreu una nota final d'avaluació continuada diferent de No Presentat.

A la pràctica es treballen els continguts dels capítols 2-6, fonamentalment dins del camp de l'aprenentatge. L'objectiu d'aquesta pràctica és facilitar l'aprenentatge dels conceptes que s'expliquen en aquests mòduls de l'assignatura. La realització de la pràctica suposarà una càrrega de treball més elevada que la necessària per a una PAC, pel que es recomana començar-el dia de publicació de la mateixa.

Els enunciats de les PAC i de la pràctica es publicaran a través del calendari de l'espai de Planificació de l'aula virtual de l'assignatura, a les dates que apareixen destacades. Les PAC solucionades s'han de lliurar al registre de lliurament d'activitats de l'espai d'Avaluació de l'aula. Un cop transcorregut el temps dedicat a la correcció de cada activitat, es publicarà, igualment en el calendari i en la data assenyalada, una proposta de solució de cadascuna de les proves.

El seguiment correcte de l'assignatura us compromet a realitzar les activitats proposades de manera individual i segons les indicacions que pauta aquest Pla Docent. En cas que no sigui així, les activitats s'avaluaran amb una D.

D'altra banda, i sempre a criteri dels Estudis, l'incompliment d'aquest compromís pot suposar que no se us permeti superar qualsevol altra assignatura mitjançant avaluació continuada ni en el semestre en curs ni en els següents.

Cal indicar explícitament quines fonts s'han utilitzat en la preparació del lliurament, aportant informació per localitzar el recurs: URL, dades bibliogràfiques, etcètera.

Amunt

Aquesta assignatura només es pot superar a partir de l'avaluació continuada.

Amunt

Tal i com s'ha indicat en la metodologia de l'assignatura, el consultor us guiarà i orientarà a través del Tauler de l'aula per a què pugueu fer un bon seguiment de l'assignatura. També respondrà els dubtes que vagin sortint en el Fòrum de l'aula així com les consultes i comentaris enviats a la seva bústia personal.

El consultor també farà un seguiment personalitzat de l'avaluació contínua, revisarà totes les PAC i pràctiques lliurades i  comentarà de forma qualitativa a nivell grupal i/o individual la resolució. Aquests comentaris us ajudaran a progressar en el vostre aprenentatge i adquirir el conjunt de les competències.

Amunt