TrueNorth, immagine tratta dal sito IBM |
Dharmendra Modha, immagine tratta dal sito IBM |
E subito dopo dobbiamo chiederci: cosa significa Cognitive Computing?
Qui la risposta è più complessa. Per essere brevi, cercando di non banalizzare troppo, si potrebbe dire che la disciplina del Cognitive Computing è quella disciplina che si occupa di studiare e risolvere problemi di elevata complessità, caratterizzati da ambiguità ed incertezza, problemi che normalmente vengono "risolti" dagli esseri umani, è il caso del riconoscimento di un volto, per esempio.
Per l'IBM un sistema di Cognitive computing" svolge i seguenti compiti: "learn and interact naturally with people to extend what either humans or machine could do on their own. They help human experts make better decisions by penetrating the complexity of Big Data".
Ma perchè tutto questo interesse nel costruire una macchina che abbia delle capacità che già hanno gli uomini?
PEr lo stesso motivo per cui sono nati i computer che già conosciamo. L'uomo era in grado di far di conto anche prima dell'arrivo dei computer, ma se le operazioni sono ripetitive e lunghe è difficile trovare qualcuno che se ne occupi e che, magari, non commetta errori.
Ecco che un computer, ottimizzato per fare calcoli, prende il posto di uno o più uomini, che in vece che far calcoli si preoccupano di scrivere le istruzioni per il computer e di verificare che funzioni bene.
Allo stesso modo, se abbiamo da controlla re milioni di volti su un monitor e confrontarli con delle schede per verificare l'identità delle persone, possiamo mettere 100.000 persone dietro i monitor a verificare chi sta passando sotto di noi, oppure possiamo creare dei software che, eseguendo un numero molto grande di operazioni semplici, siano in grado di "riconoscere" le persone già schedate. Questo è già stato realizzato. esistono tanti sistemi di riconoscimento in funzione che si basano su computer costruiti secondo l'architettura von Neumann.
E' facile rendersi conto, se si è mai entrati in un data centre, della enormità di risorse occorrenti per fare certe operazioni e salta subito all'occhio che i computer classici, mentre sono molto veloci nel fare operazioni semplici ripetitive, sono molto inefficienti nel trovare soluzioni a problemi complessi, come quello indicato prima. L'inefficienza si riflette sulle risorse necessarie per svolgere il compito, risorse che possiamo misurare in vari modi, uno di questi è il consumo di energia.
Un computer, da questo punto di vista, è molto meno efficiente di un cervello.
Ecco da cosa nasce l'idea (a mio parere) di costruire nuovi computer di struttura simile al cervello.
L'accoppiata di computer classici e computer di tipo Cognitive, potrebbe essere in grado di creare nuovi super computer in grado di svolgere velocemente calcoli ripetitivi e anche di riconoscere velocemente nella persona affianco a noi, il volto di un caro amico.
Vedremo cosa ci aspetta il futuro prossimo.
Per ora cerchiamo di capire meglio come è fatto e quali nuovi campi di ricerca e studio ci apre il nuovo processore IBM: TrueNorth. Infatti la nuova architettura necessita di nuovi linguaggi di programmazione, di nuove logiche di memoria, nuove tecnologie... insomma, un mondo nuovo si sta aprendo agli ingegneri e agli informatici, un nuovo mondo che necessita di esploratori capaci e curiosi...
Alessandro Giovanni Paolo RUGOLO