Tag

frank roosenbalt

Browsing

Tra artificiale e biologico

Questa metodologia di apprendimento cerca di creare un modello automatico su più livelli, in cui i livelli più “profondi” prendano in input i dati provenienti dai livelli precedenti a loro, rielaborandoli.

Ogni livello della scala di cui si compone corrisponderebbe ad una delle diverse aree che compongono il cervello umano, ognuna con le proprie caratteristiche: in base agli stimoli provenienti dall’esterno, così come nel cervello vengono “attivati” nuovi neuroni, così nella struttura proposta dal deep, verranno proposte differenti risposte del sistema a seconda degli stimoli ricevuti.

Nell’ambito delle reti neurali artificiali il deep learning viene largamente usato: si cerca di riprodurre il calcolatore più complesso in assoluto, il cervello umano. Le differenze tra i due sistemi sono ancora molto evidenti, basti pensare che a noi “umani” per riconoscere il viso familiare in una folla di persone possono volerci alcuni secondi, per una macchina distinguere immagini ben più semplici addirittura giorni!

Ed è così anche nel mondo animale, se consideriamo che i sistemi di orientamento di un pipistrello sono ben più avanzati e sviluppati dei sistemi radar umani. Questi paragoni servono principalmente per comprendere la difficoltà della risposta che vogliamo ottenere, e anche le complicazioni che sussistono all’interno di questo ambito di riserva. Ma che cos’è una rete neurale?

Per rete neurale intendiamo un processore ispirato al funzionamento del sistema nervoso di organismo biologici complessi, costituito di unità computazionali elementari che giocano lo stesso ruolo dei neuroni nel cervello. Essi hanno due caratteristiche: la prima è la conoscenza, come abbiamo visto precedentemente, acquisita tramite processi di apprendimento.

La seconda consiste nella capacità di immagazzinare tali conoscenze all’interno del sistema neuroni-rete neurale. I neuroni artificiali funzionano come nodi all’interno della rete, ricevono segnali provenienti dall’esterno o da altri nodi (neuroni) e ne effettuano una trasformazione chiamata funzione di attivazione. Questa operazione altro non fa che trasformare matematicamente il valore delle informazioni prima di passarle ad uno strato successivo, facendo in modo di trasmettere i valori di input attraverso tutta la rete fino ad arrivare all’output.

Il percettone è stato il primo schema di rete neurale proposta da Frank Roosenbalt nel 1958. Esso si presentava come un semplice classificatore binario in grado di riconoscere due differenti classi di input e separarle. Strutturalmente le similitudini con un neurone biologico sono indiscutibili: i dendriti e le sinapsi costituiscono l’input del neurone, mentre il nucleo e gli assoni costituiscono l’output del neurone che andrà poi ad interagire con gli altri neuroni. Il problema riguardante questo primo esperimento è la grande limitazione computazionale del singolo percettone, collegata al fatto che le prestazioni ottenibili dipendono con la scelta degli input.

Dal 1958 ad oggi, con un’impennata raggiunta negli anni ‘80, lo sviluppo delle reti neurali è continuato ed è possibile impiegare tali tecnologie soprattutto quando la difficoltà computazionale aumenta e le quantità di dati da elaborare diventano proibitive per l’uomo: ad esempio vengono utilizzate nel controllo del traffico aereo e veicoli, nelle simulazioni videoludiche come il gioco degli scacchi, nel riconoscimento nei sistemi radar e di identificazione facciale e vocale.

La nota negativa riguardante l’utilizzo di tali sistemi riguarda il fatto che, a differenza di sistemi algoritmici nei quali è possibile analizzare l’intero processo di elaborazione, con le reti neurali ci viene fornito solamente un dato (o un insieme di dati) in output che dobbiamo prendere come tale. Per questo a maggior ragione la scelta dei dati in ingresso è fondamentale per una corretta e attendibile valutazione da parte della rete.

Come abbiamo visto sussistono ancora innumerevoli differenze tra la tecnologia utilizzabile in ambito di reti neurali e le reti neurali biologiche presenti all’interno del cervello: tuttavia, le similitudini tra questi sistemi non sono così astratte. Le diverse tipologie di apprendimento automatico che abbiamo tenuto in considerazione mostrano come l’uomo stia cercando di ricreare artificialmente quello che possiede biologicamente: ovviamente non è un’operazione semplice, ma le possibilità di sviluppo sono a favore dei ricercatori.

Da un punto di vista computazionale e di velocità di elaborazione dei dati, una macchina sarà sempre favorita sull’uomo, rimane da implementare la parte relativa all’intenzionalità e alla cognizione. E nonostante ammettessimo che un’intelligenza artificiale (di tipo simbolico) possa essere associata al concetto di intenzionalità,  nulla ci garantisce che essa possa possedere autocoscienza di sé.

Se così fosse avremo di fronte a noi qualcosa di rivoluzionario: sarebbe una tecnologia tale da potersi migliorare da sola, rendersi conto di sé e di cosa la circonda, delle minacce e dei pericoli. In questo caso ci troveremo di fronte a quella che Nick Bostrom ha catalogato come Superintelligenza e che esporrò nel terzo capitolo.