En aquest tema, aprendrem sobre les diferents mètriques utilitzades per avaluar la qualitat i l'eficàcia dels models predictius. Les mètriques d'avaluació són essencials per determinar si un model és adequat per a una tasca específica i per comparar diferents models entre si.

Objectius d'Aprenentatge

  • Comprendre la importància de les mètriques d'avaluació.
  • Conèixer les mètriques més comunes per a models de regressió i classificació.
  • Aprendre a interpretar els resultats de les mètriques d'avaluació.

  1. Importància de les Mètriques d'Avaluació

Les mètriques d'avaluació són crucials perquè:

  • Permeten mesurar el rendiment del model de manera objectiva.
  • Ajuden a identificar àrees de millora en el model.
  • Faciliten la comparació entre diferents models o versions del mateix model.
  • Proporcionen informació útil per a la presa de decisions.

  1. Mètriques per a Models de Regressió

Els models de regressió prediuen valors continus. Les mètriques més comunes per avaluar aquests models són:

2.1. Error Quadràtic Mitjà (MSE)

L'Error Quadràtic Mitjà mesura la mitjana dels quadrats dels errors, és a dir, la diferència entre els valors predits i els valors reals.

\[ \text{MSE} = \frac{1}{n} \sum_{i=1}^{n} (y_i - \hat{y}_i)^2 \]

2.2. Error Absolut Mitjà (MAE)

L'Error Absolut Mitjà mesura la mitjana dels errors absoluts.

\[ \text{MAE} = \frac{1}{n} \sum_{i=1}^{n} |y_i - \hat{y}_i| \]

2.3. Coeficient de Determinació (R²)

El Coeficient de Determinació indica la proporció de la variància en la variable dependent que és previsible a partir de les variables independents.

\[ R^2 = 1 - \frac{\sum_{i=1}^{n} (y_i - \hat{y}i)^2}{\sum{i=1}^{n} (y_i - \bar{y})^2} \]

  1. Mètriques per a Models de Classificació

Els models de classificació prediuen etiquetes categòriques. Les mètriques més comunes per avaluar aquests models són:

3.1. Matriu de Confusió

La Matriu de Confusió és una taula que permet visualitzar el rendiment d'un model de classificació. Conté els valors reals i predits.

Predicció Positiva Predicció Negativa
Real Positiva VP (Veritable Positiu) FN (Fals Negatiu)
Real Negativa FP (Fals Positiu) VN (Veritable Negatiu)

3.2. Precisió (Accuracy)

La Precisió mesura la proporció de prediccions correctes.

\[ \text{Precisió} = \frac{VP + VN}{VP + VN + FP + FN} \]

3.3. Precisió (Precision) i Exhaustivitat (Recall)

  • Precisió (Precision): Proporció de veritables positius entre les prediccions positives.

\[ \text{Precisió} = \frac{VP}{VP + FP} \]

  • Exhaustivitat (Recall): Proporció de veritables positius entre els casos reals positius.

\[ \text{Exhaustivitat} = \frac{VP}{VP + FN} \]

3.4. F1-Score

L'F1-Score és la mitjana harmònica de la precisió i l'exhaustivitat.

\[ \text{F1-Score} = 2 \cdot \frac{\text{Precisió} \cdot \text{Exhaustivitat}}{\text{Precisió} + \text{Exhaustivitat}} \]

3.5. AUC-ROC

L'Àrea Sota la Corba ROC (AUC-ROC) mesura la capacitat del model per distingir entre classes. La corba ROC és un gràfic de la taxa de veritables positius contra la taxa de falsos positius.

  1. Exemples Pràctics

Exemple 1: Càlcul de MSE i MAE en Python

from sklearn.metrics import mean_squared_error, mean_absolute_error

# Valors reals i predits
y_true = [3.0, -0.5, 2.0, 7.0]
y_pred = [2.5, 0.0, 2.0, 8.0]

# Càlcul de MSE i MAE
mse = mean_squared_error(y_true, y_pred)
mae = mean_absolute_error(y_true, y_pred)

print(f'MSE: {mse}')
print(f'MAE: {mae}')

Exemple 2: Matriu de Confusió en Python

from sklearn.metrics import confusion_matrix

# Valors reals i predits
y_true = [0, 1, 0, 1, 0, 1, 0, 1]
y_pred = [0, 0, 0, 1, 0, 1, 1, 1]

# Càlcul de la Matriu de Confusió
cm = confusion_matrix(y_true, y_pred)

print('Matriu de Confusió:')
print(cm)

  1. Exercicis Pràctics

Exercici 1: Càlcul de Mètriques de Regressió

Dades:

  • y_true = [1.5, 2.0, 3.5, 4.0, 5.5]
  • y_pred = [1.4, 2.1, 3.3, 4.2, 5.6]

Tasques:

  1. Calcula el MSE.
  2. Calcula el MAE.
  3. Calcula el R².

Exercici 2: Càlcul de Mètriques de Classificació

Dades:

  • y_true = [1, 0, 1, 1, 0, 1, 0, 0, 1, 0]
  • y_pred = [1, 0, 1, 0, 0, 1, 0, 1, 1, 0]

Tasques:

  1. Calcula la Matriu de Confusió.
  2. Calcula la Precisió.
  3. Calcula la Precisió (Precision) i l'Exhaustivitat (Recall).
  4. Calcula l'F1-Score.

Solucions dels Exercicis

Solució Exercici 1

from sklearn.metrics import mean_squared_error, mean_absolute_error, r2_score

# Dades
y_true = [1.5, 2.0, 3.5, 4.0, 5.5]
y_pred = [1.4, 2.1, 3.3, 4.2, 5.6]

# Càlcul de MSE, MAE i R²
mse = mean_squared_error(y_true, y_pred)
mae = mean_absolute_error(y_true, y_pred)
r2 = r2_score(y_true, y_pred)

print(f'MSE: {mse}')
print(f'MAE: {mae}')
print(f'R²: {r2}')

Solució Exercici 2

from sklearn.metrics import confusion_matrix, accuracy_score, precision_score, recall_score, f1_score

# Dades
y_true = [1, 0, 1, 1, 0, 1, 0, 0, 1, 0]
y_pred = [1, 0, 1, 0, 0, 1, 0, 1, 1, 0]

# Càlcul de la Matriu de Confusió
cm = confusion_matrix(y_true, y_pred)

# Càlcul de Precisió, Precisió (Precision), Exhaustivitat (Recall) i F1-Score
accuracy = accuracy_score(y_true, y_pred)
precision = precision_score(y_true, y_pred)
recall = recall_score(y_true, y_pred)
f1 = f1_score(y_true, y_pred)

print('Matriu de Confusió:')
print(cm)
print(f'Precisió: {accuracy}')
print(f'Precisió (Precision): {precision}')
print(f'Exhaustivitat (Recall): {recall}')
print(f'F1-Score: {f1}')

Resum

En aquesta secció, hem après sobre les mètriques d'avaluació per a models de regressió i classificació. Hem vist com calcular aquestes mètriques i com interpretar els seus resultats. Aquestes mètriques són fonamentals per avaluar el rendiment dels models i prendre decisions informades sobre la seva implementació i millora.

© Copyright 2024. Tots els drets reservats