EasyApple #582 - Reti neurali e machine learning con Eugenio Zuccarelli
Ciao a tutti e ben ritrovati su EasyApple, puntata numero 582. Comincia veramente a venirmi
fuori in automatico questa cosa dell'annunciare la puntata, non so, mi sembra di essere un
po' un automa. L'automa in questione si chiama Luca Zorzi e il suo socio si chiama Federico
Travaini. E invece i donatori che hanno reso possibile anche questa settimana il fatto
che noi ci sedessimo su queste comode sedi davanti a questi grandi schermi per registrare
sono Enrico Ferrazzi, Riccardo Manganelli, Davide Tinti, Stefano Giacomo G. e Marcello
Marigliano. Grazie mille per il vostro generoso supporto e dai, magari anche voi che siete
all'ascolto, magari anche oggi in questa puntata un po' particolare.
Andrete nella sezione supporto del sito easypodcast.it per aprire i vostri gonfi o meno gonfi
portafogli e donare da pochi centesimi a miliardi e miliardi di euro al vostro podcast preferito.
Detto questo, Luca, direi che possiamo introdurre una novità, un ospite che in questa puntata
abbiamo invitato, o meglio ci siamo incrociati nel web e abbiamo detto ma sì, registriamo
insieme una puntata che raccontiamo di cose molto interessanti.
Di cui forse si parla troppo poco spesso su EasyApple.
In realtà sì, forse ne parliamo anche ma non nella maniera corretta, nella maniera
del sentito dire, nella maniera del credo che.
Vabbè, Eugenio, benvenuto su EasyApple.
Ciao a tutti, grazie di avermi qui.
Due parole per presentarti, magari chi sei, cosa fai nella vita.
Sono un data science manager in una grande corporation in New York City, compagnia siama
CVS Health, quello di cui mi occupo è principalmente creare algoritmi di machine learning molto
su piattaforme Apple per appunto predizione di malattie o altri eventi nel futuro.
Quindi tutta una roba molto interessante che mi piace.
Malattie e eventi nel futuro mi fa pensare ambiente assicurativo, dimmi solo sì o no,
ma se vuoi, se no lo stesso.
Molto ambiente assicurativo anche, ma non solamente.
Ok, quindi come mai, Eugenio?
Su EasyApple, diciamo agli ascoltatori, diciamo che lui ha già detto due parole che sono
quelle chiave di questa puntata, quindi machine learning e ambiente Apple.
Quindi chi segue da vicino lo sviluppo dei nuovi iPhone sa che da parecchio tempo ci
sono dentro questi neural engine che sembra facciano magie, quei nostri iPhone, però
facciamo un mezzo passo indietro.
Quindi chiediamo a Eugenio se hai voglia di raccontarci, anzi beh se hai voglia, sei venuto
qua apposta, quindi sicuramente avrai voglia, di raccontare che cos'è questo machine learning
e queste reti neurali che tu programmi.
Certo, è questa nuova tecnologia, molto recente, probabilmente negli ultimi dieci anni è diventata
parte più integrante di varie industrie della ricerca e quello in cui consiste è l'utilizzo
di grandi quantità di dati.
Quindi per apprendere le relazioni tra input, quindi informazioni in ingresso, e output,
quindi degli eventi.
Per esempio, come dicevamo prima, se guardi all'ambito medico o un altro ambito in quella
regione, se tu fornisci un sistema di machine learning, enormi quantità di dati sui pazienti,
quindi l'età, il sesso, le diagnosi, le procedure, il modello machine learning riesce a capire
dopo varie case.
Dopo varie persone, quali sono le relazioni tra queste caratteristiche di ingresso e vari
eventi nel futuro, per esempio, o anche nel presente.
Quindi qual è la probabilità che una persona magari sviluppi una malattia nel futuro o
che abbia, per esempio, una brutta esperienza, diciamo, all'ospedale, che abbia problemi
in un'operazione chirurgica.
E quindi c'è appunto questo apprendimento automatico delle relazioni tra input e output
senza il...
senza la componente umana.
Quindi non c'è l'uomo che spiega alla macchina, se succede questo, allora fai quell'altro,
se succede quell'altro, fai quell'altro ancora, che è un po', diciamo, l'algoritmo, per così
dire, il concetto che noi abbiamo di algoritmo, perlomeno io ho di algoritmo, è il tipo di
programmazione che, diciamo, comprendo.
Il machine learning è tutt'altro paradigma.
Tu praticamente dai là alla macchina e poi lei evolve, si muove in modi che tu forse puoi
anche controllare in qualche maniera, ma non sei veramente in grado di forzare, se ho detto
qualcosa di sbagliato.
No, è proprio come dici tu.
Quello che di solito era il paradigma prima era noi, in base alla nostra esperienza, diamo
le regole a questo sistema, quindi i FALS.
C'è questa situazione, fai questa azione.
Altrimenti fanno un'altra.
E questi algoritmi, appunto, questa serie di istruzioni, queste ricette, sono molto semplici
da implementare, ma di solito hanno delle carenze.
Di solito è difficile coprire ogni possibilità e capire tutte le relazioni.
Quello che si fa con il machine learning è lasciare la macchina imparare queste relazioni,
questi IF-ALS, e in quel modo diventa molto più potente perché riesce a generalizzare
e a capire relazioni che a volte a noi sfuggono.
All'occhio umano.
All'occhio umano, invece che le macchine riescono a capire in un modo molto più quantitativo.
E la macchina lo capisce?
Cioè, a suon di tentativi, le prova tutte finché si accorge della correlazione o c'è
qualche altro meccanismo in gioco?
No, gli algoritmi sono abbastanza intelligenti, per cui non fanno quello che si chiama brute
force, non provano ogni combinazione.
Cercano di andare, per esempio, nella direzione giusta.
Ci sono algoritmi che di solito dicono, ok, andammi in questa direzione se, per esempio,
guardando questa caratteristica, il valore incrementa, questo errore, l'errore nella
previsione, l'errore nella mia analisi diminuisce, allora tendo ad andare in quella direzione
perché quello mi porta ad avere migliori risultati.
C'è qualcosa di simile alla ricerca dei massimi e dei minimi di una funzione.
Non so, Fede, se queste parole ti riportano a tempi passati, però è un po' quello che
mi immagino.
Sì, anche degli zeri.
Quando abbiamo fatto, se non sbaglio, il terzo anno di ingegneria meccanica, si fa un corso
che si chiama Metodi numerici e scientifici, no, e matematici per l'ingegneria, dove spiegavano
come un computer fa a risolvere dei problemi matematici, perché un computer non può dire
che la derivata si fa in questa maniera qua, cioè lui deve andare a calcolarla numericamente,
quindi tutti gli algoritmi per trovare, cioè a un computer non puoi dirgli banalmente
una esecuzione in secondo grado, si risolve con questa formuletta qua, ma magari se vuoi
trovare degli zeri, il computer va per tentativi e capisce se si sta allontanando o avvicinando
alla risposta corretta.
Quindi, interessante questa cosa di Eugenio, ma io avevo una domanda prima, forse saltiamo
sempre un po' i punti della scaletta, ma questo è il mio dono, quello di riuscire a non seguire
mai la scaletta, perché prima tu hai detto questa è una tecnologia che negli ultimi dieci
anni sta, diciamo negli ultimi dieci anni si è evoluta tantissimo e penso a un applicativo
proprio in ambito medico e lo penso sulla mia pelle, perché tu dici si sviluppano algoritmi
che aiutano a prevenire o a capire se un paziente potenzialmente è soggetto a X, Y o Z, ecco.
Se prendo il mio caso specifico, penso che già io so che ho un valore, che ho un valore
che si chiama omocisteina negli esami del sangue, che spesso e volentieri trovo leggermente
sballato, è l'unica cosa che sballa nei miei esami del sangue, e mi hanno sempre detto
questi medici.
L'omocisteina ha una certa correlazione con chi ha gli infarti, ma non è detto che chi
ha l'omocisteina alta abbia per forza un infarto, quindi c'è una correlazione non
proprio diretta, nel senso che chi di solito soffre di infarto ha anche l'omocisteina alta,
ma non chi ha l'omocisteina alta.
L'omocisteina alta soffre di infarto.
Questa è una cosa che io trovo molto legata a quello che dici tu, cioè immagino che quello
che sia stata fatta sia stata fatta una statistica, ecco.
Quindi in uno scenario del genere, una rete neurale tramite machine learning, cioè cos'è
che è in grado di fare rispetto a questa statistica che è un po' quella più classica,
di ampliare la quantità di dati considerati, cioè quindi va un po' a sopperire quello che
è il limite magari di una statistica così semplice, quindi di dire va bene io adesso
guardo soltanto due cose, omocisteina e infarti, invece una rete neurale è in grado di dire
va bene iniziamo a guardare omocisteina, colesterolo, infarti, colore dei capelli, data di nascita,
se fuma, se non fuma, cioè è questo il concetto oppure non proprio?
No è esattamente quello, cioè se tu pensi alle capacità di un medico sono estremamente
elevate, ma sono ancora abbastanza basate su...
esperienze più qualitative, li avrei visto in vari casi, quando invece riesci ad utilizzare
un algoritmo riesci a mettere sullo stesso piano non solamente 100.000, 1.000.000, 10.000.000
di pazienti per capire davvero quali sono le relazioni, ma riesci anche a mettere in
gioco tutte queste varie componenti, quello che siano features, per cui l'età, il sesso,
le varie altre diagnosi, per cui quello che tu vedi da una statistica come quella con
l'omocisteina,
che è correlata a una probabilità di avere un attacco di cuore, eccetera, un algoritmo
di machine learning può dirti ok sì, ma se l'età è inferiore ai 50 anni e la persona
ha queste altre caratteristiche, oppure se la persona ha 80 anni e più e queste altre
caratteristiche, per cui tu riesci ad andare in una granularità che è quasi impossibile
secondo me per un dottore perché ci perdi la testa ad andare dietro a
tutte queste possibili caratteristiche per migliaia, se non milioni di pazienti, riesci
a farlo in un modo quantitativo, quindi basato sui dati e non solamente su quello che sono
le esperienze qualitative, quello che noi ci sentiamo di vedere o di dire.
Ok, quindi penso una cosa che tuttora è assolutamente ignota alla scienza che è la SIDS, la SIDS
sta per Sudden Infant Death Syndrome, che è questa morte improvviso, che è una morte
improvvisa che accade ai bimbi e non è stata ancora giustificata con niente dalla scienza,
cioè io essendo diventato papà da poco ne ho sentito parlare parecchio dai medici dove
ti dicono, sì alcune raccomandazioni, ma che sono raccomandazioni che comunque non
ti aiutano a prevenire questo tipo di patologia, perché è quello che si dice che in alcuni
casi il bimbo semplicemente smette di respirare, punto.
E muore, ed è una di quelle cose che cavolo, cioè se si potesse capire veramente se un
bimbo quando nasce, di cui quanti dati hai di un bimbo quando è nato?
Niente, cioè hai dati di una settimana di vita, sei mesi di vita, esageriamo, cioè
veramente poco, però se una cosa del genere potesse portare a risolvere o comunque aiutare
a combattere una patologia tipo questa, io adesso ne ho presa una perché è una che mi ha
purtroppo fatto dormire poco la notte negli ultimi mesi, cavolo è una cosa fantastica
proprio grazie alla fine alla immane potenza di calcolo, perché penso che una delle chiavi
per poter creare una rete neurale che funzioni penso sia in maniera totalmente ignorante
sia la potenza di calcolo o comunque avere dell'hardware molto importante.
Molto diciamo adatto a eseguire questo tipo di operazioni, motivo per cui immagino Apple
sia tanto spingendo nei suoi chip, nei suoi soc, soc, soc, soc o soc, questo non lo so,
soc mi sembra una roba tipo, soc mi sembra una roba un po' romagnola, tipo soc, soc,
i soc, sistemone chip dove ci sono dentro delle parti dedicate proprio a questo applicativo,
giusto Eugenio?
Se ho detto sbagliate, sbagliami.
No è correttissimo e anzi è un ottimo esempio quello che proprio dicevi tu della sudden infant death syndrome,
cioè com'è che il machine learning in quel caso può aiutare e rivedere ok se abbiamo un data set,
se abbiamo un foglio di calcolo di Excel con 10.000, 100.000 pazienti, quindi bambine,
ogni riga è l'informazione su un bambino, su un paziente e ogni colonna è una caratteristica,
e possiamo dare impasto a un algoritmo di machine learning questo data set, questa informazione,
e se una colonna è se questo bambino poverino è sopravvissuto o no, appunto la sudden infant death syndrome,
l'algoritmo riesce a capire quali sono le relazioni tra tutti questi vari input e l'output in un modo automatico e molto veloce,
per cui riesce a dirti ok magari questa caratteristica è la causa principale,
di quella predizione, e paradossalmente il problema ora non è per esempio la capacità di calcolo,
perché appunto con i chip di Apple M1 puoi lavorare su 100.000 o 1.000.000 di righe senza problemi in poche ore, sono minuti,
è più un fatto di dire dobbiamo avere accesso ai dati, a grandi quantità di dati che siano completi,
per esempio in questo caso magari l'informazione anche sui genitori potrebbe essere d'aiuto,
e quello è il problema principale, non è quasi più un problema di calcolo,
è un problema di dati.
Ho capito, ma per tornare un po' magari coi piedi per terra,
perché adesso magari stiamo parlando di cose che mi metto anche nei miei panni,
dico sì ok, sono molto però distanti da me,
magari qualche esempio di utilizzo, magari anche proprio in ambiente Apple,
dove questa rete neurale la possiamo tastare,
abbiamo dei dispositivi, io penso un esempio che credo sia forse quello sotto gli occhi di tutti,
è il riconoscimento dei volti nell'applicazione foto,
se non sbaglio io mi immagino che è proprio quello l'esempio,
cioè il dataset sono tutte le foto e mano a mano che io dico alla rete neurale,
sì guarda questo sono io, questo è Luca, questo è Eugenio, questo sì sono sempre io,
lei continua ad imparare e a riconoscere in maniera sempre migliore quelli che sono i volti,
dei vari contatti della rubrica,
non so se questo può essere un esempio o se ce ne sono altri magari più centrati.
Sì quello è un esempio, se appunto vedi Apple Photos,
quello che ti fa adesso è già la capacità di fare clustering,
quello è un sistema di machine learning unsupervised,
in cui tu non gli hai detto che queste persone sono la stessa persona, hanno la stessa faccia,
ma l'algoritmo di per sé è riuscito a individuare che ci sono somiglianze,
quindi tutte queste foto contengono la stessa persona,
ma poi puoi anche appunto label la persona o l'oggetto,
e lì è quello che diventa di solito machine learning come dicevi tu,
più supervised, in cui hai la possibilità di dire tramite l'image processing,
tramite quindi machine learning applicato alle immagini,
la capacità di riconoscere i volti e anche di riconoscere oggetti,
per cui se tu anche inserisci magari il nome di un oggetto nelle foto di Apple Photos,
riesci a individuare tutte le foto che menzionano quella o che contengono quell'oggetto,
sempre tramite intelligenza artificiale e machine learning.
Ok, quindi esiste un tipo di machine learning che è, tu hai detto, unsupervised,
quindi non è supervisionato, vuol dire che non c'è dietro un maestro
che spiega che cos'è quell'output lì, ma già la rete,
neurale di per sé, raggruppa quelli che potrebbero essere degli output,
diciamo, coerenti tra di loro, e poi invece c'è un altro tipo di rete,
o è una cosa, diciamo così, cioè non c'è una distinzione secca tra le due tipologie?
C'è abbastanza una distinzione secca, sono due tipologie diverse di algoritmi,
come dicevamo, uno unsupervised, in cui non c'è un esperto che è andato a dire
ok, questo è Federico, questo è Eugenio.
Ma è semplicemente un algoritmo che automaticamente cerca di raggruppare elementi per somiglianza
e in base, come dire, alla differenza tra di loro.
Più due elementi sono distanti e più sarà improbabile che appartengono alla stessa categoria.
E quegli algoritmi semplicemente accomunano cose simili, le trovi in modo semplice,
e invece ci sono altri algoritmi che sono basati sulla supervisione di un esperto,
per cui c'è una persona, di solito, che è un esperto,
in quell'ambito medico o del riconoscimento di oggetti.
E a volte non devono essere neanche troppo esperti,
che hanno detto ok, questa è una persona, questo è un gatto, questo è un cane.
E l'algoritmo inizia a capire le relazioni grazie anche all'input di questo esperto.
Ok, mi sfugge un po' quale può essere un'applicazione, diciamo così, concreta
di una rete non...
Non supervisionata.
Cioè, se alla fine poi non arriva un esperto o una persona comunque a dare dei label,
delle etichette ai vari risultati,
faccio fatica a vedere una...
Però proprio per questo sto facendo una domanda a te, magari mi puoi aiutare a capire.
Cioè, ok, do 10.000 foto di animali
e lui alla fine dividerà da una parte quelli che per lui sono qualcosa
e per me sono cani,
poi lui dividerà quelli che...
Per lui sono qualcosa di simile, però io dico che sono gatti.
Cioè, a questo punto qua, comunque ha bisogno, secondo me, di un...
No, ha bisogno sempre alla fine di un intervento umano che gli dica
ok, questo è un cane, questo è un gatto, questo è un delfino, questo è un elefante.
Cioè, penso...
Adesso quello che è sotto...
Scusami, finisco il concetto poi.
Poi ti lascio rispondere.
Tipo, adesso che...
Noi abbiamo parlato la scorsa puntata di un'applicazione per iPhone
che si basa, penso, su Deep Fusion,
però possiamo utilizzare...
Possiamo utilizzare gratuitamente oggi anche da lì
per provare a generare delle immagini
dove noi diciamo che cosa vorremmo vedere
e la rete neurale ci restituisce un'immagine.
Immagino che questa rete sia supervisionata da qualcuno che dica
questa è la foto di un bicchiere,
questa è la foto di un compleanno,
questa è la foto di Hitler,
questa è la foto di Pikachu,
cioè tutte queste cose qua.
Quindi, quale può essere invece un'applicazione di una rete neurale
o un esempio di rete neurale dove non c'è di...
dietro qualcosa che ti...
che ti dice che cos'è una cosa piuttosto che un'altra?
Di solito c'è l'intervento umano dopo
per definire qual è quell'oggetto,
qual è il significato semantico, simbolico di quell'oggetto.
E quello è di solito anzi uno dei problemi.
Cioè che tu, come dicevi, puoi avere un algoritmo
che automaticamente differenzia tutte le immagini magari di cani
ma non dà un label, non dà un nome a quell'oggetto
in questi algoritmi qua, tu non hai bisogno di un esperto,
non hai bisogno di un esperto che dica
questo è un cane, questo non è un cane.
Quindi l'algoritmo è potente nel senso che non ha bisogno
di tutto quell'input umano all'inizio
ma ha bisogno di input umano alla fine.
Per cui può essere utilizzato in un modo più semplice
quando hai magari meno dati
ma poi alla fine hai bisogno di una persona
che interpreti quel concetto.
E a volte è un pochino più difficile.
Per esempio in un caso ho lavorato...
ho lavorato con un'azienda che lavorava nell'ambito delle notizie
e per cercare di categorizzare le notizie
abbiamo utilizzato un algoritmo di questo genere unsupervised
perché è molto difficile onestamente categorizzare le notizie.
Questo algoritmo alla fine ti dava dei gruppi di notizie
che erano accomunati tra di loro
e poi stava a noi o almeno agli esperti più nell'ambito delle notizie del domain
di dire questo gruppo di notizie riguarda tutti magari
la finanza.
Altre volte magari ricordavano la tecnologia.
E in quel momento lì è quando di solito ci sono molti errori
perché l'algoritmo magari ha interpretato
quel gruppamento in un modo diverso
da quello che una persona potrebbe interpretare alla fine.
Ho capito, ho capito, ho capito.
Senti, facciamo un passo indietro
o di lato adesso non so esattamente dove ci stiamo muovendo
però abbiamo parlato di ambiente aereo
e di ambiente Apple.
Cosa significa fare machine learning in ambiente Apple?
Cosa usi?
Cioè ti basta il tuo MacBook Air, MacBook Pro
o serve un cluster di Mac?
Strumenti che si usano?
Cioè mi immagino terminale o un foglio di testo per programmare
oppure ci sono degli strumenti Apple?
Racconta magari un po' com'è.
Sono curiosissimo di sapere com'è.
La tua giornata di programmazione, strumenti, software, hardware?
Di solito basta il computer, il Mac
e quello che è potente proprio che tutto l'ecosistema Apple
è talmente unico e costruito con tutte queste relazioni
tra i vari componenti per cui i processori lavorano molto bene
e i software lavorano bene con l'hardware.
Quello che di solito utilizzo appunto è il Mac.
Ho vari strumenti.
Ho vari strumenti per scrivere codice.
Uno di questi si chiama Visual Studio Code,
che è un ottimo programma, ma ce ne sono altri.
Per esempio PyCharm,
è un altro buon editor di testo per scrivere codice.
E di solito programmo in Python,
che è anche un programma che viene shipped direttamente dal Mac,
dalla Apple,
per cui qualunque Mac appena lo apri ha già installato Python
e quindi puoi programmare sin dall'inizio.
E di solito programmo appunto,
in questi editor di testo,
e puoi utilizzare i chips, soprattutto quelli nuovi di Apple,
per utilizzare questi vari algoritmi neurali,
queste reti di intelligenza artificiale,
in un modo molto performante,
per cui si riesce ad analizzare centinaia di miliardi di dati
in pochi minuti.
Però mi sfugge un passaggio.
Cioè tu lavori,
su ambiente Apple,
sviluppi immagino la rete neurale,
immagino che scrivi anche proprio pezzi di codice,
come dicevi prima,
poi la passi a,
come facevi l'esempio prima,
alla testata giornalistica,
che utilizza questa tua rete neurale
per categorizzare le notizie.
Cioè loro poi,
dove la fanno girare questa rete neurale?
A loro volta su un server Apple,
Mac,
oppure questa poi rete neurale
può essere trasferita su altro hardware,
girare su un server Linux o altro?
Questa è una domanda da super ignorante.
No, un'altra domanda.
Di solito, soprattutto con le aziende al giorno d'oggi,
vengono oranate su cluster di computer,
Hadoop, Spark,
quindi vari computer,
di solito abbastanza computer normali,
che lavorano insieme,
spesso Linux,
non solamente Apple.
Quindi possono oranare questi programmi
su vari sistemi
o direttamente nel computer.
Ma la potenza di questi algoritmi
è che non sono legati
solamente a una piattaforma
ma possono essere utilizzati
in varie altre.
Ok.
E come si comincia?
Cioè, cerchi su Google
How to do machine learning for dummies
o ci sono
dei percorsi di formazione?
Ecco, questo è anche interessante.
Cosa hai studiato?
Cosa hai fatto?
Come sei arrivato lì?
Ci sono entrambi.
E diciamo,
una delle cose positive adesso
nel 2022 è che
ci sono tantissime risorse online
per appunto imparare e iniziare
a fare machine learning e intelligenza artificiale.
Io personalmente
ho iniziato così
soprattutto quando ero a Londra a lavorare
e poi mi sono formato all'MIT
in un modo un pochino più rigoroso.
E penso che le risorse online
onestamente sono fantastiche.
Sono un ottimo modo per iniziare
e poi letteralmente
come
su qualcosa
e è quello che anche a livello lavorativo
la maggior parte della gente fa.
Nessuno è un esperto di tutto
e ogni volta che c'è un nuovo problema
ovviamente ci pensi
ma di solito vai anche a vedere
cosa hanno fatto altre persone
per cercare di evitare
di reinventare la ruota
almeno in America.
Quanto tempo ci metteresti a licenziarti
se non ci fosse sta cover flow?
Giusto per curiosità.
Sarei licenziato molto velocemente
ma penso che
l'intera
azienda sia
non solamente la mia azienda.
E quello secondo me
è la differenza principale
tra
un corso online
e
semplicemente avere accesso
a tutte queste risorse
e un'educazione un pochino
più rigorosa.
Entrambi hanno pro e contro.
Un'educazione rigorosa
ovviamente
è un'ottima educazione
ma costa tanto
e dall'altro lato
hai accesso
a risorse gratis
ma non hai
la supervisione di esperti.
E quindi
uno dei caveat
che di solito
dico a tutte le persone
che utilizzano
le risorse online
è di cercare
di non solamente
come si dice
plug and play
cioè prendi il codice
copy and collie
e hai fatto
ma di cercare di capire
tutte quelle implicazioni
un pochino più
a livello umano
o a livello di interazione
con
gli users
che quelli sono
di solito
le componenti principali.
Cioè creare l'algoritmo
è quasi la parte più facile
avere poi utenti
che davvero lo utilizzano
e ne tragano benefici
quella parte più difficile.
E questo penso
praticamente
un po' in tutto
è banalmente
un podcast
è facile farlo
è difficile trovare
gli utenti
che hanno voglia
di ascoltarti
e che possono
trarre beneficio
perché alla fine
uno ascolta un podcast
usa qualsiasi cosa
nella vita in generale
se gli dà piacere
se gli dà beneficio
però qui poi
nel tuo preciso
nel tuo particolare
caso applicativo
stiamo parlando
di salute
quindi una cosa
che
è impossibile
che uno
cioè o meglio
mi auguro
che nessuno
possa pensare
beh ma
non mi importa
infatti
io penso sempre
questa è una roba
però la dico
ma prendetela
con le pinze
è vero che
probabilmente
tanti servizi
che uso
sono gratis
gli fornisco
i miei dati
e loro
li rivendono
io voglio sperare
che magari
alcuni di questi dati
vengano venduti
magari
a Eugenio
che ne possa fare
buon uso
e non soltanto
a Amazon
per portarmi
o Instagram
per farmi vedere
la pubblicità
del gioco
per i bimbi
perché sa che
sono diventato papà
quindi io
spero e penso
che una parte
di questi dati
arrivi anche voi
adesso non so
a voi i dati
cioè
quando lavorate
nella sanità
immagino che siano dati
diciamo
abbastanza di dominio
non pubblico
però sono in mano
alla sanità
però quando si
lavora
a progetti
un po' più
particolari
immagino che i dati
comunque vengono
sempre forniti
da chi
ti
commissiona
al lavoro
oppure può essere
anche una richiesta
tipo
tu ti vai a trovare
i dati
quindi io devo andare
a cercare i dati
delle persone
che sono diventate
papà nel 2022
che hanno tot anni
che è loro figlio
così
a cui piace Star Wars
e quindi io gli propongo
come funziona
questa discorsa
di mole di dati
e soprattutto
una domanda
mia personale
è
forse
forse troppo generica
ma
cosa significa
mole di dati
cioè
per fare un algoritmo
di machine learning
ha bisogno di
un minimo di dati
o se gli do
mille dati
magari
può già far qualcosa
o immagino ovviamente
che più dati gli do
più diventa accurato
rispetto alla tua prima domanda
dipende
ci sono
situazioni in cui
è accesso
a enormi quantità di dati
per esempio
nell'azienda in cui lavoro adesso
abbiamo accesso
a milioni di persone
nel sistema sanitario americano
perché queste persone
lavorano con noi
sono nostri
customer
sono nostri clienti
e quindi
non abbiamo
onestamente
troppo bisogno
di andare online
a cercare altre risorse
e quella è una fortuna
ovviamente
altre volte
sei in carenza di dati
per esempio
un esempio semplice
quando
è scoppiato il covid
abbiamo dovuto
quando ero in MIT
cercare di
aiutare appunto
in questa situazione
trovando i dati online
cercare di trovare
in ogni sito
di ogni stato americano
i dati
sulle ospitalizzazioni
i decessi eccetera
e a volte
cerchi di fare
entrambi
cerchi di utilizzare
i dati che hai
tramite i tuoi utenti
e i dati esterni
per esempio
ci sono vari
dataset online
su
per ogni
codice postale
qual è
il salario medio
quali sono
le caratteristiche
demografiche
e quelle informazioni
di solito
ti danno
dei valori aggiuntivi
un po' di valore aggiuntivo
che ti aiuta
a rendere
il sistema
ancora più
più ricco
e per rispondere
alla tua seconda domanda
dipende
nel senso
dell'algoritmo
ci sono
algoritmi più semplici
che anche in economia
vengono utilizzati
come
linear regression
una regressione normale
un algoritmo del genere
è molto semplice
e non ha bisogno
di tanti dati
per cui anche
mille samples
mille
casi
mille esempi
vanno bene
gli algoritmi
più complessi
più di deep learning
di intelligenza artificiale
con reti neurali
quelli di solito
se vuoi
che siano
robusti
e capaci
di generalizzare
per capire
davvero
le relazioni
di solito
ed è
un numero indicativo
di solito
100.000
o più
ma sono abbastanza
numeri indicativi
sì sì
ho capito
perché ho in mente
una
da qualche anno
un progetto
che mi piacerebbe
portare avanti
in ambito lavorativo
su una rete neurale
per fare
selezione di prodotto
quindi però
penso sempre
però magari
i dati
che abbiamo a disposizione
sono troppo pochi
dipende ovviamente
quanti sono
le variabili
quanti sono
i possibili output
quindi la domanda
si era un po'
un po'
un po'
sapevo che
iniziava con
dipende
perché
era così sicuramente
senti
hai citato il covid
io
quando
quando ci siamo
incrociati sul web
io ho cercato
un pochettino
chi era questo
Eugenio Zuccarelli
e
il primo articolo
che salta fuori
è
è evidente
capire il perché
è di Forbes
perché si parla
tu sei stato
dentro la classifica
dei 30 Forbes
under 30
quindi
30 persone
da tenere
sotto d'occhio
sotto
sotto i 30 anni
poi ovviamente
è stato
usato il tuo
tuo esempio
come spesso si fa
per
per portare avanti
una battaglia
eterna
con il governo italiano
cioè
noi abbiamo
degli italiani
che sono
vengono
portati
vengono messi
in classifica
da Forbes
dai 30 under 30
e poi
vanno all'estero
e non restano
in Italia
però
questo articolo
poi parlava
proprio del tuo
contributo
durante
questi due anni
nell'ambito
diciamo
sanitario
per quanto riguarda
la lotta contro il covid
hai voglia
di magari
raccontarci
in qualche minuto
cosa è stato
questo tuo
progetto
durante questi
ultimi anni
legato
legato al covid
certo
fai che
sono
andato a studiare
appunto
data science
e machine learning
alla MIT
nel settembre 2019
e a marzo 2020
è scoppiata la pandemia
per cui
tutto è molto cambiato
lì a
a Boston
e noi ci siamo ritrovati
in una situazione
in cui
ovviamente non eravamo
dottori
non potevamo
dare
troppo una mano
in prima linea
ma avevamo queste capacità
avevamo il nostro Mac
avevamo i nostri
prodotti Apple
e la capacità
di poter
mettere in gioco
le nostre
capacità
per avere
un impatto positivo
almeno un pochino
e quindi
quello che abbiamo fatto
è stato
innanzitutto
come dicevi prima
cercare di trovare
i dati
sono stati i dati
online
dai vari stati
Michigan
Massachusetts
New York
su tutte le varie
ospitalizzazioni
decessi
e infezioni
per ogni codice postale
ogni stato
riportava in un modo diverso
c'era chi utilizzava
un pdf
chi aveva un excel
quindi abbiamo creato
un sistema
per automaticamente
raccogliere
tutte queste informazioni
in un modo automatico
e ricreare
un unico data set
e una volta
che abbiamo avuto
queste informazioni
ci siamo detti
quali sono
le domande principali
a cui vorremmo
dare una risposta
quali sarebbero
le cose più utili
e proprio
come è successo
in Italia
anche in America
gli ospedali
erano sotto
un'estrema pressione
non c'erano
abbastanza
persone
non c'erano
abbastanza
dottori
non c'erano
abbastanza mascherine
e quindi abbiamo cercato
di predire
proprio con machine learning
quali sarebbero state
le zone
più ad alto rischio
di sviluppare
una
una pandemia
in quella
in quale regione
e
in questo modo
appunto abbiamo fornito
tutti questi vari codici postali
e tutte le caratteristiche
al modello
di machine learning
e questo è riuscito
a fare predizioni
dicendo
a livello
americano
quindi
in una mappa
americana
quali
sono le zone
che avranno più
una probabilità
di avere
tante ospedalizzazioni
tanti problemi
con
persone
che riempiono
gli ospedali
fin troppo
e
quello è stato molto utile
proprio perché
siamo riusciti a fornire
queste informazioni
al governo
ai governanti locali
per decidere
dove inviare
i rinforzi
proprio perché
erano limitati
nelle zone
più ad alto rischio
quindi
utilizzare un pochino
i nostri strumenti
per avere
un impatto positivo
ok
quindi immagino
che se Forbes
ha parlato di te
tutto questo progetto
poi ha dato
un aiuto concreto
all'America
per contrastare
quello che è stato
questo biennio
che vabbè
non è ancora finito
sembra
però
non so
quindi poi
alla fine
è stato anche
immagino interessante
vedere
il riscontro
nella realtà
di quelle che erano
le predizioni
della vostra rete neurale
esatto
perché è un po'
come appunto
diciamo
un progetto
che
qualunque persona
può fare
di dire
che vado online
trovo un dataset
e creo un algoritmo
di machine learning
questo è proprio
un caso
in cui
quel progetto
non era solamente
un gadget
o qualcosa
da fare
per
puro apprendimento
ma era più
un qualcosa
che appunto
aveva
un impatto diretto
positivo
e potete vedere
come
succede
lo strumento
che utilizzi
sai
l'algoritmo
che utilizzi
non è quanto importante
tanto quanto
l'impatto
che puoi avere
o la capacità
di comunicare
queste informazioni
alle persone
che poi
prendono le decisioni
il governo
gli Stati Uniti
la Casa Bianca
eccetera
e il fatto
che tu
sia
un po'
viaggiato
sia passato
dall'Inghilterra
da ora
negli Stati Uniti
è un requisito
o è una scelta
nel senso
è il tuo
settore lavorativo
esiste
in Italia
esiste in forma
embrionale
non è interessante
ambivia
qualcos'altro
spiegarci un attimino
questo ambito
più
diciamo
di scelta di vita
forse
ci sono
tantissime opportunità
secondo me
in Italia
sia in ricerca
che in aziende
per data science
machine learning
è più
secondo me
una questione di
stadio di crescita
secondo me
in Italia
è ancora un pochino
più agli albori
rispetto che
l'America
o il Regno Unito
e le schierze in Italia
ci sono
onestamente ho visto
tantissimi giovani
tantissime persone
che
hanno prendere
le stesse skills
che vedi fuori
dall'MIT
proprio perché
l'accesso
a questa informazione
è pubblico ormai
non ci sono più
queste barriere
secondo me
è più una questione
di infrastruttura
e di
sistema
trovo che per esempio
anche nell'ambito
di condivisione
dei dati
digitalizzazione
l'Italia purtroppo
è ancora un pochino
indietro rispetto
all'America
con tutti i problemi
che poi ci sono
in America
domanda
visto che
era in scaletta
com'è magari
la tua giornata
lavorativa
adesso immagino
che ci sarà
qualche ragazzo
che ci ascolta
ascolta te
a raccontare questo
e dice cavolo
bello
magari non ho ancora
deciso cosa fare
all'università
mi voglio lanciare
in questo percorso
ma poi alla fine
la giornata
in che cosa
si traduce
cioè
scrivi codici
tutto il giorno
o magari
ci sono
dei grossi brainstorming
perché bisogna capire
come impostare
una rete
oppure bisogna
andare a
non so
proporla
a clienti
quindi magari
non lo so
com'è la tua giornata
la mia giornata
di solito è
ovviamente
dipende in base
al periodo dell'anno
ma di solito
a livello di business
l'azienda
il leader
vale l'azienda
che dicono
ok
dobbiamo trovare
delle nuove opportunità
per l'azienda
per avere un impatto
positivo sulle persone
e per fare
profitti
e quindi
una cosa
che fa in quel periodo
di tempo
in quelle magari settimane
è cercare di fare analisi
con
quelli che si chiamano
notebooks
python
questi vari strumenti
per cercare di capire
analizzando i dati
quali sono
gli aree di opportunità
per esempio
adesso la mia compagnia
la mia azienda
lavoriamo molto
sul diabete
sulla
ipertensione
proprio perché
abbiamo fatto queste analisi
che dicevano
è
una malattia
che ha un enorme
costo
ha un impatto
superente
30 milioni di persone
in America
quindi quasi il 10%
e allora
lì abbiamo deciso
poi di fare un prodotto
e quindi ci sono stati
brainstorming
per decidere
quale prodotto fare
e una volta
che il prodotto
è stato scelto
devi fare
proprio una questione
di decidere
qual è la vision
qual è il design
di questo prodotto
di machine learning
quindi che dati
avrà in input
quale algoritmo
utilizzerà
e che
impatto avrà poi
sulle persone
ma nello specifico
di solito
come funziona
quindi è che
hai magari
due o tre ore al giorno
se non quattro
di coding
per cui scrivi codice
per quel progetto
per quel prodotto
o per quell'analisi
per capire
quali sono le opportunità
magari hai
una o due ore
di meeting
se va bene
e
spesso
hai
brainstorming
con
magari team lead
per cercare di capire
più ad alto livello
quali sono
soluzioni
che si possono
per
per avere un impatto
tramite quello
che facciamo
quindi molto coding
ma anche molto
design
a livello di
di design
più del modello
della struttura
per qualcuno
che avesse sentito
questa
questo tuo racconto
e dicesse
cavoli
è veramente
bello
da grande
voglio fare l'Eugenio
qual è il tuo suggerimento
come si fa
a fare l'Eugenio
il mio suggerimento
è di
sporcarsi le mani
il più possibile
e quindi
per cui
ovviamente
di guardare corsi
o di andare
all'università
in questi
questi ambiti
ma di cercare
di lavorare
il più possibile
in progetti
o personali
o tramite
aziende
perché
quello che si impara
facendo le cose
di persona
è estremamente
più
secondo me
che
tutte le varie
università
che uno può fare
e questo viene
da una persona
che ha fatto
fin troppo
università
quindi cercare
di mettere le mani
nei progetti
il più possibile
e
ci sta
è un suggerimento
che spesso
credo che
nel mondo
legato
all'informatica
sia
spesso applicabile
ecco
sicuramente importante
una preparazione formale
ma
avere qualcosa
da mostrare
io ho fatto questo
credo che
nel caso di molte aziende
faccia più scalpore
rispetto a
sono laureato
con il massimo
dei voti
in questa
o quella università
magari
ho un'università
meno rinomata
ho un valutatore
più nella media
ma ho fatto mille cose
forse
forse vale di più
assolutamente d'accordo
questo viene da una persona
che non si è mai laureato
con il massimo dei voti
quindi
più che d'accordo
perfetto
anch'io sono di quella
filosofia lì
anch'io non mi sono laureato
col massimo dei voti
quindi
ci battiamo alla spalla
virtualmente
a un oceano di distanza
e
abbiamo fatto bene
guarda
sul massimo dei voti
io potrei
io faccio
mi capita di fare
abbastanza spesso colloqui
ho provato a fare colloqui
a
ragazzi usciti
anche dal Politecnico di Milano
come
come me
come Luca
110 lode
bacio accademico
e chissà cosa
e
cioè
a domande
di una semplicità
banale
hanno risposto
in maniera
o
sono talmente
tanto intelligenti
che vanno oltre
quella che è la mia aspettativa
e quindi
io non sono in grado
di capire quello che loro
ma tipo
qual è la differenza
tra un iPhone
e un telefono Android
e lui mi ha risposto
il colore
cioè
robe del genere
quindi
sono assolutamente d'accordo
che
il voto
è un numero
e esprime una performance
in quel momento
in quelle condizioni
non è una
un'etichetta
che ti puoi portare addosso
io
volevo farti
scusami
due domande
prima di
concludere
visto che siamo arrivati
più o meno
al termine della puntata
però
ci tenevo
a farti queste domande
la prima è un po'
magari un po' stupida
ed è
ma
avete mai pensato
di fare una rete neurale
per capire
che qual è il prossimo
passo da fare?
sì
l'abbiamo fatto
è più una questione
di dire
a volte
e questo è uno
dei trade-off
con le reti neurali
come si comporta
la rete neurale
non è
completamente
interpretabile
per cui
prendere decisioni
di alto livello
di alta importanza
tramite una rete neurale
è abbastanza
tricky
è abbastanza
problematico
perché
questi modelli
sono black boxes
per cui non sai
esattamente come funzionano
all'interno
per cui
prendere
decisioni
tramite un modello
di machine learning
come una rete neurale
è molto potente
ma a volte
non sai per quale motivo
ha dato quella
predizione
quindi se ci dice
fai X
non siamo interamente
consci del motivo
per cui ci ha detto
di fare X
quindi
in alcune situazioni
è potente
utilizzare
questi tipi di algoritmi
ma in situazioni
un pochino più
delicate
soprattutto anche
nell'ambito
della salute
è più preferibile
utilizzare modelli
più semplici
ma più interpretabili
tipo regressioni
o
decision training
quindi
secondo me
hai già risposto
anche alla seconda domanda
che volevo farti
cioè
una delle difficoltà enormi
che io vedo
con una rete neurale
è che quando mi tira fuori
un output
faccio
un po' fatica
a dire
ok è giusto
o è sbagliato
cioè un algoritmo
che è definito
dalle regole
se io metto
un output A
e mi aspetto
tra virgolette
un output B
posso dire
adesso non ce la faccio più
devo correggerti
è tutta una puntata
che dici
output sia per output
che per input
si hai ragione
input A output B
scusa
non ce la facevo più
perdonami
ho confesso di aver fatto
un piccolissimo aperitivo
prima di iniziare la puntata
e a me la birra
fa un effetto
devastante
quindi
metto un input A
ed esce un output B
con un algoritmo
posso dire
è giusto
è sbagliato
devo rivedere l'algoritmo
devo modificare una regola
ho dimenticato un if
ho fatto qualcosa
so
che posso migliorare
ma ha una rete neurale
cioè
dire se alla fine
l'output
è giusto
o sbagliato
non penso
che sia
sempre
fattibile
cioè
penso per esempio
da lì
o deep fusion
per generare le immagini
io gli do
un input
gli dico
che cosa vorrei vedere
lui mi tira fuori
un'immagine
ma io
per quanto l'ho usato
difficilmente
riesco a dire
no qui
è sbagliato
adesso non so
se questo è un termine
che invece
quando si fa una rete neurale
c'è
o invece
non esiste
il giusto
o lo sbagliato
sì è un ottimo punto
ed è uno dei problemi principali
nell'ambito
del machine learning
ed è anche
uno dei modi migliori
per vedere appunto
se una persona
viene da
l'università
o viene da
aver avuto
progetti veri e propri
c'è di solito
un trade off
quindi c'è una
bilancia
tra
la complessità
di un modello
e l'interpretabilità
quello che
tu
vedi adesso
è esattamente
questo problema
cioè di dire
se io ho un modello
molto complesso
come una rete neurale
è molto potente
è molto predittivo
ma non ho idea
di
come funzioni
se sia giusto
se sia sbagliato
e quindi di solito
quello che
vuoi fare
è utilizzare
modelli un pochino
più semplici
in cui riesci
a
pick and drop a code
quindi aprire il modello
e riuscire a capire
come funziona
per esempio
se tu guardi
quelli che
si chiamano
decision trees
quindi
dei alberi
decisionali
quelli che ti permettono
di dire
ok la predizione
è questa
prendere questa decisione
perché
e poi seguire
proprio in una struttura
ad albero
quali sono state le decisioni
per cui ti dici
magari se l'età
è
45
o superiore
e
c'è quest'altra condizione
allora fai questo
e in quel modo lì
puoi capire
soprattutto tramite
un esperto
se
il ragionamento
le decisioni
che sono state prese
sono giusto o sbagliate
perché per esempio
nel caso
della medicina
se hai un dottore
riesce a dirti
ok il modello
prende questa serie
di decisioni
questo è quello
che farei io
e quindi è corretto
oppure ti puoi dire
no guarda
si sta
bloccando in questo modo
sta capendo
questi pattern
che sono sbagliati
e quindi
non ti devi fidare
è proprio
uno dei problemi principali
quello dell'interpretabilità
dei modelli
ok
e immagino
che sia parte
della complessità
della difficoltà
del tuo lavoro
ovviamente
cioè
va bene
e Eugenio
diciamo
che è stata
una chiacchierata
veramente
super interessante
per me
per Luca
spero lo sia stata
anche per tutti
i nostri ascoltatori
ti chiederei
adesso se qualcuno
magari ha qualche domanda
da rivolgerti
o vuole
seguirti più da vicino
quali sono i tuoi contatti
cosicché possiamo
lasciarli anche
nella notte della puntata
e chi ha voglia
poi di seguirti
o di contattarti
può
potrà farlo
comodamente
mi possono
sicuramente contattare
mi farebbe super piacere
soprattutto su LinkedIn
letteralmente
Eugenio Zuccarelli
su LinkedIn
o
J. Zuccarelli
J. Y.
Zuccarelli
su qualunque social media
per cui
da Instagram
a Twitter
alle mail
perfetto
allora noi lasciamo questo
nella notte della puntata
poi
hai intenzione di tornare in Italia
e poi
chiudiamo
ti piacerebbe un domani
o
ora che sei
hai viaggiato
dici
no sto bene
dove sto
mi piacerebbe tornare in Italia
è più una questione di
come dire
quali sono
le opportunità
al momento
comparate
per esempio
all'America
non trovo che
la situazione in America
sia molto migliore
diciamo
che in Italia
per vari motivi
ma
per un giovane
che vuole
appunto lavorare
vuole
cercare di avere
una situazione
molto meritocratica
ci sono enormi quantità
di opportunità
per un momento
diciamo
New York
ma
in futuro
l'Italia
sicuramente
molto bene
quindi un cervello
che ritorna
ci può fare piacere
non so
sono sempre stato indeciso
se è un discorso
provinciale
questo dei cervelli
che se ne vanno
i cervelli che tornano
però
è una considerazione
sicuramente
da fare
detto questo
veramente Eugenio
grazie mille
per essere stato con noi
per aver portato
una prospettiva diversa
al nostro podcast
speriamo che sia
piaciuto anche
ai nostri ascoltatori
ecco ogni tanto
ci piace fare
queste puntate
un po' speciali
un po' diverse
dalla solita routine
a cui li abbiamo
ormai abituati
ma chi magari
fosse stato
meno interessato
non tema
la settimana prossima
torneremo con il format
abituale
ecco sarebbe
utile avere
un feedback
dagli ascoltatori
potete farlo
inviando una mail
a info
chiocciolesi
apple.org
o lasciando una recensione
su apple podcast
se avete piacere
a diventare dei donatori
lo potete fare
l'ha spiegato molto bene
Luca inizia la puntata
abbiamo diversi metodi
satispay
stripe
abbiamo paypal
potete farlo direttamente
sul sito
o in fondo
alle note della puntata
e se poi avete piacere
sapete che c'è
una bellissima easy chat
su telegram
dove parliamo
tutta la settimana
del più e del meno
ma anche di argomenti
di tecnologia
si fanno domande
e si trovano risposte
si mettono input
e si trovano output
quindi la rete
l'easy chat
potrebbe essere
una rete neurale
ecco mettiamola così
non è vero
va bene
a parte le stupidate
su twitter
trovate oltre a
jezuka
trovate anche
ftrava
e trovate anche
luca tnt
e per questa
582esima puntata
è veramente tutto
grazie ancora
eugenio per essere
stato con noi
un mega saluto
da federico
un mega saluto
da luca
e noi ci sentiamo
la settimana prossima
con una puntata
di easy apple