Cerca nel blog

2021/11/12

Podcast del Disinformatico RSI 2021/11/12: Api e robotaxi, gli inganni della guida autonoma


Ultimo aggiornamento: 2021/11/14 9:30.

È disponibile subito il podcast di oggi de Il Disinformatico della Rete Tre della Radiotelevisione Svizzera, condotto dal sottoscritto: lo trovate presso www.rsi.ch/ildisinformatico (link diretto). Questa è la versione Story, dedicata all’approfondimento di un singolo argomento. 

Questa puntata è una riedizione aggiornata e ampliata di un mio articolo di giugno 2021, che contiene informazioni di sicurezza automobilistica che credo meritino di essere ripetute e soprattutto diffuse anche a chi ascolta i podcast, magari in auto, ma non legge i blog, ora che le auto a guida assistita, specialmente le Tesla, stanno avendo un picco di vendite.

I podcast del Disinformatico di Rete Tre sono ascoltabili anche tramite feed RSS, iTunes, Google Podcasts e Spotify.

Buon ascolto, e se vi interessano il testo e i link alle fonti della storia di oggi, sono qui sotto!

---

Si parla tanto di intelligenza artificiale applicata alla guida autonoma, e YouTube è piena di pubblicità e dimostrazioni di come le auto più moderne siano, almeno in apparenza, in grado di viaggiare da sole. Nomi come Waymo, Cruise, Tesla annunciano l’imminenza dei robotaxi: alcune aziende già offrono il servizio a livello sperimentale. Ma questi video possono essere molto ingannevoli.

Dimostrazione del “robotaxi” di Waymo a guida interamente autonoma.
Dimostrazione del software FSD beta di Tesla (non ancora disponibile in Europa e rilasciato in USA solo a un numero limitato di utenti).

Questa è la storia di tre princìpi che possono creare un’illusione di competenza di questi robotaxi annunciati, che può portare a gravi incidenti in cui l’informatica incompresa ha un ruolo centrale, e di come le menti migliori del settore stanno cercando di risolvere questo problema.

---

Ci sono tre princìpi fondamentali per capire il motivo e il pericolo degli attuali sistemi di guida assistita, quella in cui il conducente resta comunque responsabile, e di guida autonoma, quella in cui il conducente non conduce ma è semplice passeggero passivo.

Il primo principio è questo: l’intelligenza artificiale usata per la guida autonoma o assistita, più precisamente la sua parte denominata machine learning, è semplicemente un riconoscimento di schemi e non costituisce “intelligenza” in alcun senso significativo della parola.

Secondo principio: il riconoscimento di schemi fallisce in maniera profondamente non umana e in situazioni che un umano invece sa riconoscere in maniera assolutamente banale. Questo rende difficilissimo prevedere e gestire i fallimenti del machine learning e quindi rende pericolosa la collaborazione umano-macchina.

Terzo principio: qualunque sistema di guida autonoma o assistita basato esclusivamente sul riconoscimento degli schemi è destinato a fallire in maniera imbarazzante e potenzialmente catastrofica.

    Prima di spiegare i dettagli di questi tre princìpi, riassumo cosa si intende per machine learning: in estrema sintesi, si danno in pasto a un software tantissimi esempi di una cosa, tantissimi esempi di cose differenti (ossia che non sono quella cosa) e lo si “premia” quando riconosce correttamente la cosa in questione.

    Questo apprendimento automatico può raggiungere livelli di affidabilità altissimi e in molti casi funziona egregiamente. Il riconoscimento ottico dei caratteri e il riconoscimento vocale sono esempi di grande successo del machine learning

    Ma si può dire che un sistema di riconoscimento di testi sia intelligente? Capisce che sta leggendo un sonetto di Shakespeare o una mail di spam, e può quindi adeguarsi di conseguenza? È in grado di considerare il contesto e di usarlo per risolvere ambiguità?

    No, perché non ha conoscenza del mondo reale; conosce soltanto delle forme (le lettere) e assegna loro una probabilità di corrispondere a uno dei modelli che conosce. Non sa nulla del loro significato e quindi non può correggersi di conseguenza. E non importa quanti miliardi di campioni di lettere o di parole gli si danno: non acquisirà mai la comprensione del testo.

    Ogni tanto questi sistemi di riconoscimento sbagliano, ma non è un problema. Se un sistema di riconoscimento di testi “legge” una parola al posto di un’altra non muore nessuno. Se Alexa crede che l’abbiate chiamata, quando invece stavate pronunciando il nome della vostra spasimata Alessia durante un momento di passione, il peggio che può succedere è che la registrazione del vostro amplesso finisca nel cloud di Amazon e venga scambiata fra i dipendenti dell’azienda che fanno il monitoraggio dei campioni audio. Imbarazzante, ma probabilmente non letale.

    La ragazza che si chiama Alessia è un cosiddetto edge case: un caso limite, una situazione rara che però fa sbagliare clamorosamente il sistema di riconoscimento.

    Questi sbagli avvengono in modi strani, perché l’addestratore umano, quello che insegna al software a riconoscere una forma o un suono, non riesce a calarsi nella “visione del mondo” che ha quel software e non riesce ad anticipare tutti i modi possibili nei quali potrebbe prendere un granchio, e non riesce quindi a insegnargli a riconoscere tutti questi casi limite.

    Lo ha spiegato benissimo uno che di queste cose ne capisce a pacchi, Andrej Karpathy. È direttore del reparto di intelligenza artificiale di Tesla, un’azienda che sta basando i propri sistemi di guida assistita (per ora) e autonoma (in futuro) sul riconoscimento visivo degli oggetti. In una sua lezione magistrale del 2018 ha mostrato due esempi fra i tanti. 

    [Mi correggo rispetto a quello che dico nel podcast: gli esempi del 2018 sono quelli qui sotto; l’esempio della bici è tratto invece da una sua conferenza del 2019, linkata più avanti]

    Quante auto sono? Una, quattro o due?
    Come si possono annotare (identificare per il software) le linee di corsia quando fanno così?

    Un’auto caricata a coda in avanti su una bisarca: è un’auto in contromano?

    Credit: Roman Babakin / Shutterstock (fonte).

    Una bici montata di traverso sul retro di un’auto: è una bici che sta tagliando la strada al conducente, che quindi deve frenare?

    Dal Tesla Autonomy Day (2019) a 2:06:25.

    Un altro esempio molto concreto di questi edge case viene successivamente pubblicato con clamore e divertimento su Reddit: un camion ha dei cartelli di stop dipinti sul portellone posteriore, e il sistema di riconoscimento ottico dei cartelli di una Tesla li etichetta e li mostra come se fossero cartelli reali.

    Cosa succede se il sistema di decisione dell’auto ritiene che quei cartelli disegnati siano reali e quindi inchioda in mezzo alla strada, creando la situazione perfetta per un tamponamento a catena? 

    Ìl sistema è sufficientemente sofisticato da tenere conto del contesto e quindi “sapere” che i cartelli stradali normalmente non si muovono lungo le strade, e quindi è in grado di rigettare il riconoscimento e ignorarlo nelle sue decisioni di guida?

    Un conducente umano, avendo conoscenza del mondo, non avrebbe la minima esitazione: “sono chiaramente cartelli dipinti sul retro di un camion, li posso tranquillamente ignorare”. Un sistema di guida autonoma o assistita non è necessariamente altrettanto consapevole. E soprattutto il conducente potrebbe essere in difficoltà nell’anticipare questi possibili errori che lui non commetterebbe mai.

    Si potrebbe pensare che incontrare un veicolo con dei cartelli stradali disegnati sul retro sia un caso raro. Ma è stato pubblicato online un altro caso ancora più bizzarro: una Tesla Model 3 viaggia a 130 km/h e mostra un flusso costante di semafori che appaiono dal nulla sulla corsia del conducente.

    Un essere umano sa in un millisecondo che questo è impossibile, perché ha conoscenza del mondo e sa che i semafori non volano e non compaiono dal nulla; il sistema di guida assistita no, perché non “sa” realmente che cosa sono i semafori nel mondo reale e quindi non “sa” che non possono apparire dal nulla a 130 km/h.

    Che cosa ha causato questo clamoroso errore di riconoscimento? Un camion che trasportava semafori.

    E non è l’unico caso segnalato dagli utenti di queste auto: altri conducenti hanno citato addirittura camion che trasportavano semafori accesi, che sono stati riconosciuti come impossibili semafori volanti dalle loro auto.

    Per non parlare delle bandiere verticali della Coop, nelle quali la forma circolare delle lettere viene scambiata per quella delle luci di un semaforo.

    [Ho aggiunto i due esempi seguenti, che mostrano la Luna scambiata per un semaforo e un camion il cui retro è uno schermo che mostra la strada davanti al camion stesso, dopo la chiusura della registrazione del podcast]

    Questo è esattamente il tipo di errore che un conducente umano non commetterebbe mai e che invece un sistema di guida basato esclusivamente sul riconoscimento delle immagini farà, e farà in circostanze imprevedibili. Con conseguenze potenzialmente mortali. Se state valutando un’auto dotata di questi sistemi, pensateci bene. Se ne avete una, pensateci ancora di più.

    Certo, gli umani commettono altri tipi di errori, per cui alla fine l’obiettivo di questi sistemi non è creare una soluzione di guida assolutamente infallibile, ma semplicemente una che fallisca mediamente meno (ossia causi meno incidenti) della media dei conducenti umani.

    Ma tutto questo vuol dire che la guida autonoma basata sul riconoscimento puro degli schemi è impossibile? Non è detto.

    Una soluzione potrebbe essere semplificare l’ambiente operativo, creando strade su misura, rigidamente normate, accessibili soltanto a veicoli autonomi o assistiti. Per esempio, un ascensore (che in sostanza è un treno verticale in una galleria verticale chiusa) è un sistema di “guida autonoma” affidabilissimo, che richiede pochissima “intelligenza” grazie a un ambiente operativo ipersemplificato.

    Allo stesso tempo, va notato che ci sono esempi di sistemi che interagiscono egregiamente con un ambiente operativo complesso pur avendo una “intelligenza” molto limitata: le api. Con un solo milione di neuroni riescono a navigare, interagire con i fiori, comunicare con le altre api, gestire gli aggressori e avere una società complessa e organizzata. hanno persino delle “votazioni”).

    Noi abbiamo cento miliardi di neuroni, cioè centomila cervelli d’ape, a testa e a volte non riusciamo a capire come indossare una mascherina o perché. Chiaramente c’è un margine di ottimizzazione che le api sfruttano e noi no, ma è anche vero che un’ape va in crisi quando incontra l’edge case di una cosa che non esiste in natura, tipo una barriera trasparente: il vetro di una finestra.

    È anche possibile che estendendo il concetto di riconoscimento degli schemi all’asse del tempo (ossia imparando a riconoscere come cambia un oggetto nel corso del tempo) ed estendendo il concetto di schema a oggetti complessi come incroci, rotatorie e attraversamenti pedonali, si riesca a ottenere risultati accettabili.

    [Aggiungo un esempio di tentativo di ricostruzione dell’ambiente 3D tramite riconoscimento di immagini lungo l’asse del tempo, proposto da Karpathy di Tesla nel 2019. Il video dovrebbe partire già posizionato nel momento esatto, altrimenti andate a 2:16:40]

    Ma tutto questo richiede un database di esempi colossale, una classificazione vastissima e una potenza di calcolo ancora più colossale. Nessuno dei sistemi attualmente in commercio ci si avvicina. Siate prudenti e non fidatevi dei video su YouTube.

    Nessun commento: