Come funziona il Machine Learning, in pratica?

Facciamola più semplice, analizzandola in tre parti. Ogni programma è una serie di righe di codice in cui, con un linguaggio di programmazione, si istruisce un sistema a compiere una determinata azione quando si verificano certe condizioni: l'auto non si chiude quando premi il pulsante perché è programmata per chiudersi solo quando tutte le portiere sono ben chiuse.

Le righe di codice del Machine Learning dicono come, cosa e in quale situazione bisogna scrivere — o riscrivere — un'altra parte del programma.

Cosa succede davanti a un problema mai visto prima?

Qui iniziano i problemi veri. Significa che può verificarsi un evento per cui nessun'altra parte del programma ha previsto un'azione da compiere: il Machine Learning cerca allora una soluzione simile a qualcosa che ha già risolto correttamente. Se non trova nulla di già visto, il sistema inizia a provare soluzioni finché l'intero programma non svolge la sua funzione correttamente fino alla fine — un procedimento che, visto da fuori, può risultare quasi comico per quanto è ostinato.

Un esempio: scriviamo un programma che componga musica. Definiamo il codice e gli insegniamo le note da usare, poi alleniamo la macchina a scrivere canzoni. Alcune saranno belle, altre no: lo alleniamo a farne di più belle, spiegandogli che quelle brutte non sono musica.

Dopo l'allenamento, lo lasciamo comporre da solo del melodioso jazz. Tra i risultati ci saranno sicuramente brani degni del miglior John Coltrane, ma anche canzoni poco riuscite, e altre che non saranno né jazz né, probabilmente, musica in senso stretto. Questo perché, nonostante l'allenamento, il sistema non sa davvero cosa sta facendo: lavora con un numero limitato di simboli e li combina seguendo schemi che non portano sempre a una buona composizione. Non saprà mai cosa sia davvero bella musica per un orecchio umano — non ha udito — e continuerà così finché non lo perfezioniamo, dandogli sempre più esperienze da cui imparare, fino a farne uscire ottimi pezzi jazz.

Quali sono i limiti reali del Machine Learning?

Qui la questione si fa più seria. Il Machine Learning può riscrivere parte del codice del programma in cui opera, certo — ma chi lo ha scritto non lo lascia libero di riscriversi all'infinito fino a diventare qualcosa di incontrollabile: per questo vengono fissati limiti rigidi. In generale, possiamo dire che:

Dormite sogni tranquilli: c'è chi progetta questi sistemi pensando anche a tutto quello che, da utenti, non vi verrebbe mai in mente di considerare. Chiaro, no?

Potrebbe anche interessarti