Recensioni di libri

Recensione del libro: Corso intensivo di apprendimento profondo: un’introduzione pratica e basata su progetti all’intelligenza artificiale

mm

Corso intensivo di apprendimento profondo: un’introduzione pratica e basata su progetti all’intelligenza artificiale è scritto da Giovanni Volpe, Benjamin Midtvedt, Jesús Pineda, Henrik Klein Moberg, Harshith Bachimanchi, Joana B. Pereira e Carlo Manzo, un gruppo di ricercatori e educatori con una profonda esperienza che spazia dalla fisica all’apprendimento automatico e alla ricerca sull’intelligenza artificiale applicata.

Prima di entrare nel merito di ciò che il libro offre, voglio iniziare con una confessione personale, perché ha influenzato la mia esperienza con questo libro. Questo è il primo libro che ho mai letto della No Starch Press e, all’inizio, non sapevo cosa aspettarmi. Nonostante gestisca un grande sito web focalizzato sull’intelligenza artificiale, sono anche ammetto di essere un programmatore terribilmente scarso secondo gli standard moderni dell’IA. Capisco i fondamenti di HTML, CSS, JavaScript e PHP abbastanza bene, ma quando si tratta di Python, le mie abilità si collocano saldamente nella fascia media. Ciò ha contato qui, perché Python è il linguaggio utilizzato in tutto il libro e gioca un ruolo centrale nella maggior parte dei progetti.

Ciò che ho trovato invece della frustrazione è stato qualcosa di molto più prezioso. Questo libro è paziente senza essere semplicistico, profondo senza essere sovraccaricante e pratico in un modo che pochi libri sull’IA riescono a raggiungere. Non presume che tu sia già fluente nella cultura dell’apprendimento automatico, nella terminologia o nei flussi di lavoro. Invece, costruisce la fiducia in modo costante, capitolo dopo capitolo, attraverso spiegazioni abbinate direttamente al lavoro pratico.

Una prima impressione che stabilisce il tono

Questo è un libro sostanziale, che supera le sei centinaia di pagine, e utilizza efficacemente lo spazio a disposizione. Un dettaglio che mi è subito saltato all’occhio è che gli autori hanno preso la decisione di passare dall’intero codice da TensorFlow a PyTorch dopo che la prima bozza era già completa. Ciò non è un cambiamento di poco conto, specialmente per un libro di questa portata. Segnala qualcosa di importante: questo non è un libro congelato nel tempo o scritto per spuntare caselle. È un libro progettato per rimanere rilevante e allineato con come l’apprendimento profondo viene effettivamente praticato oggi.

Dall’inizio, il tono è pratico e concreto. Il libro non inizia con filosofia astratta o matematica densa. Inizia con la meccanica della costruzione di modelli, l’esecuzione di esperimenti e la comprensione di cosa fa il codice e perché. Questo approccio fa una differenza enorme, specialmente per i lettori che capiscono i concetti a livello alto ma lottano per tradurli in implementazioni funzionanti.

Imparare costruendo, non memorizzando

Uno degli aspetti più forti del Corso intensivo di apprendimento profondo è la sua struttura basata su progetti. Questo non è un libro dove leggi per ore e poi forse provi qualcosa dopo. Stai costruendo cose costantemente. Ogni concetto importante è legato a un progetto concreto, e quei progetti aumentano di complessità man mano che la tua comprensione cresce.

Cominci costruendo e addestrando le tue prime reti neurali da zero utilizzando PyTorch. I primi capitoli introducono le idee fondamentali dietro le reti neurali, compresi layer, pesi, funzioni di attivazione, funzioni di perdita e ottimizzazione. Importante, queste idee non vengono trattate come problemi matematici astratti. Vengono introdotte come strumenti che risolvono problemi specifici, e vedi l’impatto di ogni scelta di progettazione direttamente nei risultati.

Catturare modelli e comprendere i dati

Una volta che i fondamenti sono in posto, il libro si sposta verso la cattura di tendenze e modelli nei dati. Questo è dove le reti neurali dense vengono applicate a compiti più realistici come regressione e problemi di classificazione. Impari come i modelli generalizzano, come falliscono e come diagnosticare quei fallimenti.

Questo capitolo insegna silenziosamente alcune delle competenze più importanti nel mondo reale dell’apprendimento automatico. Argomenti come convalida, sovrapprendimento, sottoprendimento e valutazione delle prestazioni vengono introdotti naturalmente attraverso l’esperimentazione piuttosto che attraverso scariche di teoria. Impari come interpretare le curve di apprendimento, come regolare iiperparametri e come ragionare sul comportamento del modello invece di fidarti ciecamente degli output.

Lavorare con immagini utilizzando reti neurali

Una delle sezioni più coinvolgenti del libro si concentra sull’elaborazione di immagini e visione artificiale. Questo è dove entrano in gioco le reti neurali convoluzionali. Invece di trattare le CNN come scatole nere misteriose, il libro le scompone in componenti comprensibili.

Impari cosa fa effettivamente la convoluzione, perché le layer di pooling sono importanti e come funziona l’estrazione di caratteristiche attraverso i layer. Ancor più importante, applichi queste idee a dataset di immagini reali. I progetti includono classificazione di immagini, trasformazione e esperimenti visivi creativi come il trasferimento di stile e gli effetti DeepDream.

Dal compressione alla generazione

Il libro si espande quindi in autoencoder e architetture encoder-decoder, comprese le U-Net. Questi modelli introducono idee come riduzione della dimensionalità, rappresentazioni latenti e generazione di output strutturati. Vedi come i modelli possono apprendere rappresentazioni compatte di dati complessi e come quelle rappresentazioni possano essere utilizzate per compiti come la rimozione del rumore e la segmentazione.

Da lì, la portata si allarga ulteriormente nella modellazione generativa. Ciò include reti generative avversarie e modelli di diffusione, che costituiscono la spina dorsale di molti sistemi di intelligenza artificiale generativa moderni. Questi capitoli non esitano a discutere le sfide dell’addestramento dei modelli generativi. Instabilità, problemi di convergenza e valutazione vengono discussi apertamente.

Sequenze, linguaggio e attenzione

Un’altra grande forza del libro è come gestisce i dati sequenziali e il linguaggio. Le reti neurali ricorrenti vengono introdotte come un gradino, aiutando i lettori a comprendere come i modelli gestiscono serie temporali e input ordinati.

Da lì, il libro si sposta verso i meccanismi di attenzione e le architetture transformer. Questi capitoli forniscono una solida base concettuale per comprendere i modelli linguistici moderni senza richiedere che tu sia già fluente nel campo. Le spiegazioni si concentrano su perché l’attenzione è importante, come cambia la dinamica dell’apprendimento e come consente ai modelli di scalare.

Grafi, decisioni e apprendimento dall’interazione

I capitoli successivi esplorano le reti neurali dei grafi, utilizzate per modellare dati relazionali dove le connessioni contano tanto quanto i valori individuali. Ciò include esempi rilevanti per dati scientifici, reti e sistemi strutturati.

Il libro introduce anche l’apprendimento attivo e l’apprendimento per rinforzo profondo, dove i modelli imparano interagendo con ambienti e prendendo decisioni. Queste sezioni spingono oltre i dataset statici e nei sistemi dinamici, mostrando come l’apprendimento possa adattarsi in base al feedback e ai risultati.

Competenze pratiche che vanno oltre il libro

In tutto il libro, c’è un forte accento sulle abitudini pratiche. Impari come strutturare esperimenti, debuggare modelli, visualizzare risultati e pensare criticamente alle prestazioni. Queste sono le competenze che contano di più una volta che si esce dai tutorial e si entra nelle applicazioni reali.

I notebook e i dataset inclusi rendono facile sperimentare, modificare progetti ed esplorare idee ulteriori. Questa flessibilità rende il libro prezioso non solo come lettura una tantum, ma anche come riferimento a lungo termine.

Per chi è questo libro

Questo libro è ideale per programmatori, ingegneri, ricercatori e professionisti tecnicamente curiosi che vogliono capire l’apprendimento profondo costruendolo. Non devi essere un programmatore Python esperto per iniziare, e non hai bisogno di un background matematico avanzato per fare progressi. Ciò di cui hai bisogno è curiosità e la volontà di lavorare attraverso progetti in modo pensieroso.

Funziona anche estremamente bene come guida di riferimento, ed è esattamente come intendo utilizzare il libro andando avanti. Come qualcuno sempre più focalizzato sul coding basato sul feeling e sulla progettazione di sistemi ad alto livello piuttosto che sull’esecuzione di ogni riga di codice dall’inizio alla fine, vedo questo libro come qualcosa a cui tornerò regolarmente per approfondire la mia comprensione concettuale. Le spiegazioni, i diagrammi e le analisi architettoniche rendono possibile capire come i modelli sono strutturati, perché vengono scelte certe strategie e quali sono i compromessi esistenti. In questo senso, il libro ha successo non solo come corso passo dopo passo, ma anche come compagno a lungo termine per lettori che vogliono capire cosa fanno i sistemi di intelligenza artificiale moderni sotto il cofano mentre sperimentano, prototipano o ragionano a un livello più alto.

Pensieri finali

Corso intensivo di apprendimento profondo ha superato le mie aspettative in un modo molto reale. Non ha solo spiegato l’apprendimento profondo, ma lo ha reso accessibile e raggiungibile. Alla fine, mi sono sentito molto più a mio agio leggendo, modificando e scrivendo modelli basati su PyTorch di quanto non lo fossi all’inizio.

Questo è un libro che premia lo sforzo. Rispetta l’intelligenza del lettore senza presumere competenze, e offre una delle esperienze di apprendimento più pratiche che abbia incontrato nell’istruzione sull’IA. Per chiunque sia serio nel passare da osservatore di IA a costruttore di IA, questo libro è una forte raccomandazione.

Antoine è un leader visionario e socio fondatore di Unite.AI, guidato da una passione incrollabile per plasmare e promuovere il futuro dell'AI e della robotica. Un imprenditore seriale, crede che l'AI sarà altrettanto rivoluzionario per la società quanto l'elettricità, e spesso si lascia trasportare dall'entusiasmo per il potenziale delle tecnologie innovative e dell'AGI.

Come futurista, è dedicato a esplorare come queste innovazioni plasmeranno il nostro mondo. Inoltre, è il fondatore di Securities.io, una piattaforma focalizzata sugli investimenti in tecnologie all'avanguardia che stanno ridefinendo il futuro e riplasmando interi settori.