Commit 5e2786f7 authored by jg5dev's avatar jg5dev 💬
Browse files

better

parent 8fdfaaf9
Loading
Loading
Loading
Loading
+6 −7
Changes for src/SUMMARY.md: 6 added lines, 7 removed lines.
Original line number Diff line number Diff line
@@ -58,12 +58,6 @@
    - [K-veïns més propers](./apren/ba1/ml_knn.md)
    - [Aprenentatge no supervisat](./apren/ba1/ml_unsupervised.md)
    - [Recomanadors](./apren/ba1/ml_recommender.md)
  - [Desplegament i operació](./apren/ba2.md)
    - [Desplegament de models](./apren/ba2/01_model_deployment.md)
    - [Validació i qualitat](./apren/ba2/02_model_quality_and_testing.md)
    - [Drifting i monitoratge](./apren/ba2/03_drift_monitoring.md)
    - [Aprenentatge continu](./apren/ba2/04_continual_learning.md)  
    - [Patrons d'implementació](./apren/ba2/05_implementation_patterns.md)
  - [LLMs i IA Generativa](./apren/llms.md)
    - [Transformers i Models de Llenguatge](./apren/llms/ml_transformers.md)
    - [LLM vs. ML tradicional](./apren/llms/llm_vs_ml.md)
@@ -73,7 +67,12 @@
    - [Orquestració amb workflows i agents](./apren/llms/llm_patterns.md)
    - [Avaluació de sistemes LLM](./apren/llms/llm_evals.md)
    - [Arquitectures per cas d'ús](./apren/llms/llm_use_cases.md)
    - [Sistemes LLM en producció](./apren/llms/llm_production.md)
  - [Desplegament i operació](./apren/ba2.md)
    - [Del model al servei](./apren/ba2/01_model_deployment.md)
    - [Validació i CI/CD](./apren/ba2/02_model_quality_and_testing.md)
    - [Monitoratge i reentrenament](./apren/ba2/03_drift_monitoring.md)
    - [Sistemes LLM en producció](./apren/ba2/04_llm_production.md)
    - [Patrons d'implementació](./apren/ba2/05_implementation_patterns.md)
  - [IA sostenible](./apren/sostenible.md)
  - [Guia pràctica](./apren/ml_methodology.md)
  - [Referències](./apren/basics.md)
+6 −7
Changes for src/apren.md: 6 added lines, 7 removed lines.
Original line number Diff line number Diff line
@@ -11,12 +11,6 @@
  - [K-veïns més propers](./apren/ba1/ml_knn.md)
  - [Aprenentatge no supervisat](./apren/ba1/ml_unsupervised.md)
  - [Recomanadors](./apren/ba1/ml_recommender.md)
- [Desplegament i operació](./apren/ba2.md): què passa amb un model després d'entrenar-lo, i com mantenir-lo viu quan les dades canvien.
  - [Desplegament de models](./apren/ba2/01_model_deployment.md)
  - [Validació i qualitat](./apren/ba2/02_model_quality_and_testing.md)
  - [Drifting i monitoratge](./apren/ba2/03_drift_monitoring.md)
  - [Aprenentatge continu](./apren/ba2/04_continual_learning.md)  
  - [Patrons d'implementació](./apren/ba2/05_implementation_patterns.md)
- [LLMs i IA Generativa](./apren/llms.md): tres preguntes en ordre, cal un LLM, quin patró i quin model, amb l'avaluació com a requisit transversal.
  - [Transformers i LLMs](./apren/llms/ml_transformers.md)
  - [LLM vs. ML tradicional](./apren/llms/llm_vs_ml.md)  
@@ -26,7 +20,12 @@
  - [Orquestració amb workflows i agents](./apren/llms/llm_patterns.md)
  - [Avaluació de sistemes LLM](./apren/llms/llm_evals.md)
  - [Arquitectures per cas d'ús](./apren/llms/llm_use_cases.md)
  - [Sistemes LLM en producció](./apren/llms/llm_production.md)
- [Desplegament i operació](./apren/ba2.md): com portar a producció un model de ML o un sistema amb LLMs, decidir automàticament si hi pot arribar i mantenir-lo funcionant.
  - [Del model al servei](./apren/ba2/01_model_deployment.md)
  - [Validació i CI/CD](./apren/ba2/02_model_quality_and_testing.md)
  - [Monitoratge i reentrenament](./apren/ba2/03_drift_monitoring.md)
  - [Sistemes LLM en producció](./apren/ba2/04_llm_production.md)
  - [Patrons d'implementació](./apren/ba2/05_implementation_patterns.md)
- [IA sostenible](./apren/sostenible.md): el cost energètic i material de la IA, on convé executar cada tasca i qui controla la infraestructura.
- [Guia pràctica](./apren/ml_methodology.md): guia de decisió per triar l'enfocament i estructurar un projecte, del problema al desplegament.
- [Referències](./apren/basics.md): material de suport per consultar quan calgui, no per llegir seguit.
+50 −12
Changes for src/apren/ba1.md: 50 added lines, 12 removed lines.
Original line number Diff line number Diff line
# Aprenentatge Automàtic

Fonaments teòrics i pràctics dels principals algoritmes de machine learning, des de la regressió fins als sistemes de recomanació.

- [Aprenentatge supervisat](./ba1/ml_supervised.md): Regressió lineal, logística i els fonaments d'aprendre a partir de dades etiquetades.
- [Mètriques d'avaluació](./ba1/ml_metrics.md): R², precisió, recall, F1 i altres mètriques per mesurar el rendiment dels models.
- [Xarxes neuronals](./ba1/ml_neuralnets.md): Del perceptró al deep learning, arquitectura i entrenament de xarxes multicapa.
- [Embeddings i cerca vectorial](./ba1/ml_embeddings_vectorsearch.md): Representació densa d'objectes, mètriques de similitud, algorismes ANN i cerca semàntica.
- [Guia d'aplicació i diagnòstic](./ba1/ml_advice.md): Tècniques de diagnòstic matemàtic per identificar i resoldre problemes en models.
- [Arbres de decisió](./ba1/ml_decisiontrees.md): Classificació basada en particions recursives de l'espai de features.
- [K-veïns més propers](./ba1/ml_knn.md): Classificació per similitud amb els exemples d'entrenament més propers.
- [Aprenentatge no supervisat](./ba1/ml_unsupervised.md): Clustering, detecció d'anomalies i reducció de dimensionalitat sense etiquetes.
- [Recomanadors](./ba1/ml_recommender.md): Sistemes per predir preferències d'usuaris amb filtrat col·laboratiu.
- [Metodologia pràctica](./ml_methodology.md): Guia de decisió per triar algoritmes i estructurar projectes de ML.
Com aprèn un model a partir de dades i com se sap si el que ha après serveix. És el primer bloc tècnic: els que vénen després hi construeixen a sobre. Els LLMs són xarxes neuronals que treballen amb embeddings ([LLMs i IA Generativa](./llms.md)), i portar un model a producció pressuposa saber-lo entrenar i avaluar ([Desplegament i operació](./ba2.md)).

## Com llegir aquests documents

Els documents segueixen l'ordre en què les idees es necessiten:

1. **Aprendre d'exemples.** Tot comença amb l'aprenentatge supervisat: un model que ajusta uns paràmetres per equivocar-se tan poc com pugui sobre dades etiquetades. Aquí apareixen les idees que tornaran a tot arreu: funció de cost, descens de gradient, regressió i classificació.
2. **Mesurar.** Sense una manera de dir si un model és bo, no hi ha manera de millorar-lo. Les mètriques vénen just després, abans de qualsevol model nou.
3. **Models més potents.** Les xarxes neuronals generalitzen la regressió apilant capes, i aprenen representacions internes de les dades. Els embeddings fan servir aquesta idea: convertir objectes en vectors comparables per significat.
4. **Diagnosticar i millorar.** Amb diversos models a la mà, la pregunta passa a ser què fer quan un model no funciona: com dividir les dades, què són el biaix i la variància, com regularitzar. Ve després de les xarxes neuronals perquè una part de les tècniques (dropout, early stopping) és específica d'elles.
5. **Altres famílies.** Els arbres de decisió construeixen regles explícites, ideals per a dades tabulars. Els K-veïns no construeixen cap model: comparen cada cas nou amb els exemples més semblants, la mateixa idea de similitud que els embeddings.
6. **Sense etiquetes.** L'aprenentatge no supervisat busca estructura on no hi ha cap resposta correcta: grups, anomalies, menys dimensions.
7. **Aplicació.** Els recomanadors combinen el que s'ha vist: regressió, embeddings apresos amb descens de gradient i similitud entre usuaris i ítems.

```mermaid
flowchart TD
    S["Aprenentatge supervisat"] --> M["Mètriques d'avaluació"]
    M --> N["Xarxes neuronals"]
    N --> E["Embeddings i cerca vectorial"]
    N --> A["Guia d'aplicació i diagnòstic"]
    M --> A
    A --> T["Arbres de decisió"]
    T --> K["K-veïns més propers"]
    E --> K
    S --> U["Aprenentatge no supervisat"]
    E --> R["Recomanadors"]
    U --> R
```

## Documents

- [Aprenentatge supervisat](./ba1/ml_supervised.md): regressió lineal i logística, funció de cost i descens de gradient, la base d'aprendre a partir de dades etiquetades
- [Mètriques d'avaluació](./ba1/ml_metrics.md): R², MAE i RMSE per a regressió; precisió, recall, F1 i corbes ROC per a classificació
- [Xarxes neuronals](./ba1/ml_neuralnets.md): del perceptró al deep learning, arquitectura i entrenament de xarxes multicapa
- [Embeddings i cerca vectorial](./ba1/ml_embeddings_vectorsearch.md): representar objectes com a vectors, mesurar-ne la similitud i cercar-los ràpidament
- [Guia d'aplicació i diagnòstic](./ba1/ml_advice.md): divisió de les dades, biaix i variància, regularització i corbes d'aprenentatge per saber què fer quan un model falla
- [Arbres de decisió](./ba1/ml_decisiontrees.md): classificació amb particions successives de les dades, i els conjunts d'arbres
- [K-veïns més propers](./ba1/ml_knn.md): predir a partir dels exemples d'entrenament més semblants
- [Aprenentatge no supervisat](./ba1/ml_unsupervised.md): clustering, detecció d'anomalies i reducció de dimensionalitat sense etiquetes
- [Recomanadors](./ba1/ml_recommender.md): predir preferències d'usuaris amb filtrat basat en contingut i col·laboratiu

## Després

La [Guia pràctica](./ml_methodology.md) recull aquests continguts en forma de decisions: quin enfocament triar per a cada problema i com estructurar un projecte, del problema al desplegament.

## Itinerari curt

Si no pots llegir-ho tot, aquests quatre documents en ordre donen una base completa per entrenar i avaluar un primer model amb dades tabulars:

[Aprenentatge supervisat](./ba1/ml_supervised.md) → [Mètriques d'avaluació](./ba1/ml_metrics.md) → [Guia d'aplicació i diagnòstic](./ba1/ml_advice.md) → [Arbres de decisió](./ba1/ml_decisiontrees.md)
+30 −6
Changes for src/apren/ba2.md: 30 added lines, 6 removed lines.
Original line number Diff line number Diff line
# Desplegament i operació

Tot el que cal saber per portar models de machine learning a producció i mantenir-los funcionant correctament al llarg del temps.
Els blocs anteriors expliquen com entrenar i avaluar models ([Aprenentatge automàtic](./ba1.md)) i com construir sistemes amb LLMs ([LLMs i IA Generativa](./llms.md)). Aquest bloc explica què passa després: com portar-los a producció, com decidir automàticament si hi poden arribar i com mantenir-los funcionant.

- [Desplegament de models](./ba2/01_model_deployment.md): MLOps, Docker, APIs i versionat per portar models a producció de manera fiable.
- [Validació i qualitat](./ba2/02_model_quality_and_testing.md): Criteris de validació, testing específic per ML i pipelines CI/CD per garantir la qualitat dels models.
- [Drifting i monitoratge](./ba2/03_drift_monitoring.md): Detecció de canvis en la distribució de dades i sistemes d'alertes per models en producció.
- [Aprenentatge continu](./ba2/04_continual_learning.md): Estratègies per actualitzar i re-entrenar models quan les dades canvien.
- [Patrons d'implementació](./ba2/05_implementation_patterns.md): Receptes pràctiques per resoldre problemes concrets quan es porta un model de ML a producció.
## Com llegir aquests documents

Els documents segueixen el **cicle de vida d'un model en producció**, i cada etapa necessita l'anterior:

1. **Desplegar**: convertir el model en un servei, amb una API, una imatge Docker i un número de versió. És la base de tot el que ve després.
2. **Validar**: decidir automàticament quan una versió pot arribar a producció. La porta de qualitat llegeix les metadades de la versió i els tests s'executen sobre la imatge, així que cal saber primer què és una versió i què és una imatge.
3. **Vigilar i actualitzar**: detectar quan el model empitjora i reentrenar-lo. Tanca el cicle: el model nou és una versió nova que torna a passar per la validació i el desplegament.

El cicle es recorre **dues vegades**. La primera, amb un model de ML, que el servei carrega des d'un fitxer: és el cas més tangible, perquè cada idea (artefacte, porta de qualitat, drift) té alguna cosa concreta a què referir-se. La segona, amb un LLM, on el model és un servei extern al qual el backend fa crides. Aquesta diferència explica totes les altres, i per això les etapes del LLM es presenten com a canvis respecte de les del ML, en el mateix ordre.

```mermaid
flowchart LR
    D[Desplegar] --> V[Validar] --> M[Vigilar i actualitzar]
    M -.->|versió nova| V
```

## ML: el model és un fitxer

- [Del model al servei](./ba2/01_model_deployment.md): pipeline de MLOps, serialització, API amb FastAPI, Docker i versionat de models.
- [Validació i CI/CD](./ba2/02_model_quality_and_testing.md): criteris de desplegament, testing, portes de qualitat i pipeline de CI/CD. Inclou com validar un sistema on una etapa és un LLM, perquè un sistema mixt passa per una sola porta.
- [Monitoratge i reentrenament](./ba2/03_drift_monitoring.md): registre de prediccions, detecció de drift, reentrenament i proves amb tràfic real.

## LLM: el model és un servei

- [Sistemes LLM en producció](./ba2/04_llm_production.md): les mateixes etapes (desplegar, validar, vigilar i actualitzar) quan el model és un LLM: comunicació amb el model, concurrència, evals, traces, costos i canvis del model base.

## Receptes

- [Patrons d'implementació](./ba2/05_implementation_patterns.md): estructura del projecte, configuració, logging, gestió d'errors i injecció de dependències. No és una etapa del cicle sinó material de consulta, vàlid per als dos casos; cada patró remet al document que n'explica el perquè. En un projecte real, l'estructura i la configuració es preparen al principi, així que convé tenir-lo a mà des del primer dia.
+242 −1089

File changed.

Preview size limit exceeded, changes collapsed.

Loading