Polyfit numpy

Polyfit numpy
La regressione lineare è il primo passo per imparare la scienza dei dati. Quindi, anche se sei nuovo in questo campo, devi capire questi concetti perché questi algoritmi sono utilizzati principalmente dai ricercatori di scienze dei dati. Questi algoritmi sono anche facili da capire per iniziare il viaggio di apprendimento automatico.

In questo tutorial, vedremo il modello di regressione Numpy (Polyfit).

La funzione numpy.Polyfit () trova la linea di adattamento migliore minimizzando la somma di errori quadrati. Questo metodo accetta tre parametri:

  1. X - Dati di input
  2. Dati di output Y
  3. Valore del grado polinomiale (intero)

Quindi, iniziamo il processo passo-passo per utilizzare il metodo Polyfit.

Passo 1: Importa tutte le librerie e i pacchetti richiesti per eseguire questo programma.

Linea 91: importiamo la libreria Numpy e Matplotlib. IL Polyfit arriva automaticamente sotto il numpy, quindi non c'è bisogno di importare. Il matplotlib viene utilizzato per tracciare i dati e Matplotlib inline viene utilizzato per disegnare il grafico all'interno del taccuino Jupyter stesso.

Importa Numpy come NP
Importa matplotlib.Pyplot come Plt
%Matplotlib inline

Passo 2: Ora, il nostro prossimo passo è creare set di dati (X e Y).

Riga 83: generamo casualmente i dati X e Y.

X = [28, 8, 11, 37, 15, 25, 51, 11, 32, 34, 43, 2, 40, 16, 40, 25, 40, 17, 21, 57]
Y = [8, 8, 9, 72, 22, 51, 85, 4, 75, 48, 72, 1, 62, 37, 75, 42, 75, 47, 57, 95]

Passaggio 3: Tracciare la funzione (X) e Target (Y) sul grafico come mostrato di seguito:

Plt.dispersione (x, y)

Passaggio 4: In questo passaggio, adatteremo la linea sui dati X e Y.

Questo passaggio è molto facile perché useremo il concetto del metodo Polyfit. Il metodo Polyfit viene fornito direttamente con il numpy come mostrato sopra. Questo metodo accetta tre parametri:

  1. X - Dati di input
  2. Dati di output Y
  3. Valore del grado polinomiale (intero)

In questo programma, stiamo usando il valore di grado polinomiale 1, che afferma che è un polinomio di primo grado. Ma possiamo anche usarlo per il polinomio di secondo e terzo grado.

1 modello = NP.Polyfit (x, y, 1)

Quando premiamo l'invio, il Polyfit calcola il modello di regressione lineare e memorizza al modello variabile laterale di destra.

Logica dietro la linea di adattamento

Quindi, possiamo vedere che solo colpire la chiave di inserzione e abbiamo ottenuto il modello di regressione lineare. Quindi ora stiamo pensando che ciò che funziona effettivamente dietro questo metodo e come si adattano alla linea.

Il metodo che funziona dietro il metodo Polyfit si chiama metodo minimo quadrata ordinario. Alcune persone lo hanno chiamato con il nome corto Ols. È comunemente usato dagli utenti per adattarsi alla linea. Il motivo dietro è molto facile da usare e dà anche precisione al di sopra del 90%.

Vediamo come si comportano gli OLS:

Innanzitutto, dobbiamo conoscere l'errore. L'errore calcola attraverso la differenza tra i dati X e Y.

Per esempio, Fondiamo una linea sul modello di regressione che sembra sotto:

I punti blu sono i punti dati e la linea rossa che ci inseriamo sui punti dati utilizzando il metodo Polyfit.

Supponiamo che x = 24 e y = 58

Quando adattiamo la linea, la linea calcola il valore di y = 44.3. La differenza tra il valore effettivo e calcolato è l'errore per il punto dati specifico.

Quindi, il metodo OLS (minimo quadrato) calcola l'adattamento usando i passaggi seguenti:

1. Calcola l'errore tra il modello montato e i punti dati.

2. Quindi quadratiamo ciascuno degli errori dei punti dati.

3. Somma tutti gli errori di punti dati quadrati.

4. Infine, identifica la linea in cui questa somma dell'errore quadrata è minima.

Quindi, il Polyfit utilizza i metodi sopra per adattarsi alla linea.

Passaggio 5: Modello

Abbiamo fatto la nostra parte di codifica dell'apprendimento automatico. Ora, possiamo controllare i valori di X e Y che sono archiviati nelle variabili del modello. Per controllare il valore xey, dobbiamo stampare il modello come mostrato di seguito:

Infine, abbiamo ottenuto un'equazione di contorno:

y = 1.75505212 * x - 1.27719099

Usando questa equazione lineare, possiamo ottenere il valore di y.

L'equazione lineare di cui sopra può anche essere risolta usando il metodo Ploy1d () come sotto:

prevedere = np.poli1d (modello)
X_VALUE = 20
prevedere (x_value)

Abbiamo ottenuto il risultato 33.82385131766588.

Abbiamo anche ottenuto lo stesso risultato dal calcolo manuale:

y = 1.75505212 * 20 - 1.27719099

y = 33.82385131766588

Quindi, entrambi i risultati di cui sopra mostrano che il nostro modello si adatta correttamente alla linea.

Passaggio 6: Precisione del modello

Possiamo anche controllare l'accuratezza del modello, o fornisce risultati corretti o no. L'accuratezza del modello può essere calcolata da R-Squared (R2). Il valore di R-Squared (R2) è compreso tra 0 e 1. Il risultato vicino a 1 mostrerà che l'accuratezza del modello è elevata. Quindi, controlliamo la precisione del modello sopra. Importeremo un'altra libreria, Sklearn, come mostrato di seguito:

da Sklearn.Metriche Importa R2_SCORE
R2_SCORE (Y, previsione (x))

Il risultato mostra che è vicino a 1, quindi la sua precisione è alta.

Passaggio 7: Trama il modello

Il complotto è il metodo per vedere visivamente la linea montata sul modello sui punti dati. Fornisce un'immagine chiara del modello.

x_axis = intervallo (0, 60)
y_axis = prevet (x_axis)
Plt.dispersione (x, y)
Plt.Plot (x_axis, y_axis, c = 'g')

Di seguito è riportata una rapida spiegazione per il metodo della trama sopra:

Linea 1: È la gamma che vogliamo visualizzare sulla trama. Nel nostro codice, stiamo utilizzando il valore dell'intervallo da 0 a 60.

Linea 2: Verranno calcolati tutti i valori di intervallo da 0 a 60.

Riga 3: Passiamo quei set di dati originali X e Y nel metodo Scatter.

Riga 4: Finalmente tracciamo il nostro grafico e la linea verde è la linea di adattamento come mostrato nel grafico sopra.

Conclusione

In questo articolo, abbiamo imparato il modello di regressione lineare che è l'inizio del viaggio dell'apprendimento automatico. Esistono numerosi modelli di regressione che sono spiegati in un altro articolo. Qui, abbiamo un set di dati pulito perché era un manichino, ma in progetti nella vita reale, potresti ottenere un set di dati sporco e devi fare ingegneria su questo per pulire il set di dati da utilizzare nel modello. Se non capisci appieno questo tutorial, anche questo ti aiuta a imparare facilmente un altro modello di regressione.

Il modello di regressione della linea è l'algoritmo più comune utilizzato dalla scienza dei dati. Devi avere idee sul modello di regressione se vuoi avere la tua carriera in questo campo. Quindi, tieniti in contatto e presto torneremo con un nuovo articolo di Data Science.

Il codice per questo articolo è disponibile sul collegamento GitHub:
https: // github.com/shekharpandey89/linear-regression-in-python-use-numpy-polyfit