Salta el contingut

Mòdul 5072 — Sistemes d'Aprenentatge Automàtic

Proposta didàctica

El mòdul 5072 - Sistemes d'Aprenentatge Automàtic (66 hores) introdueix l'alumnat en el cor de la intel·ligència artificial moderna: la capacitat que tenen les màquines d'aprendre a partir de dades sense ser explícitament programades per a cada tasca. En un món on GPT-4o genera text indistingible de l'humà, AlphaFold prediu estructures proteiques d'importància mèdica i els sistemes de recomanació de Netflix o Spotify influencien milions de decisions diàries, entendre els mecanismes d'aprenentatge automàtic és una competència professional imprescindible.

El mòdul cobreix des dels fonaments filosòfics —la distinció entre IA forta i feble— fins a la implementació pràctica de xarxes neuronals profundes amb PyTorch, passant per algoritmes clàssics de scikit-learn, tècniques d'avaluació rigoroses i eines MLOps de producció. L'enfocament és eminentment pràctic: cada concepte teòric s'il·lustra amb codi Python funcional i exemples del món professional real.

Resultats d'Aprenentatge coberts:

  • RA1 — Caracteritza la IA forta i feble determinant usos i possibilitats
  • RA2 — Determina tècniques i eines de ML testejant l'aplicabilitat
  • RA3 — Aplica algoritmes a l'aprenentatge supervisat optimitzant el model
  • RA4 — Aplica tècniques d'aprenentatge no supervisat
  • RA5 — Aplica models computacionals de xarxes neuronals
  • RA6 — Valora la qualitat dels resultats amb ML

Criteris d'avaluació

RA1 — IA Forta i Feble

  • CA1.1 Determina les especificitats d'IA forta i feble
  • CA1.2 Estableix les barreres entre IA i Machine Learning
  • CA1.3 Diferencia àmbits d'aplicació de la IA forta i feble
  • CA1.4 Identifica els problemes a què pot fer front la IA feble
  • CA1.5 Identifica els problemes a què pot fer front la IA forta
  • CA1.6 Reconeix els avantatges que proporciona cada tipus

RA2 — Tècniques i Eines de ML

  • CA2.1 Identifica els principis de sistemes d'aprenentatge automàtic
  • CA2.2 Determina tipus i usos de sistemes de ML
  • CA2.3 Determina tècniques i eines de ML
  • CA2.4 Troba diferències entre els tipus de ML
  • CA2.5 Associa tècniques i eines a cada tipus de ML

RA3 — Aprenentatge Supervisat

  • CA3.1 Proporciona les dades etiquetades al model
  • CA3.2 Selecciona les dades d'entrada (entrenament, validació, test)
  • CA3.3 Utilitza les dades a la fase d'entrenament
  • CA3.4 Avalua el model amb les dades de validació
  • CA3.5 Ajusta les dades d'aprenentatge supervisat
  • CA3.6 Implementa el model per fer prediccions
  • CA3.7 Detecta i minimitza els riscos associats al model
  • CA3.8 Optimitza el model validant dades de prova

RA4 — Aprenentatge No Supervisat

  • CA4.1 Caracteritza els tipus de problemes de l'aprenentatge no supervisat
  • CA4.2 Caracteritza les tècniques d'aprenentatge no supervisat
  • CA4.3 Avalua algoritmes d'aprenentatge no supervisat
  • CA4.4 Optimitza el model no supervisat

RA5 — Xarxes Neuronals i Deep Learning

  • CA5.1 Avalua els models neuronals per triar el més adequat
  • CA5.2 Selecciona tècniques de deep learning
  • CA5.3 Compara xarxes neuronals artificials amb altres mètodes
  • CA5.4 Reconeix una xarxa de neurones entrenada

RA6 — Avaluació de la Qualitat

  • CA6.1 Valora la conveniència dels algoritmes proposats
  • CA6.2 Avalua l'aplicació pràctica dels principis de sistemes intel·ligents
  • CA6.3 Integra principis fonamentals de la computació
  • CA6.4 Desenvolupa sistemes i aplicacions que utilitzen tècniques intel·ligents
  • CA6.5 Desenvolupa tècniques d'aprenentatge computacional per extreure informació de grans volums de dades

Continguts de referència

  1. Conceptes fonamentals d'IA: forta, feble, superintel·ligència
  2. Panorama del Machine Learning: evolució, estat de l'art 2025
  3. Ecosistema Python per a ML: scikit-learn, PyTorch, TensorFlow, XGBoost
  4. Aprenentatge supervisat: regressió, classificació, arbres, SVM
  5. Divisió de dades i validació creuada
  6. Overfitting, underfitting i regularització
  7. Optimització d'hiperparàmetres
  8. Feature engineering i preprocés de dades
  9. Aprenentatge no supervisat: clustering i reducció de dimensionalitat
  10. Detecció d'anomalies i sistemes de recomanació
  11. Xarxes neuronals artificials: perceptró, MLP, backpropagation
  12. Arquitectures deep learning: CNN, RNN, LSTM, Transformer
  13. Transfer learning i fine-tuning
  14. Mètriques d'avaluació per classificació, regressió i generació
  15. MLOps: monitorització, data drift i eines de gestió de models

Questionari inicial

Questionari inicial — Mòdul 5072

Respon aquestes preguntes per avaluar els teus coneixements previs. No és necessari encertar-les totes; serveixen per identificar on cal posar més atenció durant el mòdul.

  1. Quin és el principal element que distingeix el Machine Learning de la programació tradicional?
  2. Pots donar un exemple real d'IA feble (Narrow AI) que usis al dia a dia?
  3. Quin tipus d'aprenentatge es fa servir quan tenim dades etiquetades?
  4. Quina és la diferència entre un conjunt d'entrenament i un conjunt de test?
  5. Que significa que un model pateix d'overfitting?
  6. Quina biblioteca Python és el referent per a ML clàssic (no deep learning)?
  7. Quin framework domina la recerca en deep learning el 2025?
  8. Que és una neurona artificial i en quin concepte biològic s'inspira?
  9. Quin algoritme de clustering assigna cada punt al centroide més proper?
  10. Que significa AUC-ROC i per a quin tipus de problema s'utilitza?
  11. En quin context s'utilitza la reducció de dimensionalitat amb PCA?
  12. Quina diferència hi ha entre una CNN i una RNN en termes de tipus de dades que processen?
  13. Que és el transfer learning i per quin motiu és tan important a la pràctica?
  14. Que és la regularització L2 (Ridge) i com ajuda a evitar l'overfitting?
  15. Quina és la funció d'activació més usada a les capes ocultes de les xarxes neuronals modernes?
  16. Que és el gradient descent i quin paper té en l'entrenament de models?
  17. Pots explicar intuïtivament com funciona un arbre de decisió?
  18. Que és un hiperparàmetre? Posa'n dos exemples concrets.
  19. Que és el concept drift en un model en producció?
  20. Si haguessis de construir un sistema per detectar frau bancari, quin tipus d'aprenentatge escolliríes i per quin motiu?

Programació d'aula

Sessió Continguts Activitats CAs Treballats
1 (3h) Presentació del mòdul. IA forta vs feble. Panorama ML 2025 Debat: casos d'ús reals. Test inicial CA1.1, CA1.3
2 (3h) IA feble: GPT-4, AlphaFold, sistemes de recomanació Anàlisi de casos reals. Discussió AGI CA1.2, CA1.4, CA1.6
3 (3h) Tests de la IA: Turing, MMLU. Barreres IA-ML Miniactivitat: comparar benchmarks actuals CA1.5, CA1.6
4 (3h) Ecosistema Python ML: scikit-learn, PyTorch. Tipus de ML Instal·lació entorn. Primer notebook CA2.1, CA2.3
5 (3h) Supervisat vs no supervisat vs reforç Exercici: classificar problemes per tipus de ML CA2.2, CA2.4, CA2.5
6 (3h) Pipeline supervisat: preprocés, entrenament, avaluació AC5072/01: pipeline complet amb iris dataset CA3.1, CA3.2, CA3.3
7 (3h) Regressió lineal i logística. Matemàtica bàsica Exercici: predicció de preus de cases CA3.3, CA3.6
8 (3h) Arbres de decisió, Random Forest, Gradient Boosting AC5072/02: classificació de malalties cardíaques CA3.3, CA3.5
9 (3h) SVM, KNN. Comparativa d'algoritmes supervisats Miniactivitat: benchmark de classificadors CA2.5, CA3.4
10 (3h) Overfitting i underfitting. Cross-validation Diagnòstic visual. Corbes d'aprenentatge CA3.7, CA3.8
11 (3h) Feature engineering: escalat, encoding, imputació Preprocés complet d'un dataset brut CA3.5, CA6.3
12 (3h) Optimització d'hiperparàmetres: GridSearch, Optuna AC5072/03: optimització model fraude bancari CA3.8, CA6.1
13 (3h) Pràctica PR5072/01: ML amb scikit-learn i Docker Sessió pràctica guiada (part 1) CA3.1CA3.8
14 (3h) Pràctica PR5072/01: finalització i lliurament Sessió pràctica guiada (part 2) CA3.6, CA6.4
15 (3h) Clustering: K-Means, DBSCAN, Hierarchical AC5072/04: segmentació de clients CA4.1, CA4.2
16 (3h) Reducció de dimensionalitat: PCA, t-SNE, UMAP Visualització de datasets d'alta dimensió CA4.2, CA4.3
17 (3h) Detecció d'anomalies. Self-supervised learning Cas: detecció de frau no supervisada CA4.3, CA4.4
18 (3h) Xarxes neuronals: perceptró, MLP, backpropagation Implementació MLP des de zero CA5.1, CA5.3
19 (3h) CNN, RNN, LSTM. Transformers i ViT Comparativa arquitectures per tasca CA5.1, CA5.2
20 (3h) Transfer learning, LoRA, fine-tuning. PyTorch 2.2 AC5072/05: fine-tuning ResNet per dataset propi CA5.2, CA5.4
21 (3h) Pràctica PR5072/02: Deep Learning amb Keras i Docker Sessió pràctica guiada CNN CA5.1CA5.4
22 (3h) Avaluació de models. MLOps. Repàs i síntesi Projecte final: pipeline end-to-end CA6.1CA6.5

Panorama del ML el 2025

D'on venim: la revolució silenciosa

El Machine Learning ha passat de ser una disciplina acadèsmica esotèrica a una tecnologia que impregna cada aspecte de la vida moderna. El 2025, és difícil trobar un producte digital que no incorpori algun component d'aprenentatge automàtic, des del filtre de spam del correu electrònic fins als sistemes de conducció autònoma de Tesla o Waymo.

La revolució va tenir diverses etapes clau:

Dècada dels 90 — Els fonaments estadístics: Les màquines de vectors de suport (SVM) i les xarxes neuronals poc profundes oferien resultats competitius en classificació de text i imatge, però les limitacions computacionals i la manca de dades frenen el progrés.

2006-2012 — El renaixement del deep learning: Geoffrey Hinton, Yann LeCun i Yoshua Bengio (Premi Turing 2018) demostren que les xarxes neuronals profundes, preentrenades amb mètodes no supervisats, superen els algorismes clàssics. El 2012, AlexNet guanya ImageNet amb un marge sense precedents, iniciant la cursa armamentística de la visió per computador.

2017 — Attention Is All You Need: Google Brain publica l'arquitectura Transformer, que canvia per sempre el processament del llenguatge natural. La idea clau —el mecanisme d'atenció— permet processar seqüències en paral·lel i capturar dependències de llarg abast que les RNN no podien gestionar eficaçment.

2020-2023 — Els Large Language Models: GPT-3 (175B paràmetres), PaLM, LLaMA, Mistral i finalment GPT-4 i Claude 3 demostren capacitats emergents imprevistes: raonament matemàtic, programació, traducció multilingüe i comprensió de context llarg. El scaling law de Chinchilla estableix les proporcions òptimes entre mida del model i dades d'entrenament.

2024-2025 — Multimodalitat i agents: Els models actuals com GPT-4o, Gemini 1.5 Pro i Claude 3.5 Sonnet processen text, imatge, àudio i vídeo de manera integrada. Els sistemes d'agents IA, capaços d'executar seqüències d'accions autònomes, s'implementen en entorns de producció reals. La discussió sobre AGI s'intensifica a mesura que els benchmarks clàssics queden superats un darrere l'altre.

Estat de l'art 2025

timeline
    title Evolució del Machine Learning
    2012 : AlexNet guanya ImageNet
         : GPU computing s'estabilitza
    2017 : Transformer publicat
         : BERT preentrenament
    2020 : GPT-3 175B parametres
         : Scaling laws descoberts
    2022 : ChatGPT llancament
         : Stable Diffusion difusio
    2023 : GPT-4 multimodal
         : LLaMA 2 open source
    2024 : Gemini 1.5 Pro 1M context
         : Claude 3.5 Sonnet
    2025 : Models raonament (o1, R1)
         : Agents autonoms en produccio

La relació entre IA, ML i Deep Learning

Una confusió habitual és tractar IA, ML i deep learning com a sinònims. En realitat, s'organitzen en cercles concèntrics:

graph TD
    IA["Intel·ligència Artificial<br/>(qualsevol sistema que simula intel·ligencia)"]
    ML["Machine Learning<br/>(aprèn de dades sense ser programat explícitament)"]
    DL["Deep Learning<br/>(xarxes neuronals profundes)"]
    GEN["IA Generativa<br/>(LLMs, Difusió, Multimodal)"]

    IA --> ML
    ML --> DL
    DL --> GEN

    style IA fill:#1a3a5c,color:#fff
    style ML fill:#1a5c3a,color:#fff
    style DL fill:#5c3a1a,color:#fff
    style GEN fill:#5c1a3a,color:#fff

La Intel·ligència Artificial és el camp més ampli: abasta qualsevol sistema que imita comportaments intel·ligents, des dels sistemes experts basats en regles dels anys 80 fins als LLMs actuals.

El Machine Learning és un subconjunt de la IA que se centra en sistemes que aprenen patrons a partir de dades. En lloc de programar regles explícites, el model extreu automàticament les regularitats del dataset. Això inclou algoritmes com la regressió logística, els arbres de decisió, les màquines de vectors de suport i el clustering.

El Deep Learning és un subconjunt del ML basat en xarxes neuronals artificials amb moltes capes (d'aquí el "profund"). Permet aprendre representacions jeràrquiques de les dades: les primeres capes detecten patrons simples (vores en una imatge), les intermèdies combinen patrons (textures, formes) i les finals reconeixen conceptes d'alt nivell (objectes, persones, escenes).

La IA Generativa és el subconjunt del deep learning que ha dominat el 2023-2025: models que generen contingut nou —text, imatge, àudio, codi, vídeo— indistingible del contingut humà.

L'ecosistema Python per a ML

Python s'ha convertit en la lingua franca del Machine Learning per una confluència de factors: sintaxi clara, comunitat activa, ecosistema de biblioteques madur i integració excel·lent amb els frameworks de deep learning.

scikit-learn 1.4+ continua sent el referent per a ML clàssic. Ofereix una API consistent i ben documentada per a tots els algoritmes supervisats i no supervisats, amb integració nativa de pipelines, cross-validation i optimització d'hiperparàmetres. La versió 1.4 incorpora millores de rendiment significatives i nous estimadors com HistGradientBoostingRegressor.

PyTorch 2.2+ domina la recerca en deep learning amb una quota superior al 80% als papers d'arXiv. El seu paradigma d'execució dinàmica (eager mode) facilita el debugging, mentre que torch.compile() (introduït a la versió 2.0) permet optimitzar automàticament el codi per a producció sense sacrificar la flexibilitat. PyTorch és el backend de Hugging Face, FastAI i la majoria de frameworks d'agents IA.

TensorFlow/Keras 3.0 manté presència significativa en entorns de producció empresarial i desplegament en dispositius mòbils (TFLite). Keras 3.0 es torna agnòstica del backend: pot executar-se sobre PyTorch, TensorFlow o JAX, cosa que amplia considerablement la seva versatilitat.

XGBoost / LightGBM / CatBoost segueixen sent els algoritmes guanyadors de competicions Kaggle per a dades tabulars. El Gradient Boosting amb arbres de decisió supera freqüentment les xarxes neuronals en datasets de mida mitjana amb features tabulars.

Hugging Face Transformers proporciona accés a milers de models preentrenats —BERT, RoBERTa, GPT-2, LLaMA, Mistral, Falcon— amb una API unificada. La biblioteca datasets simplifica la càrrega i el preprocés de datasets estàndard.

# Exemple: comparació d'ecosistemes per tasca
tasques_i_eines = {
    "Classificació tabular (fins 100K files)": ["XGBoost", "LightGBM", "scikit-learn RF"],
    "Classificació tabular (>100K files)": ["XGBoost", "CatBoost", "PyTorch MLP"],
    "Visió per computador": ["PyTorch + torchvision", "Keras + EfficientNet"],
    "NLP - classificació text": ["Hugging Face BERT", "scikit-learn TF-IDF+LR"],
    "NLP - generació text": ["PyTorch + Transformers", "llama.cpp (CPU)"],
    "Clustering i reducció dim.": ["scikit-learn", "UMAP"],
    "Detecció d'anomalies": ["scikit-learn IsolationForest", "PyOD"],
    "Series temporals": ["statsmodels", "Prophet", "PyTorch + LSTM"],
}

for tasca, eines in tasques_i_eines.items():
    print(f"\n{tasca}:")
    for eina in eines:
        print(f"  - {eina}")

Quin framework has d'aprendre primer?

Si estàs a l'inici del teu camí en ML, la prioritat hauria de ser: scikit-learn per als fonaments i algoritmes clàssics, PyTorch per al deep learning, i Hugging Face per aprofitar models preentrenats d'estat de l'art. Aprendre scikit-learn t'ensenyarà els conceptes fonamentals (pipeline, cross-validation, mètriques) que s'apliquen a tots els frameworks.

Recursos recomanats per al mòdul


Estructura del mòdul

El mòdul s'organitza en cinc blocs temàtics interconnectats:

Bloc 1: Fonaments i panorama (sessions 1-5)

  • IA Forta i Feble: distinció filosòfica i pràctica, casos reals 2025, la discussió AGI
  • Tipus de Machine Learning i quan aplicar cadascun

Bloc 2: Aprenentatge Supervisat (sessions 6-14)

Bloc 3: Aprenentatge No Supervisat (sessions 15-17)

Bloc 4: Xarxes Neuronals i Deep Learning (sessions 18-21)

Bloc 5: Avaluació i qualitat (sessió 22)


Activitats del mòdul

Codi Activitat Bloc Hores estimades
AC5072/01 Pipeline complet amb Iris i Wine datasets Supervisat 2h
AC5072/02 Classificació malalties cardíaques (Heart Disease UCI) Supervisat 3h
AC5072/03 Optimització d'hiperparàmetres amb Optuna Supervisat 2h
AC5072/04 Segmentació de clients amb clustering No supervisat 3h
AC5072/05 Fine-tuning ResNet50 per dataset personalitzat Deep Learning 4h
PR5072/01 Pràctica Docker: ML amb scikit-learn Supervisat 6h
PR5072/02 Pràctica Docker: Deep Learning amb Keras/PyTorch Deep Learning 6h

Miniactivitat — Identificació de sistemes ML

Fes una llista de 10 aplicacions o serveis digitals que fas servir habitualment (telèfon mòbil, streaming, e-commerce, xarxes socials, banca...). Per a cada un, intenta identificar:

  1. Quina funcionalitat sembla basada en ML?
  2. Quin tipus d'aprenentatge (supervisat, no supervisat, reforç) creus que utilitzen?
  3. Quines dades hauran necessitat per entrenar el model?

Comparteix les teves respostes amb la classe per comparar hipòtesis.