La società della mente, Minsky
31 10 2007Nell’ultimo periodo mi è capitato di leggere uno dei libri chiave del mondo dell’Intelligenza Artificiale: La Società della Mente di Marvin Minsky, co-fondatore del laboratorio AI presso il MIT e autore di numerosi testi riguardanti l’AI e la filosofia.
Questa è la recensione con cui Bol.it presenta il libro:
Per anni, l’Intelligenza Artificiale, a cui oggi si dedicano milioni di dollari per la ricerca e l’energia intellettuale di migliaia di scienziati, è stata una sorta di chimera nella mente di un uomo: Marvin Minsky. A lui in primo luogo si deve, infatti, se questa disciplina ha assunto una fisionomia, si è distaccata dal resto della ricerca, e infine, se ha attratto così tanti cervelli. Ma tutto questo si manifestava, per anni, attraverso brevi e densissimi articoli. Mentre, per altrettanti anni, correva voce che Minsky “stava preparando un libro”, il quale naturalmente sarebbe stato IL libro. E un giorno il librò si manifestò: è “La società della mente”.
Qui Minsky, con gesto che è tipico dei grandi scienziati della mente, non vuole accettare nulla per inteso. Occorre partire veramente da zero, se si vuole tentare una risposta alla temibile domanda che egli pone fin dalle prime righe: “Come è possibile che il cervello, in apparenza così solido, sia il supporto di cose tanto impalpabili come i pensieri?”. Inutile dire che, se l’inizio del libro è semplicissimo, alla fine ci troveremo avvolti da una rete di pensieri altamente complessa, in obbedienza al sapiente precetto di Einstein: “Ogni cosa deve essere resa quanto più semplice possibile, ma non ancora più semplice”.
Così, in questa rete, riconosceremo i famosi “frames” che Minsky aveva già introdotto in anni passati, ma anche (e questo è una sorpresa) discussioni che coinvolgono Freud e Piaget. Alla fine, ci accorgeremo che questo libro tiene fede, sino ai limiti di ciò che oggi si può dire nella scienza, alla sua scommessa iniziale: render conto di come funziona il cervello, questa “vasta società organizzata”, e di conseguenza la nostra mente, se è vero, come Minsky afferma, che “la mente è semplicemente quello che fa il cervello”.
Devo dire che il libro mi ha donato numerosissimi spunti su cui pensare, per la maggior parte teorici, cioè senza un’applicazione pratica diretta, ma comunque interessanti, alcuni dei quali ho deciso di scrivere e di pubblicare qui di seguito.
Confronto tra la teoria della società della mente e la teoria delle reti neurali
Ho trovato molto interessante lo studio delle dinamiche della Mente Umana mediante la suddivisione in agenti ed agenzie. In passato mi era capitato di studiare il funzionamento del pensiero mediante modelli matematici e statistici, in particolare le reti neurali e il perceptron (percettrone).
Breve introduzione al perceptron
Nel 1943 è stato introdotto il neurone artificiale (McCulloch e Pitts), il quale schematizza un combinatore lineare a soglia, con dati binari multipli in entrata e un singolo dato binario in uscita: un numero opportuno di tali elementi, connessi in modo da formare una rete, è in grado di calcolare semplici funzioni booleane.
Il modello del perceptron è mirato all’analisi, in forma matematica, di funzioni quali l’immagazzinamento delle informazioni, e della loro influenza sul riconoscimento dei patterns; esso costituisce un progresso decisivo rispetto al modello binario di McCulloch e Pitts, perché i suoi pesi sinaptici sono variabili e quindi il perceptrone è in grado di apprendere.
Il grosso limite di questa teoria secondo me sta nel voler studiare l’Intelligenza come mera forma biologica, fatta di impulsi, soglie e connessioni. Potrebbe anche essere che in un futuro remoto si arrivi a decifrare gran parte delle sinapsi e delle connessioni di varie porzioni della mente, ma per ora è improponibile cercare di capire il Pensiero in questo modo, poiché è troppo specifico.
Critica alla rete neurale
Il sistema di agenti e agenzie invece non si occupa della realizzazione matematica o fisica del problema, ma cerca di descriverlo dall’alto verso il basso, senza perdere di mira gli obiettivi. Il perceptron sembra poter descrivere problemi molto semplici o di natura ben definita (ad esempio riconoscimento immagini, suoni, ecc.) dal punto di vista pratico, nel senso che una volta definita la rete neurale che è in grado di risolvere un problema questa è direttamente realizzabile. Gli agenti della mente invece riescono a descrivere problemi anche molto complessi, e soprattutto di natura varia e non definita, senza scendere nei particolari della realizzazione fisica, ma rimanendo ad un livello più alto e teorico. Ne consegue il grandissimo vantaggio che la teoria degli agenti riesce a descrivere qualsiasi tipo di situazione, persino i sentimenti di una persona, mentre il perceptron descrive solamente operazioni meccaniche.
Si potrebbero vedere le due teorie come complementari per lo sviluppo futuro delle Intelligenze Artificiali, in cui la teoria degli agenti della mente svolge il ruolo fondamentale del progettista (o architetto), mentre i neuroni artificiali non sono altro che i mattoni per la realizzazione fisica del progetto. Inoltre si nota che la grande potenza della teoria degli agenti è che si propone di essere valida in generale, non in particolare, e addirittura un giorno si potrebbe decidere di sviluppare un agente con altri sistemi di programmazione o altri modelli matematici a differenza del perceptron. E’ tuttavia molto difficile pensare una suddivisione di azioni e agenti differente da quella progettata tramite agenzie/agenti.
Poiché la materia dell’Intelligenza Artificiale è non è ancora stata investigata in modo profondo, ritengo sia molto più importante sviluppare una teoria ad “alto livello” piuttosto che tentare di capire ogni singolo mattone - questo modo di agire ci permetterà di sviluppare delle idee solide su cui poter lavorare in futuro.
Sono gli agenti un modello completo della mente?
Leggendo i primi tre capitoli de “La Società della Mente” di Minsky mi sono meravigliato di come questo sistema di agenti e agenzie descritti dall’autore riuscisse a descrivere molto profondamente il meccanismo del pensiero. Uno dei punti in assoluto che ho apprezzato di più è quello in cui viene descritto l’apprendimento del bambino:
“Quando da bambini abbiamo avuto per la prima volta in mano le costruzioni, abbiamo probabilmente passato settimane di pura felicità imparando ad usarle. Se ora questi giocattoli ci sembrano relativamente noiosi, dobbiamo chiederci come siamo cambiati noi. Ci fu un tempo, prima che i nostri traguardi diventassero più ambiziosi, in cui trovavamo strano e meraviglioso riuscire a fare una torre o una casa coi blocchetti delle costruzioni.”
Questo mi ha fatto pensare a quanto elastica è la mente di un bambino, pronta a essere modellata dalle esperienze nel mondo e dagli insegnamenti teorici degli adulti.
Suddivisione degli agenti in categorie
Sembrerebbe che tutti gli agenti di “basso livello” vengano appresi tramite i contatti con il mondo esterno, insieme ad alcune capacità innate della mente umana. Questi agenti sono per esempio Vedere, Prendere, Afferrare, Spostare, Mollare, Masticare, Ascoltare, e tutti gli altri agenti direttamente collegati con i sensi del nostro corpo. Sono questi gli agenti presenti sicuramente anche negli animali, e si potrebbero considerare agenti “innati”, nel senso che non hanno bisogno di un’istruzione esplicita, ma vengono addestrati direttamente dalla Natura.
Questi agenti inoltre non hanno mai un’agenzia corrispondente che compie il lavoro di “coordinazione”, ma sono elementari, ad esempio il Vedere viene utilizzato da moltissime agenzie di livello superiore, ma non si coordina mai autonomamente.
Per questo motivo ci sono delle agenzie di “livello medio” che servono appunto a coordinare i bisogni di una persona, oppure delle macroazioni. Per esempio il Mangiare è un agente di livello superiore al Masticare, Deglutire, Odorare, però è comunque un agente che si apprende senza lezioni esplicite, ed è pure presente negli animali.
Sopra questo livello vengono tutte quelle agenzie che sei occupano di azioni non direttamente collegate con la Natura, che però continuano ad essere azioni di base per l’uomo, nel senso che non ci si deve concentrare per poterle svolgere. A questo insieme di agenti di “alto livello” appartengono Leggere, Telefonare, Guidare, Giocare, Guardare un film, anche se non in tutti i casi queste possono essere svolte senza impegno.
Queste azioni di “alto livello” sono fondamentali perché determinano la differenza tra uomini e animali, e permettono di astrarre il Pensiero, che a questo livello non è più dipendente dall’esperienza. Da qui in poi ci può essere un apprendimento anche puramente teorico, grazie al quale vengono costruite nuove agenzie di livello ancora superiore, come lo svolgere difficili compiti matematici, il creare nuove teorie, l’istruire altre persone (o agenzie?), ed altri.
Come nascono le agenzie di livello superiore? (il Linguaggio)
Il punto fondamentale è che per tutte le agenzie di “livello superiore” iniziano ad avere un’importanza fondamentale due nuovi elementi che non si notano facilmente nel bambino e sono completamente assenti negli animali: la grammatica e la sintassi.
Una volta che il bambino - in qualche modo per ora sconosciuto - è riuscito ad implementare l’agenzia che si occupa della comprensione del linguaggio, si apre un mondo nuovo di agenzie di livello superiore che possono essere implementate anche senza l’esperienza pratica, e soprattutto senza dover imparare solamente dai propri errori o dalle necessità naturali. Bisogna notare che per “linguaggio” non intendo in senso proprio solamente le parole e simboli utilizzati per descrivere le entità, ma il fatto di rendersi conto della stessa esistenza di tutte le entità che ci circondano, e la possibilità per la mente di lavorare in astratto con queste entità. E’ questo il punto in cui le agenzie di livello superiore riescono a funzionare persino senza appoggiarsi agli agenti di basso livello (Vedere, Sentire, Afferrare, ecc), ma utilizzando dei concetti astratti.
E’ forse il caso di introdurre l’idea di agenti astratte? Cioè di agenti che IMPLEMENTANO delle entità astratte, che noi chiamiamo sostantivi, verbi, ecc. cioè una sorta di AGENZIA DEL LINGUAGGIO?
Idee varie sulla realizzazione pratica
Nel momento in cui passiamo alla realizzazione pratica della società ad agenti della Mente, mediante ad esempio di programmi per il computer dobbiamo assolutamente tenere conto di questo fatto. Immaginando gli agenti di basso livello come molti processi software codificati una volta dal programmatore e mai più modificati, se non con al massimo alcuni parametri, dobbiamo sicuramente immaginare un modo di creare un’agenzia software di alto livello che si occupi del linguaggio. Questo processo del linguaggio dovrebbe appoggiarsi ad agenti astratti ogniqualvolta non riuscisse a trovare delle agenzie reali, e dovrebbe essere in grado di produrre da zero nuove agenzie solo ricevendo degli input teorici, realizzati da grammatiche e sintassi.
In questo modo non saremmo più obbligati a dover programmare ogni singolo agente, cercando di raggiungere l’obiettivo impossibile di prevedere tutte le possibili situazioni, ma potremo limitarci a creare nuove agenzie da zero solamente “descrivendole” all’agenzia fondamentale di cui sto parlando, proprio come hanno fatto i nostri genitori, insegnanti e colleghi per insegnarci tutte le cose che sappiamo fare che non siano Naturali.





