logo

Regressione lineare nell'apprendimento automatico

Apprendimento automatico è una branca dell'intelligenza artificiale che si concentra sullo sviluppo di algoritmi e modelli statistici in grado di apprendere dai dati e fare previsioni sui dati. Regressione lineare è anche un tipo di algoritmo di apprendimento automatico più specificamente a algoritmo di apprendimento automatico supervisionato che apprende dai set di dati etichettati e mappa i punti dati sulle funzioni lineari più ottimizzate. che può essere utilizzato per la previsione su nuovi set di dati.

Per prima cosa dovremmo sapere cosa sono gli algoritmi di apprendimento automatico supervisionati. È un tipo di apprendimento automatico in cui l'algoritmo apprende da dati etichettati. Per dati etichettati si intende il set di dati il ​​cui rispettivo valore target è già noto. L’apprendimento supervisionato ha due tipi:



  • Classificazione : Prevede la classe del set di dati in base alla variabile di input indipendente. La classe rappresenta i valori categorici o discreti. come l'immagine di un animale è un gatto o un cane?
  • Regressione : Prevede le variabili di output continue in base alla variabile di input indipendente. come la previsione dei prezzi delle case in base a diversi parametri come l'età della casa, la distanza dalla strada principale, l'ubicazione, la zona, ecc.

Qui discuteremo uno dei tipi più semplici di regressione, ad es. Regressione lineare.

Tabella dei contenuti

Cos'è la regressione lineare?

La regressione lineare è un tipo di apprendimento automatico supervisionato algoritmo che calcola la relazione lineare tra la variabile dipendente e una o più caratteristiche indipendenti adattando un'equazione lineare ai dati osservati.



Quando esiste una sola caratteristica indipendente, è nota come Regressione lineare semplice , e quando è presente più di una funzionalità, è nota come Regressione lineare multipla .

Allo stesso modo, quando esiste una sola variabile dipendente, viene considerata Regressione lineare univariata , mentre quando sono presenti più variabili dipendenti, è noto come Regressione multivariata .

Perché la regressione lineare è importante?

L'interpretabilità della regressione lineare è un punto di forza notevole. L’equazione del modello fornisce coefficienti chiari che chiariscono l’impatto di ciascuna variabile indipendente sulla variabile dipendente, facilitando una comprensione più profonda delle dinamiche sottostanti. La sua semplicità è una virtù, poiché la regressione lineare è trasparente, facile da implementare e funge da concetto fondamentale per algoritmi più complessi.



La regressione lineare non è semplicemente uno strumento predittivo; costituisce la base per vari modelli avanzati. Tecniche come la regolarizzazione e le macchine a vettori di supporto traggono ispirazione dalla regressione lineare, espandendone l'utilità. Inoltre, la regressione lineare è una pietra miliare nella verifica delle ipotesi, poiché consente ai ricercatori di convalidare le ipotesi chiave sui dati.

Tipi di regressione lineare

Esistono due tipi principali di regressione lineare:

Regressione lineare semplice

Questa è la forma più semplice di regressione lineare e coinvolge solo una variabile indipendente e una variabile dipendente. L'equazione per la regressione lineare semplice è:
y=eta_{0}+eta_{1}X
Dove:

  • Y è la variabile dipendente
  • X è la variabile indipendente
  • β0 è l'intercetta
  • β1 è la pendenza

Regressione lineare multipla

Ciò implica più di una variabile indipendente e una variabile dipendente. L'equazione per la regressione lineare multipla è:
y=eta_{0}+eta_{1}X+eta_{2}X+………eta_{n}X
Dove:

  • Y è la variabile dipendente
  • X1, X2, …, Xp sono le variabili indipendenti
  • β0 è l'intercetta
  • β1, β2, …, βn sono le pendenze

L'obiettivo dell'algoritmo è trovare il linea migliore equazione in grado di prevedere i valori in base alle variabili indipendenti.

Nella regressione sono presenti set di record con valori X e Y e questi valori vengono utilizzati per apprendere una funzione, quindi se si desidera prevedere Y da un X sconosciuto è possibile utilizzare questa funzione appresa. Nella regressione dobbiamo trovare il valore di Y, quindi è necessaria una funzione che preveda Y continuo nel caso di regressione data X come caratteristiche indipendenti.

Qual è la migliore linea Fit?

Il nostro obiettivo principale quando utilizziamo la regressione lineare è individuare la linea più adatta, il che implica che l'errore tra i valori previsti e quelli effettivi dovrebbe essere mantenuto al minimo. Ci sarà il minimo errore nella linea più adatta.

La migliore equazione della linea di adattamento fornisce una linea retta che rappresenta la relazione tra le variabili dipendenti e indipendenti. La pendenza della linea indica quanto cambia la variabile dipendente per una variazione unitaria nelle variabili indipendenti.

Regressione lineare nell'apprendimento automatico

Regressione lineare


Qui Y è chiamata variabile dipendente o target e X è chiamata variabile indipendente nota anche come predittore di Y. Esistono molti tipi di funzioni o moduli che possono essere utilizzati per la regressione. Una funzione lineare è il tipo di funzione più semplice. Qui, X può essere una singola funzionalità o più funzionalità che rappresentano il problema.

La regressione lineare esegue il compito di prevedere il valore di una variabile dipendente (y) in base a una determinata variabile indipendente (x)). Quindi, il nome è Regressione lineare. Nella figura sopra, X (input) è l'esperienza lavorativa e Y (output) è lo stipendio di una persona. La retta di regressione è la retta che meglio si adatta al nostro modello.

Utilizziamo la funzione di costo per calcolare i valori migliori al fine di ottenere la linea di adattamento migliore poiché valori diversi per i pesi o il coefficiente delle linee danno come risultato linee di regressione diverse.

Funzione di ipotesi nella regressione lineare

Come abbiamo ipotizzato in precedenza, la nostra caratteristica indipendente è l'esperienza, ovvero X, e il rispettivo stipendio Y è la variabile dipendente. Supponiamo che esista una relazione lineare tra X e Y, quindi lo stipendio può essere previsto utilizzando:

hat{Y} = heta_1 + heta_2X

O

hat{y}_i = heta_1 + heta_2x_i

Qui,

  • y_i epsilon Y ;; (i= 1,2, cdots , n) sono etichette per i dati (apprendimento supervisionato)
  • x_i epsilon X ;; (i= 1,2, cdots , n) sono i dati di training indipendenti di input (univariato – una variabile di input (parametro))
  • hat{y_i} epsilon hat{Y} ;; (i= 1,2, cdots , n) sono i valori previsti.

Il modello ottiene la migliore retta di regressione trovando il θ migliore1e θ2valori.

  • io 1 : intercettare
  • io 2 : coefficiente di x

Una volta trovato il miglior θ1e θ2valori, otteniamo la linea più adatta. Quindi, quando finalmente utilizzeremo il nostro modello per la previsione, esso predirà il valore di y per il valore di input di x.

Come aggiornare θ 1 e θ 2 valori per ottenere la linea più adatta?

Per ottenere la linea di regressione più adatta, il modello mira a prevedere il valore targethat{Y} tale che la differenza di errore tra il valore previstohat{Y} e il vero valore Y è minimo. Quindi, è molto importante aggiornare il θ1e θ2valori, per raggiungere il valore migliore che minimizzi l'errore tra il valore y previsto (pred) e il valore y reale (y).

minimizefrac{1}{n}sum_{i=1}^{n}(hat{y_i}-y_i)^2

Funzione di costo per la regressione lineare

IL funzione di costo o il funzione di perdita non è altro che l'errore o la differenza tra il valore previstohat{Y} e il vero valore Y.

Nella regressione lineare, il Errore quadratico medio (MSE) viene utilizzata la funzione di costo, che calcola la media degli errori quadratici tra i valori previstihat{y}_i e i valori effettivi{y}_i . Lo scopo è determinare i valori ottimali per l'intercetta heta_1 e il coefficiente della caratteristica di input heta_2 fornendo la linea più adatta per i punti dati forniti. L'equazione lineare che esprime questa relazione èhat{y}_i = heta_1 + heta_2x_i .

La funzione MSE può essere calcolata come:

ext{Cost function}(J) = frac{1}{n}sum_{n}^{i}(hat{y_i}-y_i)^2

Utilizzando la funzione MSE, viene applicato il processo iterativo di discesa del gradiente per aggiornare i valori di heta_1 & heta_2 . Ciò garantisce che il valore MSE converga ai minimi globali, indicando l'adattamento più accurato della linea di regressione lineare al set di dati.

Questo processo comporta la regolazione continua dei parametri ( heta_1) e ( heta_2) in base ai gradienti calcolati dal MSE. Il risultato finale è una linea di regressione lineare che riduce al minimo le differenze quadrate complessive tra i valori previsti e quelli effettivi, fornendo una rappresentazione ottimale della relazione sottostante nei dati.

Discesa del gradiente per la regressione lineare

Un modello di regressione lineare può essere addestrato utilizzando l'algoritmo di ottimizzazione discesa del gradiente modificando iterativamente i parametri del modello per ridurre il errore quadratico medio (MSE) del modello su un set di dati di training. Per aggiornare θ1e θ2valori al fine di ridurre la funzione Costo (minimizzando il valore RMSE) e ottenere la linea più adatta che il modello utilizza Gradient Descent. L'idea è di iniziare con θ casuale1e θ2valori e quindi aggiornare iterativamente i valori, raggiungendo il costo minimo.

Un gradiente non è altro che una derivata che definisce gli effetti sugli output della funzione con una piccola variazione sugli input.

Differenziamo la funzione di costo(J) rispetto a heta_1

egin {aligned} {J}’_{ heta_1} &=frac{partial J( heta_1, heta_2)}{partial heta_1} &= frac{partial}{partial heta_1} left[frac{1}{n} left(sum_{i=1}^{n}(hat{y}_i-y_i)^2 ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}2(hat{y}_i-y_i) left(frac{partial}{partial heta_1}(hat{y}_i-y_i) ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}2(hat{y}_i-y_i) left(frac{partial}{partial heta_1}( heta_1 + heta_2x_i-y_i) ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}2(hat{y}_i-y_i) left(1+0-0 ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}(hat{y}_i-y_i) left(2 ight ) ight] &= frac{2}{n}sum_{i=1}^{n}(hat{y}_i-y_i) end {aligned}

Differenziamo la funzione di costo(J) rispetto a heta_2

egin {aligned} {J}’_{ heta_2} &=frac{partial J( heta_1, heta_2)}{partial heta_2} &= frac{partial}{partial heta_2} left[frac{1}{n} left(sum_{i=1}^{n}(hat{y}_i-y_i)^2 ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}2(hat{y}_i-y_i) left(frac{partial}{partial heta_2}(hat{y}_i-y_i) ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}2(hat{y}_i-y_i) left(frac{partial}{partial heta_2}( heta_1 + heta_2x_i-y_i) ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}2(hat{y}_i-y_i) left(0+x_i-0 ight ) ight] &= frac{1}{n}left[sum_{i=1}^{n}(hat{y}_i-y_i) left(2x_i ight ) ight] &= frac{2}{n}sum_{i=1}^{n}(hat{y}_i-y_i)cdot x_i end {aligned}

Trovare i coefficienti di un'equazione lineare che meglio si adatta ai dati di addestramento è l'obiettivo della regressione lineare. Muovendosi nella direzione del gradiente negativo dell'errore quadratico medio rispetto ai coefficienti, è possibile modificare i coefficienti. E la rispettiva intercetta e coefficiente di X saranno sealpha è il tasso di apprendimento.

Discesa gradiente

egin{aligned} heta_1 &= heta_1 – alpha left( {J}’_{ heta_1} ight) &= heta_1 -alpha left( frac{2}{n}sum_{i=1}^{n}(hat{y}_i-y_i) ight) end{aligned} egin{aligned} heta_2 &= heta_2 – alpha left({J}’_{ heta_2} ight) &= heta_2 – alpha left(frac{2}{n}sum_{i=1}^{n}(hat{y}_i-y_i)cdot x_i ight) end{aligned}

Presupposti di regressione lineare semplice

La regressione lineare è uno strumento potente per comprendere e prevedere il comportamento di una variabile, tuttavia, deve soddisfare alcune condizioni per essere soluzioni accurate e affidabili.

  1. Linearità : Le variabili indipendenti e dipendenti hanno una relazione lineare tra loro. Ciò implica che i cambiamenti nella variabile dipendente seguono quelli nelle variabili indipendenti in modo lineare. Ciò significa che dovrebbe esserci una linea retta che può essere tracciata attraverso i punti dati. Se la relazione non è lineare, la regressione lineare non sarà un modello accurato.
  2. Indipendenza : Le osservazioni nel set di dati sono indipendenti l'una dall'altra. Ciò significa che il valore della variabile dipendente per un'osservazione non dipende dal valore della variabile dipendente per un'altra osservazione. Se le osservazioni non sono indipendenti, la regressione lineare non sarà un modello accurato.
  3. Omoschedasticità : Attraverso tutti i livelli delle variabili indipendenti, la varianza degli errori è costante. Ciò indica che l'importo delle variabili indipendenti non ha alcun impatto sulla varianza degli errori. Se la varianza dei residui non è costante, la regressione lineare non sarà un modello accurato.

    Omoschedasticità nella regressione lineare

  4. Normalità : I residui dovrebbero essere distribuiti normalmente. Ciò significa che i residui dovrebbero seguire una curva a campana. Se i residui non sono distribuiti normalmente, la regressione lineare non sarà un modello accurato.

Presupposti di regressione lineare multipla

Per la regressione lineare multipla, si applicano tutti e quattro i presupposti della regressione lineare semplice. Oltre a questo, di seguito ne riportiamo alcuni altri:

  1. Nessuna multicollinearità : Non esiste una correlazione elevata tra le variabili indipendenti. Ciò indica che esiste poca o nessuna correlazione tra le variabili indipendenti. La multicollinearità si verifica quando due o più variabili indipendenti sono altamente correlate tra loro, il che può rendere difficile determinare l'effetto individuale di ciascuna variabile sulla variabile dipendente. Se è presente multicollinearità, la regressione lineare multipla non sarà un modello accurato.
  2. Additività: Il modello presuppone che l'effetto dei cambiamenti in una variabile predittrice sulla variabile di risposta sia coerente indipendentemente dai valori delle altre variabili. Questa ipotesi implica che non vi sia alcuna interazione tra le variabili nei loro effetti sulla variabile dipendente.
  3. Selezione delle funzionalità: Nella regressione lineare multipla è essenziale selezionare attentamente le variabili indipendenti che verranno incluse nel modello. Includere variabili irrilevanti o ridondanti può portare a un overfitting e complicare l’interpretazione del modello.
  4. Adattamento eccessivo: L'overfitting si verifica quando il modello si adatta troppo fedelmente ai dati di addestramento, catturando rumore o fluttuazioni casuali che non rappresentano la vera relazione sottostante tra le variabili. Ciò può portare a scarse prestazioni di generalizzazione su dati nuovi e invisibili.

Multicollinearità

Multicollinearità è un fenomeno statistico che si verifica quando due o più variabili indipendenti in un modello di regressione multipla sono altamente correlate, rendendo difficile valutare gli effetti individuali di ciascuna variabile sulla variabile dipendente.

Il rilevamento della multicollinearità comprende due tecniche:

  • Matrice di correlazione: L'esame della matrice di correlazione tra le variabili indipendenti è un modo comune per rilevare la multicollinearità. Correlazioni elevate (vicine a 1 o -1) indicano una potenziale multicollinearità.
  • VIF (fattore di inflazione della varianza): Il VIF è una misura che quantifica quanto aumenta la varianza di un coefficiente di regressione stimato se i predittori sono correlati. Un VIF elevato (tipicamente superiore a 10) suggerisce multicollinearità.

Metriche di valutazione per la regressione lineare

Una varietà di misure di valutazione può essere utilizzato per determinare la forza di qualsiasi modello di regressione lineare. Queste metriche di valutazione spesso danno un’indicazione di quanto bene il modello stia producendo i risultati osservati.

Le misurazioni più comuni sono:

Errore quadratico medio (MSE)

Errore quadratico medio (MSE) è una metrica di valutazione che calcola la media delle differenze quadrate tra i valori effettivi e quelli previsti per tutti i punti dati. La differenza viene elevata al quadrato per garantire che le differenze negative e positive non si annullino a vicenda.

MSE = frac{1}{n}sum_{i=1}^{n}left ( y_i – widehat{y_{i}} ight )^2

Qui,

  • n è il numero di punti dati.
  • Eioè il valore effettivo o osservato per ithpunto dati.
  • widehat{y_{i}} è il valore previsto per ithpunto dati.

MSE è un modo per quantificare l’accuratezza delle previsioni di un modello. MSE è sensibile ai valori anomali poiché gli errori di grandi dimensioni contribuiscono in modo significativo al punteggio complessivo.

Errore assoluto medio (MAE)

Errore assoluto medio è una metrica di valutazione utilizzata per calcolare l'accuratezza di un modello di regressione. MAE misura la differenza media assoluta tra i valori previsti e i valori effettivi.

Matematicamente, il MAE è espresso come:

MAE =frac{1}{n} sum_{i=1}^{n}|Y_i – widehat{Y_i}|

Qui,

  • n è il numero di osservazioni
  • Eiorappresenta i valori effettivi.
  • widehat{Y_i} rappresenta i valori previsti

Un valore MAE inferiore indica prestazioni migliori del modello. Non è sensibile ai valori anomali poiché consideriamo le differenze assolute.

Errore quadratico medio (RMSE)

La radice quadrata della varianza dei residui è la Errore quadratico medio . Descrive quanto bene i punti dati osservati corrispondono ai valori attesi o all’adattamento assoluto del modello ai dati.


In notazione matematica, può essere espresso come:
RMSE=sqrt{frac{RSS}{n}}=sqrtfrac{{{sum_{i=2}^{n}(y^{actual}_{i}}- y_{i}^{predicted})^2}}{n}
Invece di dividere l’intero numero di punti dati nel modello per il numero di gradi di libertà, è necessario dividere la somma dei quadrati dei residui per ottenere una stima imparziale. Quindi, questa cifra viene definita errore standard residuo (RSE).

In notazione matematica, può essere espresso come:
RMSE=sqrt{frac{RSS}{n}}=sqrtfrac{{{sum_{i=2}^{n}(y^{actual}_{i}}- y_{i}^{predicted})^2}}{(n-2)}

RSME non è una metrica valida quanto R-quadrato. L’errore quadratico medio può fluttuare quando le unità delle variabili variano poiché il suo valore dipende dalle unità delle variabili (non è una misura normalizzata).

Coefficiente di determinazione (R quadrato)

R-quadrato è una statistica che indica quanta variazione il modello sviluppato può spiegare o catturare. È sempre compreso tra 0 e 1. In generale, quanto migliore è la corrispondenza del modello con i dati, tanto maggiore è il numero R quadrato.
In notazione matematica, può essere espresso come:
R^{2}=1-(^{frac{RSS}{TSS}})

  • Somma residua dei quadrati (RSS): The la somma dei quadrati del residuo per ciascun punto dati nel grafico o nei dati è nota come somma residua dei quadrati o RSS. È una misura della differenza tra il risultato osservato e quello previsto.
    RSS=sum_{i=2}^{n}(y_{i}-b_{0}-b_{1}x_{i})^{2}
  • Somma totale dei quadrati (TSS): La somma degli errori dei punti dati dalla media della variabile di risposta è nota come somma totale dei quadrati o TSS.
    TSS= sum_{}^{}(y-overline{y_{i}})^2

La metrica R al quadrato è una misura della proporzione della varianza nella variabile dipendente che spiega le variabili indipendenti nel modello.

Errore R quadrato corretto

R aggiustato2misura la proporzione della varianza nella variabile dipendente spiegata dalle variabili indipendenti in un modello di regressione. R-quadrato modificato tiene conto del numero di predittori nel modello e penalizza il modello per aver incluso predittori irrilevanti che non contribuiscono in modo significativo a spiegare la varianza nelle variabili dipendenti.

Matematicamente, aggiustato R2è espresso come:

Adjusted , R^2 = 1 – (frac{(1-R^2).(n-1)}{n-k-1})

Qui,

  • n è il numero di osservazioni
  • k è il numero di predittori nel modello
  • R2è coefficiente di determinazione

Il quadrato R corretto aiuta a prevenire l'adattamento eccessivo. Penalizza il modello con predittori aggiuntivi che non contribuiscono in modo significativo a spiegare la varianza della variabile dipendente.

differenza tra amore e simpatia

Implementazione Python della regressione lineare

Importa le librerie necessarie:

Python3 import pandas as pd import numpy as np import matplotlib.pyplot as plt import matplotlib.axes as ax from matplotlib.animation import FuncAnimation>

Caricare il set di dati e separare le variabili di input e di destinazione

Ecco il collegamento per il set di dati: Collegamento al set di dati

Python3 url = 'https://media.techcodeview.com data = pd.read_csv(url) data # Drop the missing values data = data.dropna() # training dataset and labels train_input = np.array(data.x[0:500]).reshape(500, 1) train_output = np.array(data.y[0:500]).reshape(500, 1) # valid dataset and labels test_input = np.array(data.x[500:700]).reshape(199, 1) test_output = np.array(data.y[500:700]).reshape(199, 1)>

Costruisci il modello di regressione lineare e traccia la retta di regressione

Passaggi:

  • Nella propagazione in avanti, la funzione di regressione lineare Y=mx+c viene applicata assegnando inizialmente un valore casuale del parametro (m & c).
  • Abbiamo scritto la funzione per trovare la funzione di costo, ovvero la media
Python3 class LinearRegression: def __init__(self): self.parameters = {} def forward_propagation(self, train_input): m = self.parameters['m'] c = self.parameters['c'] predictions = np.multiply(m, train_input) + c return predictions def cost_function(self, predictions, train_output): cost = np.mean((train_output - predictions) ** 2) return cost def backward_propagation(self, train_input, train_output, predictions): derivatives = {} df = (predictions-train_output) # dm= 2/n * mean of (predictions-actual) * input dm = 2 * np.mean(np.multiply(train_input, df)) # dc = 2/n * mean of (predictions-actual) dc = 2 * np.mean(df) derivatives['dm'] = dm derivatives['dc'] = dc return derivatives def update_parameters(self, derivatives, learning_rate): self.parameters['m'] = self.parameters['m'] - learning_rate * derivatives['dm'] self.parameters['c'] = self.parameters['c'] - learning_rate * derivatives['dc'] def train(self, train_input, train_output, learning_rate, iters): # Initialize random parameters self.parameters['m'] = np.random.uniform(0, 1) * -1 self.parameters['c'] = np.random.uniform(0, 1) * -1 # Initialize loss self.loss = [] # Initialize figure and axis for animation fig, ax = plt.subplots() x_vals = np.linspace(min(train_input), max(train_input), 100) line, = ax.plot(x_vals, self.parameters['m'] * x_vals + self.parameters['c'], color='red', label='Regression Line') ax.scatter(train_input, train_output, marker='o', color='green', label='Training Data') # Set y-axis limits to exclude negative values ax.set_ylim(0, max(train_output) + 1) def update(frame): # Forward propagation predictions = self.forward_propagation(train_input) # Cost function cost = self.cost_function(predictions, train_output) # Back propagation derivatives = self.backward_propagation( train_input, train_output, predictions) # Update parameters self.update_parameters(derivatives, learning_rate) # Update the regression line line.set_ydata(self.parameters['m'] * x_vals + self.parameters['c']) # Append loss and print self.loss.append(cost) print('Iteration = {}, Loss = {}'.format(frame + 1, cost)) return line, # Create animation ani = FuncAnimation(fig, update, frames=iters, interval=200, blit=True) # Save the animation as a video file (e.g., MP4) ani.save('linear_regression_A.webp'false'>Python3 #Esempio di utilizzo linear_reg = LinearRegression() parametri, perdita = linear_reg.train(train_input, train_output, 0.0001, 20) Output: Iterazione = 1, Perdita = 9130.407560462196 Iterazione = 1, Perdita = 1107.1996742908998 Iterazione = 1, Perdita = 140.31580 932842422 Iterazione = 1, Perdita = 23,795780526084116 Iterazione = 2, Perdita = 9,753848205147605 Iterazione = 3, Perdita = 8,061641745006835 Iterazione = 4, Perdita = 7,8577116490914864 Iterazione = 5, Perdita = 7,8331 350515579015 Iterazione = 6, Perdita = 7,830172502503967 Iterazione = 7, Perdita = 7,829814681591015 Iterazione = 8 , Perdita = 7,829770758846183 Iterazione = 9, Perdita = 7,829764664327399 Iterazione = 10, Perdita = 7,829763128602258 Iterazione = 11, Perdita = 7,829762142342088 Iterazione = 12, Perdita = 7,8297 61222379141 Iterazione = 13, Perdita = 7,829760310486438 Iterazione = 14, Perdita = 7,829759399646989 Iterazione = 15, Perdita = 7,829758489015161 Iterazione = 16, Perdita = 7,829757578489033 Iterazione = 17, Perdita = 7,8297566668056319 Iterazione = 18, Perdita = 7,829755757715535 Iterazione = 19, Perdita = 7,82975 4847466484 Iterazione = 20, Perdita = 7,829753937309139 Linea di regressione lineareLa linea di regressione lineare fornisce preziose informazioni sulla relazione tra le due variabili. Rappresenta la linea più adatta che cattura la tendenza generale di come una variabile dipendente (Y) cambia in risposta alle variazioni di una variabile indipendente (X). Linea di regressione lineare positiva: una linea di regressione lineare positiva indica una relazione diretta tra la variabile indipendente (X) e la variabile dipendente (Y). Ciò significa che all’aumentare del valore di X aumenta anche il valore di Y. La pendenza di una linea di regressione lineare positiva è positiva, il che significa che la linea è inclinata verso l'alto da sinistra a destra. Linea di regressione lineare negativa: una linea di regressione lineare negativa indica una relazione inversa tra la variabile indipendente (X) e la variabile dipendente (Y). Ciò significa che all’aumentare del valore di X, il valore di Y diminuisce. La pendenza di una linea di regressione lineare negativa è negativa, il che significa che la linea è inclinata verso il basso da sinistra a destra. Tecniche di regolarizzazione per modelli lineari Regressione lazo (regolarizzazione L1) La regressione lazo è una tecnica utilizzata per regolarizzare un modello di regressione lineare, aggiunge una penalità termine alla funzione obiettivo della regressione lineare per evitare un overfitting . La funzione obiettivo dopo aver applicato la regressione lazo è: il primo termine è la perdita dei minimi quadrati, che rappresenta la differenza al quadrato tra i valori previsti e quelli effettivi. il secondo termine è il termine di regolarizzazione L1, penalizza la somma dei valori assoluti del coefficiente di regressione θj. Regressione della cresta (regolarizzazione L2) La regressione della cresta è una tecnica di regressione lineare che aggiunge un termine di regolarizzazione all'obiettivo lineare standard. Ancora una volta, l’obiettivo è prevenire l’overfitting penalizzando un coefficiente elevato nell’equazione di regressione lineare. È utile quando il set di dati presenta multicollinearità in cui le variabili predittive sono altamente correlate. La funzione obiettivo dopo aver applicato la regressione della cresta è: il primo termine è la perdita dei minimi quadrati, che rappresenta la differenza al quadrato tra i valori previsti e quelli effettivi. il secondo termine è il termine di regolarizzazione L1, penalizza la somma dei quadrati dei valori del coefficiente di regressione θj. Regressione rete elastica La regressione rete elastica è una tecnica di regolarizzazione ibrida che combina la potenza della regolarizzazione L1 e L2 nell'obiettivo di regressione lineare. il primo termine è la perdita minima quadrata. il secondo termine è la regolarizzazione L1 e il terzo è la regressione della cresta.???? è la forza complessiva della regolarizzazione. α controlla il mix tra la regolarizzazione L1 e L2. Applicazioni della regressione lineareLa regressione lineare viene utilizzata in molti campi diversi, tra cui finanza, economia e psicologia, per comprendere e prevedere il comportamento di una particolare variabile. Ad esempio, in finanza, la regressione lineare potrebbe essere utilizzata per comprendere la relazione tra il prezzo delle azioni di una società e i suoi utili o per prevedere il valore futuro di una valuta in base alla sua performance passata. Vantaggi e svantaggi della regressione lineareVantaggi della regressione lineareLa regressione lineare è un algoritmo relativamente semplice, che lo rende facile da comprendere e implementare. I coefficienti del modello di regressione lineare possono essere interpretati come la variazione nella variabile dipendente per una variazione di un'unità nella variabile indipendente, fornendo informazioni sulle relazioni tra le variabili. La regressione lineare è efficiente dal punto di vista computazionale e può gestire in modo efficace set di dati di grandi dimensioni. Può essere addestrato rapidamente su set di dati di grandi dimensioni, rendendolo adatto per applicazioni in tempo reale. La regressione lineare è relativamente resistente ai valori anomali rispetto ad altri algoritmi di apprendimento automatico. I valori anomali possono avere un impatto minore sulle prestazioni complessive del modello. La regressione lineare spesso funge da buon modello di base per il confronto con algoritmi di machine learning più complessi. La regressione lineare è un algoritmo consolidato con una ricca storia ed è ampiamente disponibile in vari sistemi di machine learning. librerie e pacchetti software. Svantaggi della regressione lineare La regressione lineare presuppone una relazione lineare tra le variabili dipendenti e indipendenti. Se la relazione non è lineare, il modello potrebbe non funzionare bene. La regressione lineare è sensibile alla multicollinearità, che si verifica quando esiste un'elevata correlazione tra variabili indipendenti. La multicollinearità può aumentare la varianza dei coefficienti e portare a previsioni del modello instabili. La regressione lineare presuppone che le caratteristiche siano già in una forma adatta per il modello. Potrebbe essere necessaria l'ingegneria delle caratteristiche per trasformare le caratteristiche in un formato che possa essere effettivamente utilizzato dal modello. La regressione lineare è suscettibile sia all'overfitting che all'underfitting. L'overfitting si verifica quando il modello apprende troppo bene i dati di addestramento e non riesce a generalizzare ai dati invisibili. L'underfitting si verifica quando il modello è troppo semplice per catturare le relazioni sottostanti nei dati. La regressione lineare fornisce un potere esplicativo limitato per relazioni complesse tra variabili. Potrebbero essere necessarie tecniche di machine learning più avanzate per approfondimenti più approfonditi. Conclusione La regressione lineare è un algoritmo fondamentale di machine learning ampiamente utilizzato da molti anni grazie alla sua semplicità, interpretabilità ed efficienza. È uno strumento prezioso per comprendere le relazioni tra variabili e fare previsioni in una varietà di applicazioni. Tuttavia, è importante essere consapevoli dei suoi limiti, come il presupposto di linearità e sensibilità alla multicollinearità. Quando queste limitazioni vengono attentamente considerate, la regressione lineare può essere un potente strumento per l'analisi e la previsione dei dati. Regressione lineare – Domande frequenti (FAQ)Cosa significa regressione lineare in termini semplici?La regressione lineare è un algoritmo di apprendimento automatico supervisionato che prevede una variabile target continua basata su una o più variabili indipendenti. Presuppone una relazione lineare tra le variabili dipendenti e indipendenti e utilizza un'equazione lineare per modellare questa relazione. Perché usiamo la regressione lineare? La regressione lineare viene comunemente utilizzata per: Prevedere valori numerici in base alle caratteristiche di input Prevedere tendenze future basate su dati storici Identificare correlazioni tra variabili Comprendere l'impatto di diversi fattori su un particolare risultatoCome utilizzare la regressione lineare? Utilizzare la regressione lineare adattando una linea per prevedere la relazione tra le variabili , comprendere i coefficienti e fare previsioni basate sui valori di input per un processo decisionale informato. Perché si chiama regressione lineare? La regressione lineare prende il nome dall'uso di un'equazione lineare per modellare la relazione tra le variabili, che rappresenta una linea retta adattata ai punti dati. Quali sono gli esempi di regressione lineare? La previsione dei prezzi delle case in base alla metratura, la stima dei punteggi degli esami in base alle ore di studio e la previsione delle vendite utilizzando la spesa pubblicitaria sono esempi di applicazioni di regressione lineare.>