Dall’Algebra Lineare al Deep Learning in 7 libri (Aggiornamento Inverno 2023)

Dall'Algebra Lineare al Deep Learning 7 libri indispensabili per il 2023 (Aggiornamento Inverno)

Sette dei miei libri di machine learning preferiti

Foto di Laura Kapfer su Unsplash

Nel mio primo post di blog per Towards Data Science nel 2019, ho scritto su cinque dei miei libri di machine learning preferiti, libri che coprono ogni aspetto dalla base dell’algebra lineare alla moderna deep learning.

Ecco quali sono:

  • Linear Algebra Done Right di Sheldon Axler
  • Mathematical Statistics and Data Analysis di John A. Rice
  • Elements of Statistical Learning di Trevor Hastie et al.
  • Neural Networks and Deep Learning di Michael Nielsen
  • Deep Learning di Ian Goodfellow et al.

Dall’algebra lineare alla deep learning in 5 libri

I miei libri preferiti per imparare il machine learning

towardsdatascience.com

Ognuno di questi cinque libri, secondo me, è davvero fantastico, ognuno per le sue ragioni. Elements of Statistical Learning, ad esempio, è ciò che mi ha appassionato alla scienza dei dati in primo luogo, quando ero studente universitario. Infatti, tutti e cinque i libri nel corso degli anni mi hanno aiutato a imparare molto e non sarei dove sono ora senza di loro.

Tuttavia, sono solo una parte dei miei libri preferiti sulla scienza dei dati e il machine learning che ho scoperto e imparato, ecco perché voglio scrivere di un altro gruppo di sette libri che penso siano altrettanto incredibili e che vale la pena aggiungere alla tua collezione (virtuale). Per ognuno di essi, ti dirò perché penso siano così grandi, cosa mi hanno insegnato e alcuni consigli su come leggerli.

Inoltre, molti dei libri hanno recentemente ricevuto un aggiornamento, quindi ti dirò anche cosa puoi aspettarti dalla nuova versione, ad esempio se conosci già la precedente.

Come nel mio ultimo post, i libri che ho scelto variano nel loro livello di difficoltà, quindi inizierò con quelli concentrati sui concetti fondamentali e poi mi addentrerò nel regno della letteratura avanzata sul machine learning lungo la strada.

Eccoci qua…

Introduzione all’apprendimento statistico di Trevor Hastie et al.

Nel mio post di blog originale, ho menzionato il libro Elements of Statistical Learning, che è considerato un classico e uno dei libri di machine learning più influenti e sorprendenti mai scritti.

Pur essendo sorprendentemente accessibile nonostante tratti molti argomenti avanzati, in generale richiede una solida comprensione della matematica e soprattutto della statistica.

Per questo motivo, gli stessi autori hanno pubblicato anche Introduzione all’apprendimento statistico, che è una versione più accessibile del libro pur trattando (per lo più) gli stessi argomenti esatti. Non fraintendermi, il libro introduce ancora i concetti fondamentali di matematica e statistica quando necessario o utile, ma il suo focus principale è sviluppare l’intuizione del lettore su come i metodi statistici nel machine learning funzionano.

Secondo me, questo è il miglior libro per imparare la scienza dei dati e il machine learning. È assolutamente da leggere se stai iniziando a imparare la scienza dei dati. È anche la base per alcuni dei migliori corsi introduttivi di scienza dei dati nelle università di tutto il mondo.

Cosa ho imparato dal libro: Molta della mia intuizione per il machine learning deriva dalla lettura di ESL e ISL. Non c’è semplicemente un altro libro che illustra così bene questi concetti. Questo è particolarmente vero per molti dei concetti più avanzati come la validazione incrociata e le macchine a vettori di supporto, che possono essere difficili da comprendere inizialmente.

Consigli su come leggere il libro: Leggilo dall’inizio alla fine se sei nuovo alla scienza dei dati. I capitoli si sviluppano l’uno sull’altro, quindi è importante acquisire almeno le basi da ogni capitolo prima di passare al successivo. Se hai voglia di una sfida, puoi leggere ISLR in parallelo ai capitoli corrispondenti di ESL. Questo ti farà passare istantaneamente dal comprendere solo un argomento a un’esperienza di livello esperto.

Il libro viene fornito anche con una libreria R completa in modo da poter esercitare facilmente tutte le domande pratiche, il che è una risorsa educativa straordinaria.

Cosa c’è di nuovo nell’ultima versione: È stata rilasciata una seconda edizione aggiornata del libro proprio l’anno scorso, che contiene interi nuovi capitoli non presenti nella versione precedente. Sono per lo più argomenti avanzati come il deep learning, l’analisi della sopravvivenza e i test multipli.

Inoltre, quest’anno è stata rilasciata un’altra versione del libro, questa volta una versione ufficiale in Python, mentre l’originale si basa su R come già menzionato.

Un’introduzione all’apprendimento statistico

Con l’aumentare della scala e della portata della raccolta dati in quasi tutti i campi, l’apprendimento statistico ha…

www.statlearning.com

R for Data Science di Hadley Wickham et al

Parlando di R, R for Data Science è un altro prezioso libro open source. Puoi imparare l'”intero gioco” della scienza dei dati, dall’importazione dei dati alla pulizia dei dati, all’allenamento dei modelli e alla comunicazione dei risultati.

Il libro non richiede alcuna conoscenza precedente di programmazione o scienza dei dati, puoi imparare tutto con questo libro. Rispetto a ISLR (il libro precedente), l’approccio in R for Data Science è più pratico. Troverai molto codice in ogni capitolo.

Il libro introduce anche e si basa fortemente sul tidyverse, che è una collezione di librerie R ben progettata per fare scienza dei dati. Quindi è anche una guida ottima (forse la migliore?) se provieni da Python e vuoi imparare a fare le cose in R.

Cosa ho imparato dal libro: Il libro dimostra che R è un linguaggio straordinario per fare scienza dei dati e ancora di più per impararla. Si tratta di una guida altamente pratica e pratica da cui ho imparato il modo tidyverse di fare scienza dei dati. Ha un particolare focus sull’elaborazione dei dati, che altri libri (come ISLR) spesso non hanno. Ancora oggi, mi affido alle competenze di manipolazione dei dati che ho acquisito da questo libro.

Come leggere il libro: Puoi leggerlo dall’inizio alla fine e imparare una quantità incredibile di nuove conoscenze e tecniche. Se sei nuovo alla scienza dei dati, ti raccomando di farlo. Tuttavia, non è stato il mio primo libro di scienza dei dati, quindi ho finito per fare le cose in modo un po’ diverso. Invece, ho letto i capitoli nell’ordine che preferivo. Se hai già esperienza in scienza dei dati (ad esempio perché provieni da Python), puoi fare lo stesso: semplicemente scegli un argomento su cui desideri saperne di più e approfondisci la tua conoscenza leggendo il capitolo corrispondente. Ogni sezione è ragionevolmente autosufficiente, quindi puoi farlo facilmente.

Cosa c’è di nuovo nella nuova versione: È stata rilasciata quest’anno la seconda edizione del libro, che include una revisione di tutti gli esempi di codice. Il tidyverse si è sviluppato rapidamente negli ultimi anni, quindi ciò ha richiesto un aggiornamento del libro.

R for Data Science (2e)

Questo è il sito web dell’edizione in corso del “R for Data Science” di seconda edizione. Questo libro ti insegnerà come fare…

r4ds.hadley.nz

(Ho collegato la seconda edizione del libro che dovrebbe essere completa ora, ma puoi trovare la prima edizione originale qui.)

Mathematics for Machine Learning di Marc Peter Deisenroth et al.

Se stai cercando un libro completo per studiare tutta la matematica di cui hai bisogno per comprendere l’apprendimento automatico, “Mathematics for Machine Learning” è un’ottima opzione.

Il machine learning si basa su diversi sottocampi della matematica, tra cui l’algebra lineare, la statistica, la teoria delle probabilità e l’ottimizzazione, solo per citarne alcuni. Pertanto, per imparare tutto ciò, di solito studieresti vari manuali diversi.

Proprio questo è stato il motivo per cui è stato scritto questo libro: unire tutta la matematica comunemente richiesta per il machine learning in un unico libro.

Cosa ho imparato dal libro: Questo è un moderno libro di matematica, quindi l’ho usato come riferimento durante i corsi correlati all’università. Anche se non era il libro principale dei miei corsi, trattava alcuni degli stessi argomenti. Pertanto, sono stato in grado di leggere i capitoli pertinenti e ciò mi ha aiutato a comprenderli meglio. Il libro contiene buone spiegazioni, le mette sempre in relazione ai concetti di apprendimento automatico (a differenza dei libri di matematica generica) e include belle visualizzazioni che mi hanno anche aiutato a comprendere le idee.

Come leggere questo libro: È probabilmente meglio considerare questo libro per quello che è – un manuale di matematica. Se stai frequentando un corso di Algebra Lineare, Probabilità, Statistica o un corso di apprendimento automatico orientato alla matematica, può essere una buona risorsa aggiuntiva per te. Scegli i capitoli che sono in linea con il tuo corso e verifica se il libro ti aiuta come mi ha aiutato.

Matematica per l’apprendimento automatico

mml-book.github.io

Il libro sull’apprendimento automatico di cento pagine di Andriy Burkov

Prima di tutto, non è effettivamente di 100 pagine ma ne ha qualcuna in più. Comunque, non c’è nulla da recriminare perché il libro è esattamente ciò che promette di essere, una panoramica concisa ma completa dei concetti e dei metodi chiave dell’apprendimento automatico.

A causa di ciò, probabilmente non è una risorsa principale per imparare la scienza dei dati da zero, né è molto pratico. Piuttosto, il suo scopo è fornire descrizioni concise di concetti importanti e introdurre la matematica e la teoria che sta dietro ad essi.

Quindi è un ottimo riferimento se hai bisogno di approfondire un concetto o un metodo in modo rapido.

Cosa ho imparato dal libro: Per me il libro talvolta ha agito come una sorta di autoverifica. Pensavo che se potevo capire un concetto dalla sua descrizione di base, avrei dovuto avere una buona comprensione dell’argomento. Questo è quello che penso che questo libro sia. Non ti insegna la scienza dei dati o l’apprendimento automatico da zero, ma mentalmente puoi riassumere (o rinfrescare) un concetto leggendolo nel libro.

Come leggere questo libro: Il libro è una delle migliori sintesi compatte dei concetti di apprendimento automatico disponibili, e ti suggerisco di fare qualcosa di simile a me, ovvero utilizzarlo per verificare la tua comprensione di un argomento o concetto. Se capisci il concetto, perfetto. Se no, potresti dover tornare a un altro libro (ad esempio ISLR o ESL) che spiega il concetto in modo più dettagliato.

Il libro sull’apprendimento automatico di cento pagine di Andriy Burkov

Tutto ciò che devi sapere sull’apprendimento automatico in cento pagine. Apprendimento supervisionato e non supervisionato, vettore di supporto…

themlbook.com

Apprendimento automatico: una prospettiva probabilistica di Kevin Murphy

Questo è uno dei libri sull’apprendimento automatico più avanzati disponibili. “Apprendimento automatico: una prospettiva probabilistica” adotta una visione bayesiana (cioè probabilistica) dell’apprendimento automatico, confrontandola anche con la visione classica frequentista.

L’apprendimento automatico bayesiano è diverso perché incorpora conoscenze precedenti e incertezze nel processo di apprendimento. Uno dei grandi vantaggi è che questo consente di generare previsioni probabilistiche anziché stime puntuali.

Il libro affronta molti argomenti avanzati che nessuno dei libri precedenti cerca di spiegare, come i processi gaussiani o l’inferenza variazionale. È un ottimo libro se vuoi portare la tua conoscenza di apprendimento automatico al livello successivo e imparare a vederlo da un’angolazione diversa.

Cosa ho imparato dal libro: All’università ho frequentato un corso sull’apprendimento automatico bayesiano e questo era uno dei testi di riferimento. Ad esempio, ho imparato la versione bayesiana della regressione lineare e logistica. Il libro ha anche un ottimo capitolo sull’algoritmo Expectation-Maximization. Ancora oggi, mi ritrovo a tornare a questo libro quando ho bisogno di comprendere un metodo da un punto di vista probabilistico.

Come leggere questo libro: Di nuovo, si tratta di un libro di testo classico, quindi è probabile che tu ne venga a conoscenza come parte di un corso. Ma anche al di fuori dell’aula puoi usare questo libro per ottenere una visione diversa su molti degli stessi metodi di apprendimento automatico che altri libri, come ESL, insegnano, oltre a molti metodi aggiuntivi che hanno senso solo in un contesto probabilistico. Se questa è la prima volta che ti avvicini all’apprendimento automatico bayesiano, ti suggerisco di leggere prima l’introduzione per comprendere davvero perché questo argomento sia così utile.

Machine Learning

Vincitore, Premio DeGroot 2013 assegnato dalla Società Internazionale di Analisi Bayesiana 1104 pp., 8 x 9 in, 300 colori…

mitpress.mit.edu

Cosa c’è di nuovo nelle nuove versioni del libro: L’autore, Kevin Murphy, sta lavorando a due libri di ML aggiuntivi. Per uno, Probabilistic Machine Learning: Introduzione, che è focalizzato sul deep learning, e una versione più avanzata di esso, dal titolo Probabilistic Machine Learning: Argomenti Avanzati.

Deep Learning con Python di François Chollet

Deep Learning con Python è un libro fantastico se vuoi capire (non solo imparare) le reti neurali e come implementarle usando Python.

È scritto da François Chollet, che è il creatore di Keras, un framework di deep learning che si basa su TensorFlow. Chollet è un autore eccezionale, non sono solo parole mie. Sta facendo un lavoro straordinario nel illustrare la meccanica dietro i vari concetti di deep learning e come si uniscono per formare la base del campo che attualmente sta sconvolgendo il mondo (pensa a ChatGPT).

Cosa ho imparato dal libro: Questo riguarda principalmente come pensare al deep learning, partendo dai principi fondamentali. Ho principalmente utilizzato questo libro per imparare su Keras, ma mi sono ritrovato a rileggere molte altre parti del libro (ad esempio, sulle reti neurali convoluzionali, sulle migliori pratiche, ecc). Anche se già conoscevo la maggior parte degli argomenti quando ho scoperto questo libro, li ho trovati troppo buoni per perdermeli, e quindi hanno notevolmente rafforzato la mia comprensione del deep learning.

Come leggere il libro: Se stai iniziando con il deep learning, questo è probabilmente di nuovo un libro da leggere dall’inizio alla fine, semplicemente perché François è un autore eccezionale che fa un lavoro incredibile nel illustrare tutti i concetti che motivano. Se hai già un po’ di esperienza nel deep learning, potresti semplicemente scegliere un capitolo per migliorare la tua comprensione di un argomento specifico.

Cosa c’è di nuovo nella seconda edizione: Una seconda edizione del libro è stata pubblicata quest’anno. Il deep learning si muove estremamente velocemente, quindi il libro ha richiesto alcuni aggiornamenti. Contiene anche nuovi capitoli e argomenti. Ad esempio, contiene nuovi contenuti per coprire i recenti progressi nei modelli linguistici e nella generazione di testo. Inoltre, Keras è cambiato nel corso degli anni, quindi anche il libro ha dovuto adattarsi.

Deep Learning con Python, Seconda Edizione

Una copia elettronica della precedente edizione di questo libro è inclusa senza costi aggiuntivi. Sarà aggiunta automaticamente…

www.manning.com

(C’è anche un libro molto simile chiamato Deep Learning con PyTorch che copre gran parte degli stessi contenuti ma con un focus su PyTorch invece che su TensorFlow/Keras.)

Reinforcement Learning: Un’introduzione di Richard Sutton e Andrew Barto

Ammettiamolo, questo è un po’ un “fuori dal coro” qui, ma sicuramente merita un posto finale. Il reinforcement learning (RL) è un campo assolutamente affascinante, che integra il tipo di machine learning che insegnano i libri precedenti.

Qualora non ne fossi familiare, il reinforcement learning è il campo dell’AI che si occupa degli agenti autonomi e della presa di decisioni, con l’obiettivo di imparare interagendo con il mondo reale o simulato.

Questo libro è il testo di riferimento standard per le lezioni di RL in tutto il mondo, quindi sicuramente uno dei migliori se vuoi imparare a riguardo. La conoscenza del machine learning è comunque utile poiché svolge anche un ruolo centrale nel reinforcement learning, quindi pensa a questo libro come la ciliegina sulla torta.

Cosa ho imparato da questo libro: Tanto. Questo libro era anche per uno dei miei corsi all’università. Infatti, ho fatto il mio progetto di corso su Monte-Carlo Tree Search e la mia tesi di laurea magistrale su Contextual Bandits. Entrambi sono spiegati molto bene nel libro. Sono metodi di RL incredibilmente interessanti e potenti.

Come leggere questo libro: Probabilmente anche questo è un libro da leggere dall’inizio alla fine, poiché i capitoli si sviluppano molto l’uno sull’altro. È importante avere una buona comprensione del machine learning e persino del deep learning prima di leggere questo libro, poiché molti dei concetti di RL si basano su di essi.

Non c’è ancora una nuova edizione del libro, ma se mi chiedete, è ora che ci sia. Molte cose sono cambiate nel campo negli ultimi anni, e sta guidando alcuni dei modelli di linguaggio all’avanguardia (ad esempio attraverso l’apprendimento per rinforzo dai feedback umani o RLHF). Sarei sicuramente il primo a leggerlo.

Reinforcement Learning: Introduzione | MIT Press eBooks | IEEE Xplore

L’apprendimento per rinforzo, una delle aree di ricerca più attive nell’intelligenza artificiale, è un approccio computazionale…

ieeexplore.ieee.org

Sommario

Questi sette libri, insieme ai cinque del mio post originale, sono alcuni dei migliori nel campo che puoi trovare, posso affermarlo con sicurezza perché ho trascorso (e continuo a farlo) molto tempo a curare la mia libreria (virtuale). La cosa migliore? Molti di loro sono disponibili online gratuitamente.

Sono davvero grato per il fatto che il campo sia così aperto e consenta un accesso gratuito e facile alla conoscenza. Non penso che ciò venga detto abbastanza e a volte viene dato per scontato, e non dovrebbe.

Se ho un ultimo consiglio da darti, è questo: sono sempre stato un fan dell’utilizzo di fonti multiple per imparare lo stesso concetto. Diversi libri (o corsi, video e tutorial, per inciso) adottano un approccio leggermente diverso per insegnare un argomento. È come avere più insegnanti, uno fa scattare l’illuminazione nella tua mente, e una volta che ciò accade, capirai anche cosa intendevano gli altri. Penso che otterrai una profonda comprensione facendo questo.

Grazie mille per la lettura. Spero davvero che il post ti sia piaciuto e che tu trovi i libri utili quanto li ho trovati io, indipendentemente dallo stato di apprendimento in cui ti trovi.

Se hai pensieri o domande, non esitare a farmelo sapere nei commenti o su LinkedIn.