En aquest tema, explorarem dos dels models estadístics més utilitzats en l'anàlisi de dades: la regressió lineal i la regressió logística. Aquests models són fonamentals per a la predicció i la classificació, respectivament, i són àmpliament utilitzats en diverses aplicacions del món real.

  1. Regressió Lineal

1.1. Conceptes Bàsics

La regressió lineal és una tècnica estadística que s'utilitza per modelar la relació entre una variable dependent (Y) i una o més variables independents (X). L'objectiu és trobar la línia que millor s'ajusti a les dades.

Fórmula de la Regressió Lineal Simple

\[ Y = \beta_0 + \beta_1X + \epsilon \]

On:

  • \( Y \) és la variable dependent.
  • \( X \) és la variable independent.
  • \( \beta_0 \) és la intersecció (el valor de Y quan X és 0).
  • \( \beta_1 \) és la pendent de la línia (el canvi en Y per unitat de canvi en X).
  • \( \epsilon \) és l'error residual.

1.2. Exemple Pràctic

Suposem que volem predir el preu d'una casa en funció de la seva mida (en peus quadrats).

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LinearRegression

# Dades d'exemple
X = np.array([1500, 1600, 1700, 1800, 1900]).reshape(-1, 1)
Y = np.array([300000, 320000, 340000, 360000, 380000])

# Crear el model de regressió lineal
model = LinearRegression()
model.fit(X, Y)

# Prediccions
Y_pred = model.predict(X)

# Visualització
plt.scatter(X, Y, color='blue')
plt.plot(X, Y_pred, color='red')
plt.xlabel('Mida (peus quadrats)')
plt.ylabel('Preu ($)')
plt.title('Regressió Lineal: Preu vs Mida')
plt.show()

1.3. Interpretació dels Resultats

  • Intersecció (\(\beta_0\)): El valor predit del preu de la casa quan la mida és 0 (no té sentit pràctic en aquest cas, però és part del model).
  • Pendent (\(\beta_1\)): El canvi en el preu de la casa per cada unitat addicional de mida.

1.4. Mètriques d'Avaluació

  • Coeficient de Determinació (R²): Mesura la proporció de la variació en la variable dependent que és predita per les variables independents.
r_squared = model.score(X, Y)
print(f'R²: {r_squared}')

  1. Regressió Logística

2.1. Conceptes Bàsics

La regressió logística s'utilitza per modelar la probabilitat d'un esdeveniment binari (per exemple, èxit/fallida, sí/no). La sortida del model és una probabilitat que es pot convertir en una classificació binària.

Fórmula de la Regressió Logística

\[ P(Y=1|X) = \frac{1}{1 + e^{-(\beta_0 + \beta_1X)}} \]

On:

  • \( P(Y=1|X) \) és la probabilitat que l'esdeveniment Y ocorri donat X.
  • \( \beta_0 \) és la intersecció.
  • \( \beta_1 \) és el coeficient de la variable independent.

2.2. Exemple Pràctic

Suposem que volem predir si un estudiant passarà o no un examen en funció de les hores d'estudi.

import numpy as np
import matplotlib.pyplot as plt
from sklearn.linear_model import LogisticRegression

# Dades d'exemple
X = np.array([1, 2, 3, 4, 5]).reshape(-1, 1)
Y = np.array([0, 0, 0, 1, 1])

# Crear el model de regressió logística
model = LogisticRegression()
model.fit(X, Y)

# Prediccions
Y_pred = model.predict(X)
Y_prob = model.predict_proba(X)[:, 1]

# Visualització
plt.scatter(X, Y, color='blue')
plt.plot(X, Y_prob, color='red')
plt.xlabel('Hores d\'estudi')
plt.ylabel('Probabilitat de passar')
plt.title('Regressió Logística: Passar vs Hores d\'estudi')
plt.show()

2.3. Interpretació dels Resultats

  • Intersecció (\(\beta_0\)): El valor log-odds de passar l'examen quan les hores d'estudi són 0.
  • Coeficient (\(\beta_1\)): El canvi en els log-odds de passar l'examen per cada hora addicional d'estudi.

2.4. Mètriques d'Avaluació

  • Precisió: Proporció de prediccions correctes.
  • Matriu de Confusió: Taula que descriu el rendiment del model de classificació.
from sklearn.metrics import accuracy_score, confusion_matrix

accuracy = accuracy_score(Y, Y_pred)
conf_matrix = confusion_matrix(Y, Y_pred)

print(f'Precisió: {accuracy}')
print(f'Matriu de Confusió:\n{conf_matrix}')

Exercicis Pràctics

Exercici 1: Regressió Lineal

Utilitza el conjunt de dades Boston Housing de la biblioteca sklearn per construir un model de regressió lineal que prediu el preu de les cases basat en les característiques disponibles.

Exercici 2: Regressió Logística

Utilitza el conjunt de dades Iris de la biblioteca sklearn per construir un model de regressió logística que classifiqui si una flor és de la classe Iris-Virginica o no basat en les característiques disponibles.

Conclusió

En aquesta secció, hem après els conceptes bàsics de la regressió lineal i logística, hem vist exemples pràctics de com implementar aquests models utilitzant Python i hem explorat les mètriques d'avaluació per avaluar el rendiment dels models. Aquestes tècniques són fonamentals en l'anàlisi de dades i proporcionen una base sòlida per a la predicció i la classificació.

En el següent tema, explorarem altres models com els arbres de decisió i els boscos aleatoris, que són tècniques més avançades per a la modelització de dades.

© Copyright 2024. Tots els drets reservats