L’intelligenza artificiale che si auto-evolve

L'obiettivo attuale nel campo dell'intelligenza artificiale e quello di realizzare programmi che si auto migliorano generazione dopo generazione senza nessun intervento umano.

0
2511
Indice

L’acronimo “AI” significa Artificial Intelligence o “Intelligenza Artificiale” e definisce quei sistemi hardware e software che che cercano di imitare, attraverso un’apposita programmazione, caratteristiche che vengono considerate tipicamente umane quali, ad esempio, la percezione visiva, spazio-temporale e decisionale.
I sistemi di intelligenza artificiale sono in continua evoluzione e per permetterlo vengono “nutriti” con milioni di terabyte di dati raccolti attraverso le app dei personal computer, degli smartphone e altri sistemi di acquisizione allo scopo di far fare loro “esperienza”.
I ricercatori hanno ora realizzato un software che prende in prestito alcuni concetti dell’evoluzione darwiniana, come ad esempio la “sopravvivenza del più adatto“, per realizzare programmi che si auto migliorano generazione dopo generazione senza nessun intervento umano. Il programma ha replicato decenni di ricerche sull’Ai in pochi giorni e i suoi progettisti ritengono che un giorno potrebbe scoprire nuovi approcci.
Mentre la maggior parte della gente faceva piccoli passi, questi ricercatori hanno fatto un grande salto nell’ignoto“, afferma Risto Miikkulainen, uno scienziato informatico dell’Università del Texas di Austin, che non era coinvolto nel progetto. “Questo è uno di quei documenti che potrebbero lanciare molte ricerche future“.
Costruire un algoritmo per l’intelligenza artificiale richiede tempo. Le reti neurali ne sono un esempio.
Le reti neurali sono, infatti, un tipo molto comune di sistema di apprendimento automatico che viene adoperato per tradurre lingue o guidare automobili. Le reti neurali imitano in qualche modo le strutture cerebrali umane e apprendono ogni volta che utilizzano dei dati a scopo decisionale, migliorando la connessione tra i loro neuroni artificiali. I subcircuiti più piccoli dei neuroni svolgono compiti specifici, ad esempio individuando i segnali stradali, e i ricercatori possono trascorrere mesi a capire come collegarli in modo da farli lavorare insieme senza problemi.
Negli ultimi anni, gli scienziati hanno accelerato il processo automatizzando alcuni passaggi. Ma questi programmi si basano ancora su circuiti realizzati da progettisti umani. Ciò significa che l’output è ancora limitato dall’immaginazione degli ingegneri e dai loro pregiudizi.
Quoc Le, scienziato informatico di Google, e un gruppo di colleghi hanno realizzato un programma chiamato AutoML-Zero che potrebbe sviluppare software di intelligenza artificiale senza l’intervento umano, usando solo concetti matematici di base che uno studente delle scuole superiori potrebbe maneggiare facilmente. “Il nostro obiettivo finale è quello di sviluppare effettivamente nuovi concetti di apprendimento automatico che nemmeno i ricercatori potrebbero trovare“, spiega Le.
Il programma scopre gli algoritmi usando una approssimazione libera dell’evoluzione. Inizialmente crea una popolazione di 100 algoritmi candidati combinando in modo casuale operazioni matematiche. Quindi li verifica su un compito semplice, come un problema di riconoscimento delle immagini in cui deve decidere se un’immagine mostra un gatto o un camion.
In ogni ciclo, il programma confronta le prestazioni degli algoritmi con algoritmi di riferimento. Le copie dei migliori artisti vengono “mutate” sostituendo, modificando o eliminando, in modo casuale, parte del suo codice per creare lievi variazioni dei migliori algoritmi. I nuovi algoritmi vengono aggiunti alla popolazione, mentre i programmi più vecchi vengono cancellati. Il ciclo si ripete nuovamente.
Il sistema crea migliaia di queste popolazioni contemporaneamente, il che gli permette di sfogliare decine di migliaia di algoritmi al secondo fino a trovare una buona soluzione. Il programma utilizza anche trucchi per accelerare la ricerca, come lo scambio occasionale di algoritmi tra le popolazioni, per prevenire eventuali vicoli ciechi evolutivi e l’eliminazione automatica di algoritmi duplicati.
In un documento pubblicato il mese scorso su arXiv, i ricercatori mostrano che l’approccio può incappare in una serie di tecniche classiche di apprendimento automatico, comprese le reti neurali. “Le soluzioni sono semplici rispetto agli algoritmi più avanzati di oggi“, ammette Le, “ma afferma che il lavoro è una prova di principio ed è ottimista sul fatto che può essere ridimensionato per creare AI molto più complessi“.
Tuttavia, Joaquin Vanschoren, uno scienziato informatico dell’Università della Tecnologia di Eindhoven, è dell’opinione che servirà un po’ di tempo prima che questo approccio possa competere con lo stato dell’arte. Una cosa che potrebbe migliorare il programma, dice, non è chiedergli di ricominciare da capo, ma invece di seminarlo con alcuni dei trucchi e delle tecniche che gli umani hanno scoperto.
È qualcosa su cui Le prevede di lavorare. Concentrarsi su problemi più piccoli piuttosto che su interi algoritmi è promettente, aggiunge. Il suo gruppo ha pubblicato un altro articolo su arXiv il 6 aprile in cui si spiega l’utilizzazione un approccio simile per riprogettare un componente utilizzato in molte reti neurali.
Ma Le crede anche che aumentare il numero di operazioni matematiche nella biblioteca e dedicare ancora più risorse di calcolo al programma potrebbe fargli scoprire capacità AI completamente nuove. “Questa è una direzione di lavoro che ci appassiona davvero“, afferma. “Lo scopo è scoprire qualcosa di veramente fondamentale che richiederà molto tempo agli umani per essere capito“.
Fonte: Science

2