2018/06/15

Perché è così difficile insegnare a un computer a guidare un’auto?

“Ma cosa ci vorrà mai”, pensano spesso i non addetti ai lavori quando si parla di programmare un computer per farlo interagire con il mondo reale. In fin dei conti, dicono, se un bambino è capace di riconoscere un oggetto e di allungare una mano e prenderlo, non può essere un compito così difficile insegnare la stessa cosa a una macchina: basta immettere le istruzioni giuste.

Non è così, e una bella dimostrazione di quanto sia difficile questa interazione è proposta da Andrej Karpathy, direttore del reparto di intelligenza artificiale di Tesla, in questa conferenza tenuta al TRAIN AI 2018. Il video è qui (l’embed non è permesso; la parte più ghiotta è dal quindicesimo minuto in poi) e le slide della sua presentazione sono qui sotto.



Sottolineo che quello descritto da Karpathy non è il software attualmente installato sulle Tesla, ma è la base di quello che verrà installato in futuro; alcuni suoi elementi sono già inclusi nel software installato a partire da marzo scorso.

L’azienda sta usando le immagini acquisite dalle telecamere di bordo delle proprie auto, circa 250.000 sparse per il mondo, per costruire un enorme archivio sul quale addestrare il proprio software di intelligenza artificiale in modo da permettergli, a furia di vedere esempi, di riconoscere gli oggetti che incontra per strada e gestirli di conseguenza.

Detta così pare facile: per insegnare a un’auto a riconoscere un semaforo basta farle vedere tanti semafori di vari tipi e il software si farà un’astrazione del concetto di semaforo. Ma Karpathy presenta alcuni esempi eloquenti di quanto possa essere variabile l’idea apparentemente semplice di “semaforo”.



Ci sono anche altri esempi chiarissimi nella presentazione di Andrej Karpathy. Pare abbastanza banale riconoscere le righe di delimitazione di una corsia, ma poi trovi cose come queste:





Anche la categoria “automobili” pare abbastanza ovvia da riconoscere, poi capita un caso come questo: quante auto sono? Una sola, due, quattro?


Uno degli aspetti più difficili è includere i casi atipici e rari: la stragrande maggioranza delle immagini campione acquisite e usate per addestrare l’intelligenza artificiale rappresenta auto e solo una piccolissima percentuale mostra altri veicoli insoliti, tipo i tram, oppure situazioni come le strade innevate.



Un caso che sembra comune ma in realtà è raro è il giallo dei semafori: è un segnale importante tanto quanto il verde e il rosso, eppure compare molto meno frequentemente degli altri due colori nelle immagini raccolte. Insegnare al software che un evento raro è importante e va capito bene tanto quanto uno frequentissimo non è banale.

Poi c’è l’incubo della lettura dei cartelli stradali (che mette in crisi anche molti esseri umani).



La parte più difficile, insomma, non è più scrivere le singole righe di istruzioni, ma costruire un repertorio di immagini realmente completo e correttamente bilanciato. Forse non arriveremo alla guida realmente autonoma finché non decideremo di semplificare e uniformare drasticamente la segnaletica e la viabilità, riprogettandola in funzione dei limiti del software di guida.

Nessun commento:

Posta un commento

Se vuoi commentare tramite Disqus (consigliato), vai alla versione per schermi grandi. I commenti immessi qui potrebbero non comparire su Disqus.

Pagine per dispositivi mobili