master-degree-notes/Foundation of data science/notes/2 Linear Regression.md

3 KiB

Linear Regression

Definizione

La regressione lineare è un metodo per modellare la relazione tra variabili indipendenti (input,$x$) e una variabile dipendente (output,$y$) assumendo che questa relazione sia approssimativamente lineare.

Notazione

-m: Numero di esempi di training. -n: Numero di caratteristiche (features). -x^{(i)}: Input del$i$-esimo esempio. -y^{(i)}: Output del$i$-esimo esempio. -\theta: Parametri del modello.

Ipotesti del modello

La funzione ipotesi per un modello con una variabile è:

h_\theta(x) = \theta_0 + \theta_1x

Per più variabili (multivariata):

h_\theta(x) = \theta_0 + \theta_1x_1 + \dots + \theta_nx_n = \theta^T x

Funzione di costo

Misura l'errore tra le predizioni del modello e i valori reali:

J(\theta) = \frac{1}{2m} \sum_{i=1}^{m} \left( h_\theta(x^{(i)}) - y^{(i)} \right)^2

Gradient Descent

Algoritmo iterativo per minimizzare$J(\theta)$:

\theta_j := \theta_j - \alpha \frac{\partial J(\theta)}{\partial \theta_j}

Dove:

  • \alpha è il learning rate.
  • $\frac{\partial J(\theta)}{\partial \theta_j}$è il gradiente rispetto a$\theta_j$.

Varianti

  1. Batch Gradient Descent: Usa tutti gli esempi per calcolare il gradiente.
  2. Stochastic Gradient Descent (SGD): Aggiorna $\theta$usando un solo esempio per iterazione.
  3. Mini-batch Gradient Descent: Combina i due approcci sopra usando piccoli gruppi (mini-batch).

Feature Scaling

Per migliorare la convergenza del gradient descent, è utile normalizzare le feature:

x_j := \frac{x_j - \mu_j}{s_j}

Dove:

  • \mu_j: Media della feature$j$.
  • s_j: Range o deviazione standard della feature j.

Equazione Normale

Un metodo analitico per calcolare i parametri \theta: \theta = (X^T X)^{-1} X^T y Utile quando il dataset è piccolo, ma inefficiente per grandi dataset.

Metrica di Valutazione

  • MSE (Mean Squared Error): Valuta l'errore medio quadratico.
  • Coefficiente di correlazione (Pearson): Misura la relazione lineare tra x e y:
$r = \frac{\text{Cov}(x, y)}{\sigma_x \sigma_y

Valori:

  • r = 1: Massima correlazione positiva.

  • r = 0: Nessuna correlazione.

  • r = -1: Massima correlazione negativa.

  • R^2 (Coefficient of Determination): R^2 = 1 - \frac{\text{SSE}}{\text{SST}} Dove:

    • \text{SSE}: Somma degli errori quadrati.
    • \text{SST}: Somma totale dei quadrati.

Locally weighted regression (Loess/Lowess)

Tecnica non parametrica che pesa gli esempi locali:

w^{(i)} = \exp\left(-\frac{(x - x^{(i)})^2}{2\tau^2}\right)

Dove \tau è un parametro di larghezza (bandwidth).

Interpretazione Probabilistica

Assumendo un errore gaussiano:

y^{(i)} = \theta^T x^{(i)} + \epsilon^{(i)}, \quad \epsilon^{(i)} \sim \mathcal{N}(0, \sigma^2)

La massimizzazione della verosimiglianza equivale alla minimizzazione di$J(\theta)$.

Overfitting e Underfitting

  • Overfitting: Modello troppo complesso; alta varianza.
  • Underfitting: Modello troppo semplice; alto bias. Soluzioni:
  • Selezione delle feature.
  • Regolarizzazione.