AI e ML – il prossimo passo

Siamo ancora ai primordi dell’Intelligenza Artificiale, le nostre macchine sono stupide e resteranno tali ancora per parecchio tempo. La potenza che la tecnologia attuale mette a disposizione ha comunque  progredire rapidamente le tecniche di apprendimento automatico verso forme più efficaci di Intelligenza Artificiale. Sistemi di questo tipo sono in grado di effettuare previsioni statistiche molto accurate, di analizzare immagini distinguendone e classificandone il contenuto e altro ancora. Si inizia già a sperimentare con la creazione autonoma di contenuti testuali, grafici e musicali ma un’IA forte resta utopica.

Possiamo però provare ad esplorare il futuro prossimo delle tecnologie smart che convergono verso sistemi indipendenti dotati di avanzate capacità di analisi e, chissà, tra qualche tempo magari anche verso una qualche forma di consapevolezza.

 

Generative adversarial networks – GAN
Se una rete neurale da sola non può fare altro che elaborare e valutare dati già esistenti una GAN può andare oltre. In italiano la possiamo chiamare rete antagonista generativa ed è composta da due reti neurali bloccate in una sfida continua.

La prima è una rete generativa che a partire da un “rumore” casuale prova a creare l’oggetto target mentre la seconda rete è un discriminatore che valuta la bontà dell’oggetto creato. Questo genere di reti è già usato per generare immagini, modelli 3D e anche suoni, anche se lo stato dello sviluppo ad oggi non garantisce risultati esaltanti.

 

Differentiable neural computers – DNC

Le DNC sono fondamentalmente delle reti neurali ricorrenti in grado di migliorare le performance utilizzando i risultati delle elaborazioni precedenti. L’architettura assegna pesi differenti ai valori memorizzati, crea dei link tra i vari risultati delle elaborazioni precedenti e assegna un peso anche a questi collegamenti.DeepMind implementa già una versione embrionale di questa tecnologia d’Intelligenza Artificiale ma al momento è in grado di interpretare “soltanto” gradi di parentela anche complessi o intricati percorsi su mappe.

Evolution strategies (ES) / Neuroevolution

Un’idea vecchia implementata grazie alle sempre crescente capacità di calcolo a disposizione degli sviluppatori. In breve gli algoritmi evolutivi sviluppano la soluzione al problema eseguendo iterativamente la funzione generativa fino a quando il criterio di risoluzione non venga sodisfatto.

Il concetto di evoluzione progressiva applicato alle reti neurali permette di sveltire le operazioni di training, le operazioni aritmetiche da eseguire sono più semplici e richiede la backpropagation. Questa soluzione è più universale rispetto al Reinforcement Learning ed è quindi un passo avanti verso le Artificial General Intelligences (AGI).

 

Probabilistic programming
La programmazione tradizionale sembra faticare nel seguire gli sviluppi del Machine Learning perché funziona su base deterministica. Esistono linguaggi di programmazione di alto livello pensati per soluzioni su base probabilistica, dotati nativamente degli strumenti necessari per.

E’ un modo di sviluppare differente che per certi versi risulta ostico ma una volta padroneggiato permette di gestire reti bayesiane e modelli complessi con pochissime righe di codice.

 

 

 

 

In questo piccolo viaggio abbiamo esplorato parte di quello che può essere il futuro del Machine Learning e dell’intelligenza artificiale. Non è detto che tutte le tecnologie che ho elencato avranno un futuro brillante ma sicuramente indicano la strada da percorrere per portare questa affascinante disciplina al livello successivo.