Cognitive vs Machine Learning: ne resterà soltanto uno?
Qual è il tormentone dell’estate 2017? Una volta c’erano i ritornelli di quelle canzoni che sentivi in spiaggia tutti i giorni, più volte al giorno, e si insinuavano nel cervello come un virus. Te li sognavi anche la notte. Anche l’IT ha i suoi tormentoni, che però è più facile che vengano chiamati buzzword. E in ambito IT le buzzword del momento sono due:
Cognitive computing
Machine learning
Si tratta in effetti di concetti che fanno la gioia degli esperti di marketing, sempre a caccia di qualcosa di nuovo e di forte da vendere. Occorre dire però che questi argomenti sono tutt'altro che nuovi e che si collocano nella più estesa disciplina dell'Intelligenza Artificiale, nata intorno alla metà del secolo scorso. L'intelligenza artificiale, per lo più in ambienti accademici, espresse subito grandi potenzialità ma anche i suoi limiti. In particolare tre. Il primo riguardava la necessità di un'enorme potenza di calcolo. Il secondo aveva a che fare con l'esigenza di un esorbitante quantità di dati. Il terzo era la qualità e quindi, l'affidabilità di dispositivi e sensori che si interfacciassero col mondo reale.
Fino ad una decina di anni fa questi erano limiti insormontabili perchè richiedevano ingenti finanziamenti a fronte di un poco affidabile risultato. Ma i recenti progressi delle tecnologie digitali e, soprattutto, le rivoluzioni Cloud e Bigdata hanno ribaltato lo scenario. Così, l'intelligenza artificiale, libera dai vincoli di un tempo, comincia ad avere un progressivo ed inarrestabile impatto sulla realtà, creando mercati che prima non esistevano, affrontando sfide di ogni tipo e in ogni settore, compresa la quotidianità delle persone. Riuscendo a pervadere la complessità delle dinamiche umane, questa si manifesta con altrettanta complessità, tanto che si fa fatica ad individuarla, comprenderla e descriverla.
Tornando ai nostri esperti di marketing, avidi di slogan e termini vendibili, anche loro hanno un bel daffare a pescare nella terminologia dell'intelligenza artificiale e trovare qualcosa che sia da un lato sufficientemente evocativo e sexy, dall'altro pertinente ai prodotti che vogliono vendere (o rivendere con un vestito nuovo). In questo contesto il rischio di cadere nella rete di abili e convincenti venditori è molto alto. Per evitarlo, bisogna entrare nel merito quel tanto che ci consenta di riconoscere quello che abbiamo davanti. Ma non è così facile.
Qualche giorno fa, in una tavola rotonda tra esperti di IoT e Bigdata, l'anchorman che moderava gli interventi ha domandato quale fosse la differenza tra Cognitive Computing e Machine Learning. Domanda legittima. Tra gli ospiti c'era anche un Data Scientist, eppure a quel punto calò il silenzio. Il più coraggioso tra gli esperti, facendo un bagno di umiltà, si appellò al quinto emendamento. E va bene, può succedere. Ma ci sarebbe da chiedersi: se già tra i cosiddetti esperti c'è questa scarsa consapevolezza, come può un investitore interessato aprire il portafogli con cognizione di causa?
Non voglio dare una risposta, anche se ne avrei diverse. Preferisco dare un contributo alla comprensione di queste tematiche da osservatore curioso, per come le ho capite a suo tempo quando ero uno studente di informatica, e per il significato che riesco a dargli ora da addetto (non esperto) ai lavori.
Credo che la prima cosa da capire sia come la disciplina dell'intelligenza artificiale si concretizzi nel mondo reale. E per farlo mi farò aiutare da una rappresentazione grafica prodotta da Lux Research che riesce, secondo me, ad esprimere con grande chiarezza ciò che serve sapere, per orientarsi in questo mondo intricato e oscuro.
Nella sua rappresentazione, Lux Research utilizza un diagramma Sankey che mostra le quattro dimensioni attraverso cui la disciplina prende corpo, illustrando gli elementi che le costituiscono con tutte le relazioni che li legano. Le quattro dimensioni sono:
Campo di applicazione, cioè il settore delle attività umane che l'Intelligenza Artificiale vuole emulare.
Classe di problemi, le problematiche e quindi le sfide che occorre superare.
Tecniche risolutive, si tratta di processi e metodi che si utilizzano per risolvere i problemi.
Approcci Metodologici, sono aree di studio connotate dalla modalità con cui affrontano i problemi e si approcciano alla soluzione.
La figura sotto esprime molto bene i dettagli:
Vediamo in che modo possiamo utilizzare il grafico per rispondere alla domanda posta dal nostro anchorman al tavolo degli esperti. Innanzitutto, guardando l'immagine ci verrebbe da dire che non si tratta di due concetti confrontabili, perchè il Cognitive Computing è un Campo di applicazione mentre il Machine Learning è un approccio metodologico. E' questo è tutto quanto possiamo dire se vogliamo spiegarne la differenza.
Molto più interessante, invece, è chiedersi quale sia la relazione tra loro. E per questo voglio mostrarvi la seguente figura:
Nella parte sinistra del grafico ho evidenziato in viola i flussi che caratterizzano il Cognitive Computing. Possiamo vedere che questi affrontano due classi di problemi: la Computer Vision (la capacità di una macchina di riconoscere un'immagine) e la Natural Language Processing (la capacità di una macchina di comprendere il linguaggio umano, scritto e parlato). Ciascuna classe di problemi può essere affrontata con diverse tecniche risolutive (Clustering, Deep Learning, Regression, ecc.). Queste tecniche si astraggono dagli approcci metodologici, non sono cioè appannaggio esclusivo di uno di essi. Piuttosto, i diversi approcci, usano le tecniche risolutive che meglio concorrono alla metodologia di cui fanno scuola. Infine, per enfatizzare le relazioni indagate, ho evidenziato solo i flussi appartenenti all'approccio con Machine Learning. Il grafico risultante fornisce già una buona risposta alla domanda che ci eravamo posti.
Un'altra utile domanda potrebbe essere quella di chiederci su quali campi di applicazione il Machine Learning potrebbe avere impatto. E questo ci impone di percorrere il grafico in senso inverso:
Dalla figura è immediato constatare che il Machine Learning può portare benefici in ogni campo dell'Intelligenza Artificiale, perchè offre l'intero spettro delle tecniche risolutive e può quindi affrontare qualunque problema. Cosa che non vale per il Data Mining e l'approccio Statistico.
Ovviamente, l'argomento non può esaurirsi qui. Ogni dimensione ha la sua profondità che non deve essere ignorata se vogliamo fare scelte giuste e investimenti mirati. Ma di sicuro diventa più facile esplorarle quando si riesce a riconoscerle. E spero che questo breve post sia stato utile allo scopo.
Mi piacerebbe molto ritornare su questi temi. Cercando di capire meglio cosa sia il Machine Learning. Magari nel prossimo post, che ne dite?
Intanto, però, vi lascio con un saluto. A tutti i disgraziati che, come me, non sono ancora in vacanza. Ma anche a quelli che invece già lo sono e (assurdamente) stanno leggendo questo articolo invece di gozzovigliare, rilassarsi e fare tutte quelle cosine che si fanno quando non si lavora. Eroici ;-)
Un abbraccio.
N.S.