Ultimo aggiornamento del 9 agosto 2019
- Che cos’è l’algebra lineare?
- Panoramica del tutorial
- Hai bisogno di aiuto con Algebra lineare per l’apprendimento automatico?
- Algebra lineare
- Algebra lineare numerica
- Algebra lineare e statistica
- Applicazioni dell’algebra lineare
- Tutorial sull’algebra lineare
- Extensions
- Altra lettura
- Libri
- Articoli
- Sommario
- Get a Handle on Linear Algebra for Machine Learning!
- Sviluppa una comprensione operativa dell’algebra lineare
- Finalmente comprendi la matematica dei dati
Che cos’è l’algebra lineare?
L’algebra lineare è un campo della matematica che è universalmente riconosciuto come un prerequisito per una più profonda comprensione del machine learning.
Anche se l’algebra lineare è un vasto campo con molte teorie e scoperte esoteriche, gli strumenti e le notazioni prese dal campo sono pratiche per i professionisti dell’apprendimento automatico. Con una solida base di cos’è l’algebra lineare, è possibile concentrarsi solo sulle parti buone o rilevanti.
In questo tutorial, scoprirete cos’è esattamente l’algebra lineare da una prospettiva di apprendimento automatico.
Dopo aver completato questo tutorial, saprete:
- L’algebra lineare è la matematica dei dati.
- L’algebra lineare ha avuto un forte impatto nel campo della statistica.
- L’algebra lineare è alla base di molti strumenti matematici pratici, come le serie di Fourier e la computer grafica.
Avvia il tuo progetto con il mio nuovo libro Linear Algebra for Machine Learning, che include tutorial passo dopo passo e i file del codice sorgente Python per tutti gli esempi.
Iniziamo.
A Gentle Introduction to Linear Algebra
Foto di Steve Corey, alcuni diritti riservati.
Panoramica del tutorial
Questo tutorial è diviso in 4 parti; esse sono:
- Algebra lineare
- Algebra lineare numerica
- Algebra lineare e statistica
- Applicazioni dell’algebra lineare
Hai bisogno di aiuto con Algebra lineare per l’apprendimento automatico?
Prendi ora il mio corso crash gratuito di 7 giorni via email (con codice di esempio).
Clicca per iscriverti e ottenere anche una versione gratuita del corso in PDF Ebook.
Scarica il tuo mini-corso gratuito
Algebra lineare
L’algebra lineare è un ramo della matematica, ma la verità è che l’algebra lineare è la matematica dei dati. Matrici e vettori sono il linguaggio dei dati.
L’algebra lineare riguarda le combinazioni lineari. Cioè, usare l’aritmetica su colonne di numeri chiamati vettori e matrici di numeri chiamate matrici, per creare nuove colonne e matrici di numeri. L’algebra lineare è lo studio di linee e piani, spazi vettoriali e mappature che sono necessari per le trasformazioni lineari.
È un campo di studio relativamente giovane, essendo stato inizialmente formalizzato nel 1800 per trovare incognite in sistemi di equazioni lineari. Un’equazione lineare è solo una serie di termini e operazioni matematiche in cui alcuni termini sono sconosciuti; per esempio:
1
|
y = 4 * x + 1
|
Equazioni come questa sono lineari in quanto descrivono una linea su un grafico a duedue dimensioni. La linea deriva dall’inserimento di diversi valori nell’incognita x per scoprire cosa fa l’equazione o il modello al valore di y.
Possiamo mettere in fila un sistema di equazioni con la stessa forma con due o più incognite; per esempio:
1
2
3
4
|
y = 0.1 * x1 + 0,4 * x2
y = 0,3 * x1 + 0,9 * x2
y = 0,2 * x1 + 0,3 * x2
…
|
La colonna di valori y può essere presa come un vettore di colonne di uscite dall’equazione. Le due colonne di valori in virgola mobile sono le colonne di dati, diciamo a1 e a2, e possono essere prese come una matrice A. I due valori incogniti x1 e x2 possono essere presi come i coefficienti dell’equazione e insieme formano un vettore di incognite b da risolvere. Possiamo scrivere questo in modo compatto usando la notazione dell’algebra lineare come:
1
|
y = A . b
|
I problemi di questa forma sono generalmente difficili da risolvere perché ci sono più incognite (qui ne abbiamo 2) che equazioni da risolvere (qui ne abbiamo 3). Inoltre, spesso non c’è una singola linea che possa soddisfare tutte le equazioni senza errori. I sistemi che descrivono problemi a cui siamo spesso interessati (come una regressione lineare) possono avere un numero infinito di soluzioni.
Questo dà un piccolo assaggio del nucleo stesso dell’algebra lineare che ci interessa come professionisti dell’apprendimento automatico. Gran parte del resto delle operazioni servono a rendere questo problema e problemi simili più facili da capire e risolvere.
Algebra lineare numerica
L’applicazione dell’algebra lineare nei computer è spesso chiamata algebra lineare numerica.
L’algebra lineare “numerica” è davvero algebra lineare applicata.
– Pagina ix, Algebra lineare numerica, 1997.
E’ più che la semplice implementazione di operazioni di algebra lineare in librerie di codice; include anche la gestione attenta dei problemi della matematica applicata, come il lavoro con la limitata precisione in virgola mobile dei computer digitali.
I computer sono bravi a eseguire calcoli di algebra lineare, e gran parte della dipendenza dalle unità di elaborazione grafica (GPU) da parte dei moderni metodi di apprendimento automatico come il deep learning è dovuta alla loro capacità di calcolare velocemente le operazioni di algebra lineare.
Efficienti implementazioni di operazioni vettoriali e matriciali sono state originariamente implementate nel linguaggio di programmazione FORTRAN negli anni ’70 e ’80 e molto codice, o codice portato da quelle implementazioni, è alla base di gran parte dell’algebra lineare eseguita utilizzando linguaggi di programmazione moderni, come Python.
Tre popolari librerie open source di algebra lineare numerica che implementano queste funzioni sono:
- Linear Algebra Package, o LAPACK.
- Basic Linear Algebra Subprograms, o BLAS (uno standard per le librerie di algebra lineare).
- Automatically Tuned Linear Algebra Software, o ATLAS.
Spesso, quando state calcolando operazioni di algebra lineare direttamente o indirettamente attraverso algoritmi di ordine superiore, il vostro codice è molto probabile che si abbassi per usare una di queste, o simili librerie di algebra lineare. Il nome di una o più di queste librerie sottostanti potrebbe esservi familiare se avete installato o compilato una qualsiasi delle librerie numeriche di Python come SciPy e NumPy.
Algebra lineare e statistica
L’algebra lineare è uno strumento prezioso in altri rami della matematica, specialmente nella statistica.
Di solito ci si aspetta che gli studenti che studiano statistica abbiano visto almeno un semestre di algebra lineare (o algebra applicata) a livello universitario.
– Pagina xv, Linear Algebra and Matrix Analysis for Statistics, 2014.
L’impatto dell’algebra lineare è importante da considerare, data la relazione fondamentale che entrambi i campi hanno con il campo dell’apprendimento automatico applicato.
Alcune chiare impronte dell’algebra lineare sulla statistica e sui metodi statistici includono:
- Uso della notazione vettoriale e matriciale, specialmente con le statistiche multivariate.
- Soluzioni ai minimi quadrati e ai minimi quadrati pesati, come per la regressione lineare.
- Stime della media e della varianza delle matrici di dati.
- La matrice di covarianza che gioca un ruolo chiave nelle distribuzioni gaussiane multinomiali.
- L’analisi dei componenti principali per la riduzione dei dati che riunisce molti di questi elementi.
Come potete vedere, la statistica moderna e l’analisi dei dati, almeno per quanto riguarda gli interessi di un professionista dell’apprendimento automatico, dipendono dalla comprensione e dagli strumenti dell’algebra lineare.
Applicazioni dell’algebra lineare
Come l’algebra lineare è la matematica dei dati, gli strumenti dell’algebra lineare sono usati in molti campi.
Nel suo libro classico sull’argomento intitolato “Introduzione all’algebra lineare”, Gilbert Strang fornisce un capitolo dedicato alle applicazioni dell’algebra lineare. In esso, dimostra specifici strumenti matematici radicati nell’algebra lineare. Brevemente sono:
- Matrici in ingegneria, come una linea di molle.
- Grafi e reti, come l’analisi delle reti.
- Matrici di Markov, popolazione ed economia, come la crescita della popolazione.
- Programmazione lineare, il metodo di ottimizzazione simplex.
- Serie di Fourier: Algebra lineare per le funzioni, usata ampiamente nell’elaborazione dei segnali.
- Algebra lineare per la statistica e la probabilità, come i minimi quadrati per la regressione.
- Grafica per computer, come le varie traslazioni, ridimensionamenti e rotazioni delle immagini.
Un’altra interessante applicazione dell’algebra lineare è che è il tipo di matematica usata da Albert Einstein in parti della sua teoria della relatività. In particolare i tensori e il calcolo dei tensori. Ha anche introdotto un nuovo tipo di notazione dell’algebra lineare nella fisica chiamata notazione di Einstein, o convenzione di somma di Einstein.
Tutorial sull’algebra lineare
Sei alla ricerca di un aiuto per iniziare con l’algebra lineare, allora dai un’occhiata ad alcuni di questi tutorial:
- Linear Algebra for Machine Learning (7-Day Mini-Course)
- Linear Algebra Cheat Sheet for Machine Learning
- Basics of Mathematical Notation for Machine Learning
Extensions
Questa sezione elenca alcune idee per estendere il tutorial che potresti voler esplorare.
- Ricerca sui libri e sul web 5 citazioni che definiscano il campo dell’algebra lineare.
- Ricerca ed elenca altre 5 applicazioni o usi dell’algebra lineare nel campo della probabilità e della statistica.
- Elenco e scrivi brevi definizioni per 10 termini usati nella descrizione dell’algebra lineare.
Se esplorate qualcuna di queste estensioni, mi piacerebbe saperlo.
Altra lettura
Questa sezione fornisce altre risorse sull’argomento se state cercando di approfondire.
Libri
- Introduzione all’algebra lineare, 2016.
- Algebra lineare numerica, 1997.
- Algebra lineare e analisi delle matrici per la statistica, 2014.
Articoli
- Algebra lineare su Wikipedia
- Categoria Algebra lineare su Wikipedia
- Elenco degli argomenti di Algebra lineare su Wikipedia
- LAPACK su Wikipedia
- Sottoprogrammi di base di Algebra lineare su Wikipedia
- Software di algebra lineare automatica su Wikipedia
- Notazione di Einstein su Wikipedia
- Matematica della relatività generale su Wikipedia
- Algebra lineare per l’apprendimento automatico
Sommario
In questo tutorial, hai scoperto una leggera introduzione all’algebra lineare da una prospettiva di apprendimento automatico.
In particolare, hai imparato:
- L’algebra lineare è la matematica dei dati.
- L’algebra lineare ha avuto un forte impatto sul campo della statistica.
- L’algebra lineare è alla base di molti strumenti matematici pratici, come le serie di Fourier e la computer grafica.
Hai qualche domanda?
Poni le tue domande nei commenti qui sotto e farò del mio meglio per rispondere.
Get a Handle on Linear Algebra for Machine Learning!
Sviluppa una comprensione operativa dell’algebra lineare
…scrivendo righe di codice in python
Scopri come nel mio nuovo Ebook:
Algebra lineare per l’apprendimento automatico
Fornisce tutorial autodidattici su argomenti come:
Norme vettoriali, moltiplicazione di matrici, tensori, eigendecomposizione, SVD, PCA e molto altro…
Finalmente comprendi la matematica dei dati
Scarica gli accademici. Solo risultati.
Vedi cosa c’è dentro