Lo scopo dell'articolo è fornire supporto ai data scientist principianti. IN
Perché ha senso prestare particolare attenzione alla formula ?
È con l'equazione di matrice che nella maggior parte dei casi si inizia a familiarizzare con la regressione lineare. Allo stesso tempo, i calcoli dettagliati su come è stata derivata la formula sono rari.
Ad esempio, nei corsi di machine learning di Yandex, quando agli studenti viene introdotta la regolarizzazione, viene loro offerto di utilizzare le funzioni della libreria sklearn, mentre non viene menzionata una parola sulla rappresentazione matriciale dell'algoritmo. È in questo momento che alcuni ascoltatori potrebbero voler comprendere questo problema in modo più dettagliato: scrivere codice senza utilizzare funzioni già pronte. E per fare ciò, devi prima presentare l'equazione con un regolarizzatore sotto forma di matrice. Questo articolo consentirà a coloro che desiderano padroneggiare tali abilità. Iniziamo.
Condizioni iniziali
Indicatori di obiettivo
Abbiamo una gamma di valori target. Ad esempio, l’indicatore target potrebbe essere il prezzo di qualsiasi asset: petrolio, oro, grano, dollaro, ecc. Allo stesso tempo, per numero di valori dell'indicatore target intendiamo il numero di osservazioni. Tali osservazioni potrebbero essere, ad esempio, i prezzi mensili del petrolio per l'anno, ovvero avremo 12 valori target. Iniziamo introducendo la notazione. Indichiamo ciascun valore dell'indicatore target come . In totale abbiamo osservazioni, il che significa che possiamo rappresentare le nostre osservazioni come .
Regressori
Assumeremo che ci siano fattori che in una certa misura spiegano i valori dell’indicatore target. Ad esempio, il tasso di cambio dollaro/rublo è fortemente influenzato dal prezzo del petrolio, dal tasso della Federal Reserve, ecc. Tali fattori sono chiamati regressori. Allo stesso tempo, ciascun valore dell’indicatore target deve corrispondere a un valore regressore, ovvero se abbiamo 12 indicatori target per ogni mese nel 2018, allora dovremmo avere anche 12 valori regressori per lo stesso periodo. Indichiamo i valori di ciascun regressore con . Lasciamo che nel nostro caso ci sia regressori (es. fattori che influenzano i valori degli indicatori target). Ciò significa che i nostri regressori possono essere presentati come segue: per il primo regressore (ad esempio, il prezzo del petrolio): , per il 2° regressore (ad esempio, il tasso della Fed): , per "-esimo" regressore:
Dipendenza degli indicatori target dai regressori
Supponiamo che la dipendenza dell'indicatore target dai regressori"L'osservazione può essere espressa attraverso un'equazione di regressione lineare della forma:
Dove - "-th" valore del regressore da 1 a ,
— numero di regressori da 1 a
— coefficienti angolari, che rappresentano l'entità della variazione media dell'indicatore obiettivo calcolato al variare del regressore.
In altre parole, siamo per tutti (tranne ) del regressore determiniamo il “nostro” coefficiente , quindi moltiplicare i coefficienti per i valori dei regressori "th" osservazione, di conseguenza otteniamo una certa approssimazione "-th" indicatore di destinazione.
Pertanto, dobbiamo selezionare tali coefficienti , a cui si approssimano i valori della nostra funzione sarà posizionato il più vicino possibile ai valori dell'indicatore target.
Valutare la qualità della funzione approssimante
Determineremo la valutazione della qualità della funzione approssimante utilizzando il metodo dei minimi quadrati. La funzione di valutazione della qualità in questo caso assumerà la seguente forma:
Dobbiamo selezionare tali valori dei coefficienti $w$ per i quali il valore sarà il più piccolo.
Conversione dell'equazione in forma matriciale
Rappresentazione vettoriale
Per cominciare, per semplificarti la vita, dovresti prestare attenzione all'equazione di regressione lineare e notare che il primo coefficiente non viene moltiplicato per alcun regressore. Allo stesso tempo, quando convertiamo i dati in forma matriciale, la circostanza sopra menzionata complicherà seriamente i calcoli. A questo proposito si propone di introdurre un altro regressore per il primo coefficiente e equipararlo a uno. O meglio, ogni"equiparare l'esimo valore di questo regressore a uno - dopotutto, se moltiplicato per uno, nulla cambierà dal punto di vista del risultato dei calcoli, ma dal punto di vista delle regole per il prodotto delle matrici, il nostro tormento sarà notevolmente ridotto.
Ora, per il momento, per semplificare il materiale, supponiamo di averne uno solo"-esima" osservazione. Quindi, immaginate i valori dei regressori”-th" osservazioni come vettore . Vettore ha dimensione Cioè, righe e 1 colonna:
Rappresentiamo i coefficienti richiesti come un vettore , avente dimensione :
Equazione di regressione lineare per "-th" l'osservazione assumerà la forma:
La funzione per valutare la qualità di un modello lineare assumerà la forma:
Tieni presente che in conformità con le regole della moltiplicazione delle matrici, dovevamo trasporre il vettore .
Rappresentazione matriciale
Come risultato della moltiplicazione dei vettori, otteniamo il numero: , cosa che c'è da aspettarselo. Questo numero è l'approssimazione "-th" indicatore di destinazione. Ma abbiamo bisogno di un’approssimazione non solo di un valore obiettivo, ma di tutti. Per farlo scriviamo tutto”-th" regressori in formato matrice . La matrice risultante ha la dimensione :
Ora l'equazione di regressione lineare assumerà la forma:
Indichiamo i valori degli indicatori target (all ) per vettore dimensione :
Ora possiamo scrivere l'equazione per valutare la qualità di un modello lineare in formato matriciale:
In realtà da questa formula si ottiene ulteriormente la formula a noi nota
Come è fatto? Si aprono le parentesi, si effettua la differenziazione, si trasformano le espressioni risultanti, ecc., ed è esattamente ciò che faremo ora.
Trasformazioni di matrici
Apriamo le parentesi
Prepariamo un'equazione per la derivazione
Per fare ciò, effettueremo alcune trasformazioni. Nei calcoli successivi sarà più conveniente per noi se il vettore sarà rappresentato all'inizio di ciascun prodotto nell'equazione.
Conversione 1
Come è successo? Per rispondere a questa domanda basta guardare le dimensioni delle matrici da moltiplicare e vedere che in uscita otteniamo un numero o meno .
Annotiamo le dimensioni delle espressioni di matrice.
Conversione 2
Scriviamolo in modo simile alla trasformazione 1
In uscita otteniamo un'equazione che dobbiamo differenziare:
Differenziamo la funzione di valutazione della qualità del modello
Differenziamo rispetto al vettore :
Domande sul perché non dovrebbe esserci, ma esamineremo più in dettaglio le operazioni per determinare le derivate nelle altre due espressioni.
Differenziazione 1
Espandiamo la differenziazione:
Per determinare la derivata di una matrice o di un vettore, devi guardare cosa c'è al loro interno. Guardiamo:
Indichiamo il prodotto di matrici attraverso la matrice . Matrice quadrato e inoltre è simmetrico. Queste proprietà ci saranno utili in seguito, ricordiamocele. Matrice ha dimensione :
Ora il nostro compito è moltiplicare correttamente i vettori per la matrice e non ottenere “due volte due fa cinque”, quindi concentriamoci e stiamo estremamente attenti.
Tuttavia, abbiamo ottenuto un'espressione complessa! In effetti, abbiamo un numero: uno scalare. E ora passiamo davvero alla differenziazione. È necessario trovare la derivata dell'espressione risultante per ciascun coefficiente e ottieni il vettore di dimensione come output . Per ogni evenienza, scriverò le procedure per azione:
1) differenziare per , noi abbiamo:
2) differenziare per , noi abbiamo:
3) differenziare per , noi abbiamo:
L'output è il vettore di dimensione promesso :
Se osservi il vettore più da vicino, noterai che gli elementi sinistro e destro corrispondente del vettore possono essere raggruppati in modo tale che, di conseguenza, un vettore possa essere isolato dal vettore presentato la dimensione . Ad esempio, (elemento sinistro della linea superiore del vettore) (l'elemento destro della linea superiore del vettore) può essere rappresentato come E - come eccetera. su ogni riga. Raggruppiamo:
Eliminiamo il vettore e in uscita otteniamo:
Ora diamo uno sguardo più da vicino alla matrice risultante. La matrice è la somma di due matrici :
Ricordiamo che poco prima abbiamo notato un'importante proprietà della matrice - è simmetrico. Sulla base di questa proprietà, possiamo dire con sicurezza che l'espressione uguale . Ciò può essere facilmente verificato espandendo il prodotto delle matrici elemento per elemento . Non lo faremo qui, chi è interessato può verificarlo da solo.
Torniamo alla nostra espressione. Dopo le nostre trasformazioni, è risultato come volevamo vederlo:
Abbiamo quindi completato la prima differenziazione. Passiamo alla seconda espressione.
Differenziazione 2
Seguiamo il sentiero battuto. Sarà molto più breve del precedente, quindi non allontanarti troppo dallo schermo.
Espandiamo i vettori e la matrice elemento per elemento:
Togliamo per un po' questi due dai calcoli: non giocano un ruolo importante, poi li rimetteremo al loro posto. Moltiplichiamo i vettori per la matrice. Prima di tutto moltiplichiamo la matrice vettore , non abbiamo restrizioni qui. Otteniamo il vettore dimensione :
Eseguiamo la seguente azione: moltiplichiamo il vettore al vettore risultante. All'uscita ci aspetterà il numero:
Poi lo differenziamo. In uscita otteniamo un vettore di dimensione :
Mi ricorda qualcosa? Giusto! Questo è il prodotto della matrice vettore .
Pertanto, la seconda differenziazione è completata con successo.
Invece di una conclusione
Ora sappiamo come è arrivata all’uguaglianza .
Infine, descriveremo un modo rapido per trasformare le formule di base.
Valutiamo la qualità del modello secondo il metodo dei minimi quadrati:
Differenziamo l'espressione risultante:
Letteratura
Fonti Internet:
1)
2)
3)
4)
Libri di testo, raccolte di problemi:
1) Dispense delle lezioni di matematica superiore: corso completo / D.T. Scritto – 4a ed. – M.: Iris-press, 2006
2) Analisi di regressione applicata / N. Draper, G. Smith - 2a ed. – M.: Finanza e Statistica, 1986 (traduzione dall'inglese)
3) Problemi per la risoluzione di equazioni di matrici:
Fonte: habr.com