Nonostante gli assistenti vocali casalinghi, la guida assistita, il navigatore intelligente, gli strumenti di sorveglianza basati su AI, il riconoscimento di oggetti, i sistemi biometrici, stiano invadendo il mercato, non possiamo ritenerci neanche “vicini” al raggiungimento di una intelligenza artificiale che si possa definire “generale”, nel senso che spiegheremo in questo articolo.
La voracità dei mercati, che necessitano di mezzi informatici veloci e affidabili, sta premiando i prodotti “plug & play” come gli assistenti intelligenti, o i rilevatori facciali. In alcuni casi apprendiamo di società per la selezione del personale che hanno come “co-bot” (algoritmi di assistenza intelligente) selezionatori automatici di curricula che rispondono a caratteristiche che nell’azienda si sono rivelate “vincenti”, per poi attivare i colloqui di lavoro con personale umano.
Ma cosa accade se le caratteristiche “vincenti” in azienda sono dei vizi etici che andrebbero piuttosto eliminati o disincentivati? Cosa accade se quel tal meccanismo di selezione viene appreso come “vincente” dal co-bot come ad esempio evitare di selezionare personale femminile o minoranze etniche o peggio ancora disabili?
Tutti questi sono sistemi di Intelligenza Artificiale che non “comprendono” i compiti affidati, ma si limitano a “scimmiottarli” – peraltro perfettamente – in base ad una serie di prove ed errori sorvegliati da un sistema di addestramento che “premia” i successi e “frustra” gli errori.
Il problema etico di cosa sia un “successo” a dove sia un “errore” viene lasciato all’interpretazione dell’input umano in fase di addestramento del sistema. Se vogliamo affidarci però a questi sistemi in modo sicuro, dobbiamo fare in modo che “comprendano profondamente” il mondo che li circonda e in cui noi esseri biologici viviamo, prima che un utilizzo “spensierato” porti a conseguenze pericolose.
IA, fermi a 2000 anni fa
L’intelligenza Artificiale attuale si destreggia su problematiche che rimangono invariate nel tempo, pensiamo ad esempio al gioco degli Scacchi o al Go, dove il problema non cambia da 2000 anni: una IA generale, dovrebbe essere in grado di inquadrare “al volo” lo spazio di risoluzione di un quesito e risolvere, da sola, soprattutto nuovi problemi. Dovrebbe trovarsi parimenti a suo agio a ragionare di politica quanto di medicina o di legge, e dovrebbe essere l’analogo dell’essere umano: chiunque sia ragionevolmente acculturato e brillante può fare molte, moltissime cose diverse, e farlo anche contemporaneamente, senza confondersi. Dopo un tirocinio universitario, un essere umano può essere messo a svolgere un compito praticamente su qualsiasi cosa, da un problema legale a un problema medico.
Questo accade perché la nostra intelligenza ha una comprensione generale del mondo e lo sa “leggere” anche quando è strano o complesso rispetto a quanto appreso precedentemente, creando anche contributi “originali” non pensati prima su una vasta gamma di argomenti.
Un (infantile) rifiuto delle regole
Come è giusto che sia per una tecnologia “adolescente” in piena fase “puberale”, l’IA attuale è in realtà un framework per il riconoscimento di modelli generali del mondo su cui è possibile soltanto svolgere delle classificazioni, ma senza mai inferire delle regole generali. Le reti neurali, che oggi sono usate massivamente su quasi tutti i problemi di carattere previsionale, non sembra siano molto a loro agio con le regole.
Non a caso, l’IA degli albori, di quando cioè venivano soltanto teorizzati i comportamenti di certi algoritmi, veniva fondata proprio sulla creazione costruttivista di regole incrementali e sempre più complesse (If…then…else…. Etc.).
In questo momento dell’evoluzione del deep learning, invece, è in voga una strana tendenza in cui l’astrazione e la costruzione di regole generali di comportamento viene aggirata e in generale evitata.
Esattamente come nel paradosso di Russel nella matematica, non è possibile risolvere tutti i problemi con degli aggregati auto-apprendenti come le reti neurali. Ci sono dei problemi che devono essere basati su regole: valga un esempio per tutti il navigatore satellitare che ci guida nelle strade, ottimizza il percorso, tiene conto dei sensi di marcia e del traffico.
In realtà abbiamo bisogno di entrambi gli approcci. Il materiale di apprendimento automatico è abbastanza buono nell’apprendimento dai dati, ma è molto scarso nel rappresentare il tipo di astrazione rappresentata dai programmi per computer. L’IA classica è piuttosto brava nell’astrazione, ma deve essere tutto codificato a mano e c’è troppa conoscenza al mondo per inserire manualmente tutto. Quindi sembra evidente che ciò che vogliamo è una sorta di sintesi che mescoli questi approcci.
Quando una IA non si sa spiegare
I controlli a campione ai metal detector, per essere velocizzati e funzionali, vengono recentemente sperimentati negli aeroporti grazie a sistemi di IA che “suggeriscono” chi fermare.
Quindi se viaggiate in questi aeroporti, un sistema di riconoscimento facciale abbinato al sistema di analisi dei bagagli e al tracciamento della vostra posizione, potrebbe avervi scelto nella fila al check-in e voi, mentre vi stavano perquisendo, potreste aver perso il vostro volo: sappiate che non c’è alcun modo di chiedere ad un esperto che gestisce i sistemi di IA il perché il sistema abbia scelto “proprio voi”. La fredda risposta che oggi otterreste è che “in base alla media dei comportamenti sospetti precedenti, il vostro è risultato selezionato”.
Anche la decisione di un sistema di rilevamento a bordo delle moderne auto potrebbe segnalarvi pericoli, targhe, segnali e cambi repentini di corsia. Tutti allarmi che vi aiuterebbero a comportarvi correttamente nel traffico stradale, ma chiedendone le motivazioni la risposta sarebbe invariabilmente che: “in base alla media delle situazioni apprese durante l’addestramento, il pericolo segnalato è risultato reale”.
Se il vostro smartphone vi sta mostrando la possibilità di acquisto di 5 indici di borsa tra Milano, New York e Tokio, potete scegliere di esaminare il grafico delle vostre azioni e decidere di seguire il consiglio, ma di nuovo non potrete chiedere perché: la risposta sarebbe di nuovo che “in base alla media dei comportamenti degli indici osservati in precedenza, “di solito” diventa conveniente acquistare in casi come questi”.
Se il volto del vostro amico, riconosciuto dal vostro smartphone sblocca il vostro telefono e lo lascia accedere ai vostri dati, alla richiesta del perché lo abbia lasciato entrare nel vostro telefono otterremmo una risposta del tipo “ti somigliava troppo, sembravi proprio tu”.
L’IA attuale lavora sulle similitudini, sulla replica dei comportamenti, sull’imitazione insomma.
Spiegare l’analisi di una certa situazione per cui una IA lavora è proprio quello che una attuale IA non può fare fare, perché non è in grado di farlo, perché non è previsto dai suoi algoritmi che lo sappia fare.
E’ necessaria allora una implementazione di Intelligenze Artificiali “Autoesplicative”: “self -Xplain – able” cioè che siano in grado di spiegare le proprie decisioni rispetto a delle regole, rispetto alle ragioni delle proprie scelte: “X-IA“: per l’appunto.
L’IA apprende attraverso l’osservazione (anche delle “brutte abitudini”)
“Viviamo un momento storico in cui l’IA è percepita come pericolosa”, come recentemente ha dichiarato un imprenditore come Elon Musk.
Qui però non facciamo riferimento alle preoccupazioni di Musk – che ha fondato OpenAi, un’organizzazione no-profit di ricerca sull’intelligenza artificiale sostenuta e fondata da lui ed altri professionisti del settore – in proposito ai pericoli etici legati ad una super-IA.
Ci stiamo piuttosto riferendo a sistemi IA che imparino esempi e comportamenti senza accorgersene e senza appello, proprio e soprattutto perché le tecniche come quelle sulle reti neurali che vengono attualmente usate sono troppo poco sofisticate (altrimenti qualunque sistema dovrebbe essere collegato a dei supercomputer in cloud) e, anche se ci rendiamo perfettamente conto che queste cose non funzionano ed è pericoloso, continuiamo a diffonderne le varie applicazioni worldwide e non stiamo provvedendo per nulla riguardo l’estrema ottusità di questi sistemi.
Vengono rilasciate allora in commercio telecamere di sorveglianza che discriminano certi tratti razziali, perché la tonalità del colore della pelle rende difficile il riconoscimento. Oppure sistemi di videosorveglianza IA resi particolarmente paranoici per scoprire chi si aggira “troppo” intorno alla nostra Tesla parcheggiata sulla strada (dove la chiave è stabilire quanto sia “troppo”). Sistemi che svolgono perfettamente un compito sofisticato, senza sapere “perché” lo svolgono e cosa viene prima e cosa viene dopo la loro azione.
Un drone militare di pattuglia su un territorio, armato di sistemi di intelligenza artificiale, farà fuoco su un uomo in fuga all’uscita da una strada sorvegliata perché è addestrato a fare così, non a chiedersi sul “perché” quell’uomo sta fuggendo. Un co-bot medico che vede alzarsi la velocità del sangue inferirà immediatamente una infezione, senza chiedersi se il paziente sta correndo (a meno che qualcuno non lo abbia previsto a monte).
L’intelligenza artificiale e le implicazioni nel mondo reale
Finora l’adozione dell’IA sul modello Deep Learning correlata con strumentazioni di utilizzo comune, ha già generato molto valore per il mercato e dunque per i singoli cittadini, in termini di sicurezza e sorveglianza.
Ma per creare macchine più capaci e ampiamente intelligenti, spesso definite colloquialmente come intelligenza generale artificiale, il deep learning non è più sufficiente e deve essere combinato con altri metodi.
Ci sono già stati innumerevoli esempi: rivelatori costruiti per tracciare conversazioni ostili o che incitano all’odio ma tuttavia molto facili da ingannare, auto a guida autonoma che hanno causato incidenti, a volte uccidendo il conducente o un pedone. La ricerca dell’intelligenza generale artificiale è più che un interessante tema di ricerca. Ha implicazioni nel mondo reale.
Sembrerebbe insomma che variazioni ambientali del “setting” in cui le attuali IA operano, con cambiamenti imprevisti, portino i sistemi ad operare in modo fortemente instabile fino a renderli malfunzionanti.
Questo non è soltanto un problema utilitaristico, ma ovviamente si richiama anche alla sicurezza in generale e alla cyber security in particolare, specialmente in quelle strutture critiche in cui l’IA viene usata per abbattere i costi o per mettere sotto controllo costose apparecchiature.
Deep Mimic o Deep Learning?
Una rete neurale, si comporta, addestrata, reagendo rispetto alla probabilità per ciò che potrebbe accadere in una determinata circostanza. Essa non fornisce spiegazioni sul perché le cose accadano ma imita il comportamento appreso. Potremmo vederla come una scimmia molto, molto specializzata.
Preferiremo dunque le reti neurali, e i gli algoritmi che le compongono, in tutti quei casi in cui la realtà può cambiare rispetto a variabili ben identificate ma non quantificabili a priori come ad esempio la temperatura ottimale dell’acqua di un miscelatore della doccia, che può essere ritenuta «troppo fredda» rispetto a set di valori molto divergenti tra loro (lo stato di salute dell’individuo, la stagione dell’anno, la temperatura esterna, l’ambiente da cui si proviene entrando in doccia).
Preferiremo invece una X-IA, in tutti quei casi di ragionamento “causale” dove invece le situazioni devono essere dedotte da cause non note a priori, e si dovranno allora compiere delle astrazioni e delle generalizzazioni o specializzazioni di regole con calcoli proposizionali con molte variabili, astraendo conclusioni utili ad un comportamento conseguente ed efficace, non note a priori.
Anche in questo caso ne sia un esempio l’osservazione di un ambiente in cui osservo un oggetto che giudico poggiato “male” sul tavolo in base a delle regole di astrazione che conosco (la fisica dei gravi) e devo prevedere il comportamento futuro di questo oggetto “in bilico” su una superficie ma non ancora caduto, e sul quale dovrei compiere delle inferenze su quanto vicino posso passargli accanto, se posso scuoterlo accidentalmente o no, e le conseguenze di una caduta fortuita dalla posizione in cui si trova per dedurre ulteriori danni (pavimento, animali domestici, altri oggetti).
Correzione dell’errore nell’IA
Le regole apprese durante un addestramento vengono apprese per sempre, non possono essere dimenticate, ma solo modificate con altre regole sovrapponendo nuovi esempi. Il sistema reagisce con un grado di affidabilità percentuale rispetto ad una soglia desiderata, e la reazione del sistema può essere a volte falsata in positivo o in negativo rispetto alla prestazione desiderata. E’ certamente sempre possibile apprendere nuove regole da esempi (accrescere la propria conoscenza di elementi simili a quelli appresi e riclassificare velocemente includendo i nuovi).
Questi sistemi sono perfettamente utilizzabili quando occorre approssimare comportamenti non riducibili a regole precise: rilevare comportamenti “sospetti”, evitare percorsi “sconsigliati”, identificare rumori “indesiderati”, correggere immagini “sfocate”, rimanere in “equilibrio” dinamico; laddove termini quali “sospetto”, “sconsigliato”, “indesiderato”, ”sfocato”, ”equilibrio dinamico” non sono definibili deterministicamente in senso aritmetico, e vanno appresi con degli esempi.
Non è invece affatto possibile inferire da variabili non monitorate, impreviste/imprevedibili (nuove correlazioni) tra eventi precedentemente osservati ma non relazionati da un essere umano o da un apposito “addestratore”.
Ne vale davvero la pena?
Dobbiamo davvero voler fare questo salto di qualità?
Questa domanda va formulata diversamente: “Vogliamo che una IA lavori con noi anziché per noi e ci suggerisca nuove strade”? “Vogliamo davvero fare nuove scoperte in medicina su larga scala”?
Si potrebbe obiettare che siamo già al punto in cui l’IA aiuta in ambiti di ricerca medica o in altri ambiti di ricerca scientifica in generale ed è vero, ma sono tuttavia ambiti “specifici”: gli scienziati, dediti alla comprensione del mondo e alla scrittura di nuove relazioni tra la realtà e il possibile, per svolgere il loro mestiere, devono avere una comprensione causale su come interagiscono reti di sistemi complessi, leggi fisiche, o elementi chimici; possono sviluppare da queste intere teorie su orbite e pianeti o altro, senza in realtà dover neanche recarsi lì, o rimpicciolirsi ad osservare comportamenti atomici, subatomici e quantistici. Non si basano su modelli che “mimano” la realtà, perché in molti casi la realtà non è osservabile, dunque devono “dedurla”.
Con un’intelligenza artificiale ridotta ad un livello imitativo non saremo mai in grado di ottenere macchine da affiancare a questi ricercatori perché li aiutino a svolgere una parte di questo compito di innovazione.
Con una X-IA generalizzata, potremmo essere in grado di cominciare ad affidarci al software per capire e verificare le dimostrazioni teoriche, alcune delle quali – in campo matematico, ad esempio – oggi sono diventate talmente complesse che praticamente nessun essere umano sulla Terra può capirne i dettagli, figurarsi saper dimostrarle.
L’importanza della dimostrazione
Una dimostrazione, è un processo di deduzione della validità di un assunto. Le dimostrazioni si sommano poi tra loro e attraverso modalità logiche, che viene poi applicata in altri campi: matematica, fisica, chimica.
Ovviamente si deve partire da una definizione. Ad esempio per dimostrare il noto sillogismo secondo il quale se tutti gli uomini sono mortali, e Socrate è un uomo, allora Socrate è mortale.
Si propone una definizione: appunto che tutti gli uomini sono mortali, poi si formula un teorema, ad esempio che Socrate è mortale.
La prova che ci aspetteremmo consiste nel ragionamento logico che dimostra il teorema come vero o falso—in questo caso, “vero”.
I passaggi logici nella dimostrazione si appoggiano su altre verità precedenti, che sono già state accettate e dimostrate. Per esempio, che anche Socrate è un uomo.
Sono bandite evidenze che non scaturiscano strettamente da quello che si è già detto, (come il fatto che Socrate debba necessariamente essere mortale, in quanto morto e sepolto e passato a miglior vita molto tempo fa).
Una X-IA, dovrebbe poter svolgere questo percorso a ritroso ogniqualvolta si desideri una spiegazione di quanto si afferma.
E’ il pane quotidiano dei Logici e dei Matematici professionisti, per i quali ogni nuova dimostrazione, per quanto complessa, tende ad appoggiarsi su un intero bacino di risultati precedenti che sono già stati pubblicati e compresi. Ma anche su questo emerge la necessità di un co-bot basato su XIA generalizzata.
Ricontrollare (e correggere?) la matematica
Una X-IA potrebbe controllare che la teoria matematica attualmente in piedi possa avere delle lacune, o degli assunti più deboli di quanto si pensi…
Kevin Buzzard, un teorico dei numeri, ha sostenuto recentemente che “una nuova dimostrazione di teoremi matematici può richiedere la citazione di anche 20 altri paper, e uno solo di questi 20 ha magari 1.000 pagine e più di ragionamenti densissimi. Se un matematico rispettato cita il paper da 1.000 pagine partendo in qualche altro modo dai presupposti di questo paper, allora molti altri matematici possono semplicemente assumere che il paper da 1.000 pagine (e la nuova dimostrazione) siano veri e non si prenderà la briga di controllare. Tutta l’Alta Matematica su cui oggi ci basiamo, deve essere universalmente dimostrabile, non contingentata a una manciata di esperti.”
Tutto questo rende più fragile la comprensione della verità. Nonostante esistano e siano già operativi i software di logica dimostrativa e verifica, un campo in netta crescita, capacità del genere non sono implementate sistematicamente e raggruppate in una X-IA. Per far ciò una X-IA dovrebbe saper attivare e formalizzare una dimostrazione, o convertirla dalla lingua umana ai simboli che si usano nella logica dei predicati. Deve anche formalizzare qualsiasi definizione e dimostrazione sussidiaria su cui si basa il suo nuovo lavoro. Tuttavia, il settore dei software di dimostrazione logica esiste da decenni ed è in continuo miglioramento, ma non siamo ancora a un punto di svolta, all’interno delle branche dell’Intelligenza Artificiale. Gli informatici potrebbero usare questo database per completare le intelligenze artificiali. Dato che i risultati sarebbero definiti secondo un formalismo preciso, sarebbe molto più semplice per un software IA imparare a trovare delle scorciatoie di generalizzazione, che non memorizzare milioni di situazioni possibili tutte disgiunte tra loro.
Alla fine, qualcuno potrebbe creare X-IA generalizzata, un algoritmo che possa creare autonomamente le proprie dimostrazioni, applicare cioè da solo la logica matematica, rendendo la verità democraticamente accessibile (ora non lo è, ed è per questo che non si può consultare Wikipedia alla voce “perché la Terra non è piatta”: costerebbe immensamente scrivere tutte le pagine che spiegano “perché non è vero il contrario” di una Verità. Una X-IA potrebbe farlo autonomamente attraverso un chatbot che associ le diverse regole supportando i ragionamenti con dei fatti, senza scrivere una riga in più di Wikipedia)
Avremo allora quello che nella scienza cognitiva è chiamato un “modello cognitivo” delle cose. Quindi sono seduto in una stanza d’albergo e capisco che c’è un armadio, c’è un letto, c’è la televisione. Non solo vedo le cose ma non mi limito ad identificarle banalmente, anzi, io “capisco” anche come si relazionano tra loro. Ho quindi una mia rappresentazione personale su come funziona il mondo esterno. Magari non sarà “perfetta”: sicuramente è fallibile, ma “affidabile” tanto quanto basta per assumere comportamenti corretti la maggior parte delle volte, e su questa faccio molte inferenze per guidare le mie azioni quotidiane.
La conoscenza “innata”: il BootStrap di un sistema IA
Esiste poi nel mondo animale un grado di conoscenza “innata”. Nel caso umano, quando si nasce, sembra che il cervello sia in realtà pre-strutturato in modo molto elaborato: non si è ancora risolto il “come”, ma – per così dire – è già presente una “prima stesura” di coscienza, una bozza approssimativa. Saranno i nostri meccanismi di apprendimento a rivedere tale bozza per tutto il resto della vita.
Ci sono molti altri casi in natura in cui il cervello neonato ha già alcune capacità: la nostra conoscenza innata proviene dai nostri genomi che si sono evoluti nel tempo. Tartarughe marine che non appena schiuse le uova depositate sulla spiaggia corrono verso il mare evitando i predatori. Un piccolo stambecco di poche ore che tuttavia sa arrampicarsi in cima ad una montagna senza sbagliare. Chiaramente ha una certa comprensione dello spazio tridimensionale, del proprio corpo e dell’interrelazione tra i due. Tutte abilità piuttosto sofisticate.
Ibridazione dell’intelligenza artificiale
Come potremmo costruire un robot che funzioni bene nel mondo senza un’analoga conoscenza di startup fin dall’inizio dell’apprendimento? E’ impossibile da una lavagna vuota e per imparare attraverso un’esperienza enorme e massiccia, occorre ibridare l’AI con i due sistemi visti ora: una conoscenza pregressa costituita da conoscenze-competenze hard, genetica, che usa metodi di costruzione del sapere basati sulla “sopravvivenza” di abitudini vincenti e la “soppressione” di abitudini perdenti, di Bootstrap – per così dire – e una conoscenza successiva di AI-Estesa e Generalizzata attraverso l’auto-astrazione autonoma di regole.
Per citare una fraseologia nota e talvolta abusata, occorre anteporre l’ottimismo della volontà di realizzare dei sistemi di Intelligenza Artificiale che soddisfino le nostre condizioni e i nostri bisogni, al pessimismo della consapevolezza di quanto questa aspettativa potrà essere soddisfatta solo nel lungo termine.