Post on 18-Feb-2019
Scuola Politecnica e delle Scienze di Base Corso di Laurea in Ingegneria Informatica Elaborato finale in Programmazione I
Cognitive Computing Systems and IBM Watson for Education
Anno Accademico 2016-2017 Candidato: Christian Esposito matr. N46002551
Indice
Indice ............................................................................................................................................ III
Indice delle Figure ........................................................................................................................ IV
Introduzione .................................................................................................................................... 5
Capitolo 1: Scienze Cognitive ......................................................................................................... 6
Capitolo 2: Cognitive Computing System........................................................................................ 8
2.1 Evoluzione ............................................................................................................................ 9
2.2 Scopo .................................................................................................................................... 9
2.3 Question Answering .............................................................................................................. 9
2.3.1 Storia del Question Answering...................................................................................... 10
Capitolo 3: IBM Watson ............................................................................................................... 11
3.1 Jeopardy! Challenge ............................................................................................................ 11
3.2 Open Domain Question Answering ..................................................................................... 12
3.2.1 PIQUANT .................................................................................................................... 12
3.2.2 OpenEphyra .................................................................................................................. 13
3.2.3 DeepQA ....................................................................................................................... 13
3.3 Come ragiona Watson ......................................................................................................... 13
3.3.1 Question Analysis ......................................................................................................... 14
3.3.2 Hypothesis Generation .................................................................................................. 15
3.3.3 Soft Filtering ................................................................................................................ 15
3.3.4 Hypothesis and Evidence Scoring ................................................................................. 15
3.3.5 Answer Merging ........................................................................................................... 16
3.3.6 Ranking & Confidence Estimation ................................................................................ 16
3.3.7 Strategy ........................................................................................................................ 16
3.4 Risultati raggiunti con Watson ............................................................................................. 17
Capitolo 4: Applicazioni di Watson ............................................................................................... 18
4.1 Servizi Watson for Education .............................................................................................. 19
4.1.1 Watson Concept Insights .............................................................................................. 19
4.1.2 Watson Experience Manager ........................................................................................ 19
4.1.3 Watson Analytics .......................................................................................................... 20
4.2 Strumenti Cloud offerti da IBM ........................................................................................... 20 4.2.1 IBM Watson Analytics ................................................................................................. 20
4.2.2 IBM Watson Discovery ................................................................................................ 21
4.2.3 IBM Bluemix & NodeRED ........................................................................................... 22
4.3 Watson Projects in Education .............................................................................................. 24 4.3.1 IBM and Sesame Workshop.......................................................................................... 25
4.3.2 IBM and Pearson .......................................................................................................... 25
4.3.3 Watson Classroom: IBM and Coppel ISD ..................................................................... 26
Conclusioni ................................................................................................................................... 28
Bibliografia ................................................................................................................................... 30
Indice delle Figure
1.1 - Esagramma delle scienze cognitive ......................................................................................... 6
3.1 - Architettura di alto livello DeepQA ...................................................................................... 15
4.1 - Entity relationship ................................................................................................................. 21
4.2 - Watson Discovery: Manage data ........................................................................................... 21 4.3 - Watson Discovery: Overview ................................................................................................ 22
4.4 - Watson Discovery: Query insert box ..................................................................................... 22 4.5 - Natural Language Understanding flow example .................................................................... 23
4.6 - Natural Language Classifier training ..................................................................................... 23 4.7 - Natural Language Classifier .................................................................................................. 24
5
Introduzione
Questo lavoro affronta prima una panoramica del cognitive computing con particolare
riferimento al sistema IBM Watson e si sofferma in particolare sulle applicazioni Education
offerte dal prodotto. Prima di analizzare il sistema e le sue potenzialità si presenta una
introduzione alla storia dell’informatica, che, inevitabilmente, ha subito dei cambiamenti nel
tempo. Essa si può suddividere in tre ere principali: l’era Tabulativa, l’era della
Programmazione e l’era Cognitiva. L’era Tabulativa trova le sue origini intorno al 1900 in cui
i primi sistemi di calcolo erano di tipo meccanico single-purpouse che eseguivano il codice su
schede perforate. La fine dell’era Tabulativa si può collocare negli anni cinquanta quando, in
seguito a necessità di tipo militare e scientifico, si svilupparono i primi digital computers che
erano in grado di eseguire istruzioni logiche di tipo if/then e cicli codificati direttamente in
software. La nascita di queste tecniche di programmazione in concomitanza con l’invenzione
dei transistor e dei microprocessori ha contribuito alla diffusione dei calcolatori e di tutti i
sistemi informatici presenti al giorno d’oggi. L’era Cognitiva ha iniziato a svilupparsi intorno
al 2011 con l’introduzione ufficiale nel mondo di Watson, il primo sistema cognitivo prodotto
da IBM, che rappresenta l’evoluzione del concetto di computer odierno, essendo capace di
“imitare” il modo di pensare dell’uomo. [1] La nascita dei primi sistemi cognitivi è dovuta
anche al continuo sviluppo di forme di dati sempre più eterogene e non strutturate, quali foto,
video e audio che negli ultimi anni sono aumentati esponenzialmente grazie alla diffusione di
internet e di tutti i servizi che esso ci offre.
6
Capitolo 1: Scienze Cognitive
Nel corso della storia, fin dalla antica Grecia, si teorizzava sull’origine del pensiero umano.
La mente umana era oggetto di studio di molti campi come Filosofia e Psicologia. Si può
identificare la nascita delle Scienze Cognitive intorno agli anni Cinquanta quando si iniziò a
concepire l’idea che la mente umana fosse un sistema di elaborazioni di informazioni grazie
agli studi di Turing. Esse rappresentano “l’insieme di discipline che hanno come oggetto di
studio la cognizione di un sistema pensante” e sono: Filosofia, Linguistica, Psicologia,
Informatica, Neuroscienza, Antropologia.
Figura 1.1 - Esagramma delle scienze cognitive
7
In figura è rappresentato un esagramma che collega le discipline che costituiscono le scienze
cognitive. Le linee continue rappresentano i collegamenti tra le discipline prima della nascita
delle scienze cognitive, invece quelle tratteggiate rappresentano i collegamenti che si sono
sviluppati come conseguenza. Tali Scienze si occupano della modalità di formazione del
pensiero basandosi su alcuni concetti base. Grazie alle idee introdotte da Turing si iniziò a
considerare l’idea che la mente possieda delle rappresentazioni simili a quelle presenti nei
computer come procedure di calcolo, elaborazione di simboli. Il primo concetto lo possiamo
ritrovare nella “ragione come calcolo”, in cui il cervello manipola dei simboli ed elabora
informazioni secondo precise regole. Un altro concetto fondamentale è quello di “stato
mentale”, una forma a priori della mente che giustifica concetti mentali che conosciamo a
prescindere dall’esperienza come per esempio l’associazione di espressioni facciali al
sentimento che esse simboleggiano. Secondo vari studi l’architettura cognitiva si può dividere
in tre livelli:
1. Livello delle conoscenze
2. Livello dei simboli
3. Livello materiale
Il livello delle conoscenze permette di veicolare informazioni attraverso i livelli sottostanti,
utilizzando il livello dei simboli (il linguaggio), servendosi del livello materiale (l’uomo). Si
può notare come ogni livello è indipendente da quelli sottostanti in quanto una stessa
informazione può essere trasmessa in un linguaggio differente e addirittura da un differente
livello materiale, come, per esempio, potrebbe essere un automa. [2]
8
Capitolo 2: Cognitive Computing System
Il Cognitive Computing nasce dall’unione delle scienze cognitive e dell’informatica.
Si basa sulle discipline dell’intelligenza artificiale e del signal processing. Racchiude in sé
numerose caratteristiche quali machine learning, reasoning, natural language processing,
speech recognition, vision recognition, dialog generation. Grazie a queste caratteristiche tali
sistemi non si limitano a rispondere a quello per cui sono stati programmati ma introducono
un fattore non prevedibile basato sull’esperienza e sull’autoapprendimento. I Cognitive
Computing system cercano di simulare i processi neurali propri del cervello umano, cercando
di migliorare le capacità decisionali dell’uomo attraverso algoritimi di autoapprendimento
basati sul data mining, pattern recognition e natural language processing. [3]
IBM definisce i sistemi cognitivi come “sistemi che imparano gradualmente, ragionano ed
interagiscono con l’uomo naturalmente”. [1]
Da un punto di vista generale i sistemi cognitivi devono essere dotati di alcune proprietà:
Adaptive: devono imparare come cambiano le informazioni, risolvere le ambiguità
e tollerare l’imprevedibilità.
Interactive: devono garantire una facile interazione con gli utenti, quali persone o
altri dispositivi.
Iterative and stateful: devono essere capaci di definire un problema facendo
domande aggiuntive per ottenere nuove informazioni mantenendo traccia delle
precedenti iterazioni.
Contextual: devono capire ed estrapolare elementi dal contesto, come significato,
sintassi, tempo, località, dominio utilizzando informazioni sia strutturate che non
strutturate. [4]
9
2.1 Evoluzione
L’evoluzione dei sistemi cognitivi è dovuta anche alla grande capacità di calcolo che permette
di ottenere risultati a complessi algoritmi di calcolo in pochissimo tempo. Un altro fattore che
ha portato il cambio di rotta dai sistemi programmabili a quelli cognitivi è strettamente legato
alla problematica dei Big Data, insiemi di dati eterogenei strutturati e non strutturati. Infatti
secondo il colosso statunitense dell’informatica IBM negli ultimi anni lo sviluppo di dati ha
avuto un’incredibile accelerazione in particolare sotto forma di dati non strutturati quali
immagini, video e audio, rendendo necessario un nuovo modello di computing per
permetterne l’utilizzo ed aumentare la competenza dell’uomo. [5]
2.2 Scopo
Molte persone sono portate a pensare che lo sviluppo di sistemi cognitivi che emulano la
mente umana potrà portare in futuro alla sostituzione stessa dell’uomo con la macchina come
rappresentato da molti film di fantascienza. In realtà lo scopo primo di questi sistemi, come
afferma Alessandro Curioni, Vice Presidente Europe e Direttore del Research – Zurich Lab
di IBM, è quello di “macinare una grande quantità di dati nella loro ‘interezza’, ossia nella
loro ‘forma’ naturale (dati non strutturati), imparando poi a restituire attraverso analisi
avanzate e correlazioni, informazioni utili all’uomo”. Questi sistemi infatti non cercano di
emulare il cervello umano nella sua interezza, sono sistemi che “devono diventare strumenti
in grado di aumentare le capacità umane, non replicarle o sostituirle”. [6]
2.3 Question Answering
Il question answering (QA) è una delle grandi problematiche legate ai sistemi cognitivi. Un
sistema QA è un sistema di recupero automatico delle informazioni che risponde alle
domande in linguaggio naturale, infatti a differenza di un normale motore di ricerca i sistemi
QA forniscono risposte specifiche ottenute analizzando grandi quantità di documenti. I
sistemi Question Answering sono classificati in base al livello di precisione e raffinatezza
della risposta in tre categorie:
1. Slot-filling: il sistema risponde a domande molto semplici.
10
2. Limited-domain: il sistema risponde a domande di media difficoltà relative a
specifiche aree di conoscenza.
3. Open-domain: sistemi più complessi che integrano tecniche di information
extraction, information retrieval e natural language processing [7]
2.3.1 Storia del Question Answering
La storia dei sistemi QA risale agli anni Sessanta quando si iniziò a sviluppare l’idea di
costruire dei sistemi in grado di rispondere a domande poste in linguaggio naturale. I primi
sistemi dotati di questa caratteristica erano sistemi QA limitati ad un determinato domino che
traducevano le domande poste in query su database. Due esempi molto importanti sono
LUNAR e BASEBALL. LUNAR poteva rispondere a domande sulle rocce analizzate durante
la missione Apollo Lunar. BASEBALL era in grado di rispondere a domande sul baseball
relativamente al periodo di un anno. Successivamente tra il 1968-71 al laboratorio di IA del
MIT venne sviluppato da Terry Winograd il sistema SHRDLU capace di sviluppare dialoghi
basati su blocchi di parole. In seguito a numerosi studi nel campo del natural language
processing alla fine degli anni Ottanta venne sviluppato il progetto Unix Consultant capace di
rispondere a domande sul sistema UNIX. Negli anni Novanta venne sviluppato il primo
sistema di QA web based START accompagnato nel 2000 da Open Ephyra un framework
open source che permette di sviluppare sistemi di questo tipo. Nel 2003 iniziò il progetto di
SIRI finanziato da DARPA abbandonato a causa di mancanza di fondi che venne poi ripreso
nel 2008 da Apple. Nel 2007 iniziò il progetto di IBM Watson per partecipare al quiz
televisivo Jeopardy! che vide il successo del team di IBM nel 2011 contro due campioni del
famoso quiz americano. [8]
11
Capitolo 3: IBM Watson
IBM Watson è oggi il più grande esempio di Cognitive Computing System in grado di
elaborare il linguaggio naturale ed utilizzare information retrieval, ragionamento e
apprendimento automatico rappresentando il miglior sistema di Open Domain Question
Answering. È il successore naturale di Deep Blue, il primo sistema capace di battere un
campione di scacchi, rappresentando il simbolo per questo nuovo modo di fare computing.
Watson utilizza dal lato software il sistema di Question Answering DeepQA e il framework
Apache UIMA, per il trattamento e l'analisi di informazioni e il framework Apache Hadoop
per il calcolo distribuito, mentre dal lato Hardware il sistema è composto da una griglia di
Novanta server IBM Power 750 ognuno dei quali è equipaggiato con un processore POWER7
ad otto core da 3.5GHz con quattro threads per core e 16 terabytes di RAM. [9]
3.1 Jeopardy! Challenge
L’obiettivo di IBM era quello di realizzare un sistema capace di partecipare al quiz televisivo
americano Jeopardy! come un concorrente a tutti gli effetti. Il progetto di IBM partì nel 2007
con un team di 15 persone stimando di risolvere il problema nel giro di circa tre o cinque
anni. Questo progetto rappresentava una sfida sotto molti punti di vista in quanto il quiz si
basa su domande e indovinelli molto complessi, rendendo necessario un alto livello di
comprensione del linguaggio naturale e capacità di decomporre le domande, di trovare
relazioni tra entità, di analizzare grandi quantità di dati in poco tempo e di ragionamento per
produrre una risposta che abbia un livello di confidence abbastanza elevato per permettere al
sistema di prenotarsi per rispondere. La natura del quiz introduce alcuni problemi:
Domande: il modo in cui sono scritti gli indizi rende difficile comprendere cosa sia
12
stato effettivamente chiesto e quali siano gli elementi chiave per rispondere
correttamente alla domanda: infatti spesso conviene scomporre la domanda in più
parti per trovare la risposta.
Puzzle: in questa categoria sono presenti domande molto particolari dove la risposta
deve essere la composizione di due risposte ai sotto-indizi presenti nella domanda
che hanno in comune una o più parole.
Dominio: la generalità delle domande introduce una complessità aggiuntiva nella
progettazione del sistema di Question Answering poiché deve essere istruito con una
grande quantità di informazioni tale da garantirgli un adeguato livello di precisione
delle risposte.
Metrica: in aggiunta alla precisione il sistema deve garantire caratteristiche quali
velocità, capacità di assegnare livelli di confidence adeguati per decidere se
rispondere, di selezionare le domande e di scommettere sulle relative domande.
3.2 Open Domain Question Answering
Analizzando numerose puntate dello show si è stimato che la maggior parte dei campioni di
Jeopardy! rispondeva alle domande con una percentuale che varia tra il 40% e il 50% con un
livello di precisione tra il 85% e il 95%. Considerando che un concorrente tipicamente non
può rispondere a tutte le domande che vuole, in quanto c’è da considerare la competizione per
il “buzz” si è stimato un possibile livello di performance desiderato per Watson, in test che
non prevedevano la prenotazione per rispondere, di 70% di domande risposte con 80% di
precisione elaborate in massimo 3 secondi.
3.2.1 PIQUANT
Il primo approccio alla componente question answering di Watson è avvenuto cercando di
adattare il sistema PIQUANT (Practical Intelligent Question Answering Technology)
precedentemente sviluppato per la TREC (Text Retrieval Conference). PIQUANT è un
sistema basato su pipeline con tecniche all’avanguardia che miravano alla valutazione della
TREC QA in cui il sistema aveva a disposizione una settimana per rispondere a 500 domande
13
e aveva a disposizione una connessione internet. Il sistema rispondeva a domande molto più
semplici rispetto a quelle di Jeopardy!. Dopo aver adattato il sistema i test svolti con 500
domande estrapolate da precedenti puntate del quiz le performance del sistema furono molto
deludenti raggiungendo il 5% di domande risposte con una precisione del 47% mentre per il
resto delle domande la precisione raggiunta era il 13%
3.2.2 OpenEphyra
OpenEphyra è framework Question Answering open-source sviluppato dalla Carnegie Mellon
University (CMU). Il sistema è stato sviluppato, come PIQUANT, per rispondere alle
domande della TREC utilizzando una connessione internet. IBM, in collaborazione con la
CMU, ha adattato OpenEphyra per rispondere alle domande di Jeopardy!, ma come previsto
anche in questo caso i risultati furono molto sotto gli standard posti per poter competere
contro i campioni del quiz.
3.2.3 DeepQA
In seguito ai fallimenti ottenuti cercando di adattare sistemi sviluppati per il TREC QA seguì
una serie di studi su noti algoritmi in letteratura cercando di integrarli nella classica pipeline
del question answering. IBM e CMU collaborarono in una iniziativa chiamata Open
Advancement of Question Answering (OAQA) a cui presero parte numerosi ricercatori ed
esperti. L’insieme di tutti gli studi svolti ha così portato a DeepQA, un sistema probabilistico
fortemente parallelizzato in cui sono stati integrati più di cento differenti tecniche per
analizzare il linguaggio naturale, identificare le fonti, trovare e generare ipotesi, raggruppare e
classificare ipotesi per contribuire a migliorare la precisione, il livello di confidence e la
velocità nel generare risposte
3.3 Come ragiona Watson
Prima di analizzare l’algoritmo DeepQA che permette a Watson di ragionare dobbiamo
soffermarci sulla acquisizione di informazioni in quanto tutto il necessario per gareggiare
deve essere contenuto all’interno del sistema. L’acquisizione avviene sia in modo manuale
14
che automatico. Prima di tutto si analizzano delle domande di esempio per produrre una
descrizione delle domande a cui il sistema dovrà rispondere, compito manuale, mentre il
sistema svolgerà una analisi sul dominio di appartenenza come la ricerca di un LAT (lexical
answer type), una parola che caratterizza il tipo di risposta, compito automatico. A causa
dell’ampiezza dei domini trattati da Jeopardy! le risorse inserite in Watson contengono una
gran parte di enciclopedie, dizionari, articoli, opere letterarie e molto altro. In aggiunta
Watson viene provvisto di informazioni di tipo strutturato e semi-strutturato organizzate in
database per velocizzare le ricerche in caso si riconoscano delle entità nelle domande.
Figura 3.1 - Architettura di alto livello DeepQA
3.3.1 Question Analysis
In questa fase il sistema cerca di capire cosa è richiesto dalla domanda utilizzando analisi
superficiali e profonde sulle parole, forme logiche, semantica, relazioni tra entità e specifici
tipi di analisi per il question answering. Alcune di queste sono:
Question Classification: è un processo che identifica il tipo di domanda e la presenza
di possibili parole o modi di dire con un doppio significato o con un significato
retorico. Questo processo identifica l’ambito della domanda, come di tipo puzzle,
matematico e riconosce i giochi di parole, i vincoli, le definizioni e i sotto-indizi.
Focus and LAT Detection: il Lexical Answer Type è una parola che si riferisce alla
risposta che può aiutare a trovarla anche senza analizzarne la semantica. Il Focus
15
invece è la parte della domanda che sostituito dalla risposta la rende una definizione.
Relation Detection: Molte domande contengono delle relazioni di tipo soggetto-
predicato-oggetto o di tipo semantico. Watson usa queste relazione per svolgere query
su database per generare delle possibili risposte.
Decomposition: DeepQA utilizza una profonda analisi e metodi di classificazione
statistica per decomporre al meglio le domande. Questo permette di generare risposte
con un livello di confidence maggiore molto velocemente analizzando i sotto-indizi in
modo parallelo.
3.3.2 Hypothesis Generation
A questo punto si producono delle possibili risposte ricercando tra le informazioni del
sistema. Una ipotesi è la sostituzione della risposta all’interno della domanda per generare
una affermazione. La generazione di una risposta avviene in due step:
Ricerca Primaria: durante questa ricerca l’obiettivo è quello di raccogliere più
contenuti possibili che hanno a che fare con la domanda che successivamente
verranno ridotti da successivi filtraggi.
Generazione di candidati: i risultati delle ricerche del passaggio precedente,
attraverso delle tecniche appropriate, vengono rielaborate per generare delle risposte
candidate.
3.3.3 Soft Filtering
Questo tipo di filtraggio applica degli algoritmi di assegnazione di punteggi di tipo
superficiale in modo da ridurre il numero delle possibili risposte per procedere con delle
analisi più accurate nelle fasi successive.
3.3.4 Hypothesis and Evidence Scoring
Le risposte che avranno superato la prima fase di filtraggio verranno sottoposte ad una
seconda fase più rigorosa in cui verranno utilizzati degli algoritmi di analisi più sofisticati per
assegnare i livelli di confidence adeguati.
Evidence Retrieval: permette al sistema di raccogliere dati aggiuntivi sulla validità
16
delle risposte. In particolare un metodo utilizzato è quello di svolgere nuovamente
l’analisi primaria aggiungendo alla ricerca la risposta selezionata in modo da
recuperare tra le risorse i passaggi che contengono la risposta nel contesto della
domanda originale.
Scoring: Gli algoritmi di scoring determinano il grado di certezza di una particolare
risposta. DeepQA considera differenti fattori su cui svolgere l’analisi per assegnare un
punteggio alle risposte, come il grado di compatibilità tra la struttura della domanda e
il passaggio da cui si è estrapolata la risposta, la relazione temporale, geospaziale,
lessicale e semantica.
3.3.5 Answer Merging
Dopo lo scoring ci saranno centinaia di ipotetiche risposte a cui saranno assegnati diversi
punteggi. Il Merging serve per associare tra loro le risposte che sono equivalenti tra loro.
L’obbiettivo è quello di migliorare le fasi successive dell’algoritmo evitando di dover
classificare risposte molto simili tra loro
3.3.6 Ranking & Confidence Estimation
In seguito al Merging l’insieme delle risposte viene analizzato per stilare una classifica delle
risposte ed il relativo livello di confidence. In entrambe le fasi si raggruppano i punteggi in
base al dominio generando dei modelli intermedi da cui il sistema produrrà dei punteggi
intermedi che verranno utilizzati per selezionare correttamente la risposta. [10]
3.3.7 Strategy
Watson per partecipare e vincere al quiz doveva essere capace di fare alcune scelte molto
importanti come decidere quando prenotarsi per rispondere ad una domanda, scegliere un
riquadro dal tabellone e scommettere sulle domande speciali. La decisione di prenotarsi è
determinata da una soglia per il livello di confidence desiderato dalla risposta al di sotto del
quale il sistema evita di rispondere. La scelta di un riquadro avviene basata sulle caselle già
rivelate e sulle posizioni più probabili in cui trovare i Daily Double. Determinare quanto
scommettere dipende dallo stato del gioco e dal punteggio degli altri concorrenti. [11]
17
3.4 Risultati raggiunti con Watson
La sfida di creare un sistema artificiale capace di partecipare ad un quiz così complesso come
Jeopardy! ha portato durante i tre anni di intense ricerche una innovazione senza precedenti in
questo campo migliorando le tecniche di Natural Language Processing e sviluppando
complessi algoritmi di Question Answering che hanno portato il sistema Watson a
raggiungere già nel 2008 prestazioni pari a 70% precisione al 70% delle domande risposte per
poi arrivare, qualche anno dopo, al suo apice con 85% precisione al 70% delle domande
poste. Questo ha incoraggiato IBM a continuare gli studi in questa direzione portando a
cambiare il paradigma del computing moderno. Grazie a queste ricerche gli esperti di IBM
sono riusciti a realizzare un sistema capace di vincere ad un quiz televisivo complesso basato
sulle sfumature di significato del linguaggio naturale. [10]
18
Capitolo 4: Applicazioni di Watson
Il sistema e le capacità uniche di Watson sono state facilmente adattate a moltissimi settori
differenti grazie alle enormi abilità che esso possiede. Watson è capace di capire domande
poste in linguaggio naturale, di svolgere analisi su grandi moli di dati strutturati e non
strutturati ed ha la capacità di dare risposte specifiche alle domande poste. IBM ha deciso di
mettere a disposizione del mondo le capacità di Watson adattandolo a diversi campi, come in
campo industriale, sanitario, finanziario e molto altro. Nel settore industriale si sta
sviluppando sempre di più il concetto di industria 4.0 che indica la tendenza ad integrare i
nuovi sistemi cognitivi per migliorare le condizioni di lavoro e aumentare sia la produttività
che la qualità degli impianti. [12] IBM ha investito molto nel campo sanitario cercando di
sfruttare le capacità di calcolo di Watson per aiutare i medici nella lotta contro il cancro.
Infatti il sistema di IBM ha impiegato solo 10 minuti nel produrre una terapia mentre i medici
ci avrebbero impiegato giorni migliorando così le aspettative di vita del paziente in quanto in
questo settore il fattore tempo risulta determinate. Per il campo finanziario IBM ha rilasciato
una serie di servizi per personalizzare il rapporto con i clienti e migliorare la gestione dei
rischi. Watson è stato utilizzato anche per migliorare i servizi di help desk, in alcune città per
fornire informazioni a turisti e cittadini, per aiutare i viaggiatori identificando il percorso
ideale in base allo stato d’animo. Per contribuire allo sviluppo di questa nuova era del
computing IBM ha messo a disposizione di tutti delle API per interfacciarsi a Watson in
cloud e sfruttare le sue abilità cognitive per dare la possibilità a tutti di impiegare le capacità
del sistema per produrre una nuova categoria di applicazioni. [13] Un altro campo molto
promettente è quello dell’istruzione in cui le abilità delle nuove tecnologie di cognitive
computing possono essere di aiuto sia per l’amministrazione che per le attività di
19
apprendimento. In questo contesto le abilità dei sistemi cognitivi possono aiutare sia studenti
che professori sotto molti punti di vista. Sicuramente l’integrazione di questi servizi può
accelerare il raggiungimento degli obiettivi per gli studenti, in particolare può migliorare le
performance negli studi scientifici e può contribuire, grazie alla collaborazione tra uomo e
macchina, a ottenere nuovi risultati nei campi di intelligenza artificiale e cognitive system
fornendo soluzioni prima impensabili, e fornire supporto ai professori attraverso una
piattaforma digitale che faciliti l’organizzazione delle classi e del materiale scolastico. [14]
4.1 Servizi Watson for Education
In particolare vedremo in maggior dettaglio alcuni servizi offerti da IBM per utilizzare il
sistema nel campo dell’istruzione.
4.1.1 Watson Concept Insights
Il suo scopo è quello di facilitare la ricerca di documenti testuali. Il suo funzionamento si basa
sulla definizione di un dizionario di concetti associati ai documenti che ne definiscono la
rilevanza per una data domanda. Ogni documento viene inserito nel sistema e viene
analizzato per creare un corpus su cui svolgere le analisi successive. L’analisi del documento
avviene attraverso un algoritmo che ne estrapola i concetti fondamentali. In seguito all’analisi
si andrà a realizzare una versione vettorizzata del documento che terrà traccia dei concetti in
esso contenuti. Ogni dimensione del vettore generato rappresenta il livello di rilevanza di quel
concetto per lo specifico documento attraverso un punteggio. Questo vettore è inserito in un
indice che permette di recuperare i documenti più pertinenti in base ad una ricerca
concettuale. Dall’associazione di documento e vettore è quindi possibile risalire facilmente al
documento fornendo risultati in tempi molto brevi. [15]
4.1.2 Watson Experience Manager
Watson Experience Manager (WEM) è un tool browser-based che permette di interagire con
Watson attraverso il Watson Developer Cloud e attraverso le Watson Question & Answer
API. Offre servizi differenti in base al ruolo assegnato all’utente, dando la possibilità di
inserire nuovi documenti, cancellarli, creare un corpus dove Watson “organizza” la propria
20
conoscenza, testare il livello di conoscenza sviluppato su un dato argomento. Il primo passo
per usufruire dei servizi di Watson è quello di caricare dei contenuti per lo specifico dominio
di applicazione. Dopo il caricamento si procede con l’analisi dei contenuti per creare un
corpus che permette a Watson di trovare le risposte alle domande poste. Watson per garantire
un alto livello di performance nelle risposte dovrà avere una base di conoscenza definita
attraverso coppie di domande e risposte. L’attività di training è svolta inserendo domande e/o
risposte nell’apposita sezione del WEM. In questo caso si hanno due tipi di training, uno low-
impact associando la domanda posta ad una già esistente e uno high-impact inserendo la
risposta alla specifica domanda evidenziando dove si trova all’interno di un particolare
documento. [16]
4.1.3 Watson Analytics
Watson riuscendo a capire il linguaggio naturale e sfruttando la sua elevata velocità di calcolo
permette di svolgere analisi avanzate su elevate moli di dati rendendo disponibile a tutti gli
utenti la capacità di visualizzare relazioni nascoste tra dati o analisi predittive di trends
permettendo di comprendere il “perché” di alcuni andamenti. Il Content Analytics fornisce un
nuovo livello di comprensione dei contenuti in relazione al contesto estrapolato dalle
informazioni testuali. [17]
4.2 Strumenti Cloud offerti da IBM
IBM mette a disposizione la piattaforma OnTheHub che garantisce accesso a numerosi
software e servizi offerti dall’azienda. Attraverso tale piattaforma si sono analizzati alcuni
strumenti utilizzabili nel capo dell’istruzione.
4.2.1 IBM Watson Analytics
É un servizio di analisi che consente di scoprire modelli, relazioni tra dati organizzati sotto
forma tabellare. Fornisce strumenti di upload di documenti e interazione con piattaforme di
storage cloud. Permette di scoprire le relazioni tra i dati e di rappresentarle graficamente in
modo da garantire una rapida comprensione da parte dell’utilizzatore. Si riporta di seguito un
esempio di utilizzo svolto Sfruttando un Simple Data già presente tra i dati di Watson
21
Analytics riguardante la relazione tra soddisfazione del cliente sull’assistenza ricevuta in base
alla formazione dell’agente si è ottenuto il seguente grafico semplicemente chiedendo al
sistema la relazione tra queste due entità.
Figura 4.1 - Entity relationship
4.2.2 IBM Watson Discovery
É un servizio capace di estrapolare informazioni e svolgere ricerche sui dati utilizzando un
linguaggio query semplificato per eliminare la necessità di filtro manuale dei risultati.
Fornisce la possibilità di formare collezioni di dati.
Figura 4.2 - Watson Discovery: Manage data
22
L’analisi svolta in seguito all’inserimento di un nuovo documento permette di conoscere le
entità più rilevanti all’interno della collection selezionata e la relativa occorrenza.
Figura 4.3 - Watson Discovery: Overview
Permette di realizzare query su collezioni di dati sia in linguaggio naturale che SQL. Inoltre
per migliorare le prestazioni della ricerca il sistema supporta una attività di Training in cui
selezionare manualmente la risposta ad una data query.
Figura 4.4 - Watson Discovery: Query insert box
IBM Watson Discovery è un servizio che integra la componente di Natural Language
Understanding, introducendo capacità di estrapolazione di entità, analisi dei sentimenti e
concetti, classificazione per categorie dei documenti in base al tema trattato. Permette
l’estrapolazione dei metadati di ogni singolo documento caricato.
4.2.3 IBM Bluemix & NodeRED
Bluemix è una piattaforma fornita da IBM che permette di sviluppare, eseguire, rilasciare e
gestire applicazioni all’interno dell’ambiente Cloud in modo semplice senza doversi
preoccupare di configurare un ambiente di lavoro per la specifica applicazione. In questo
modo gli sviluppatori si possono concentrare sul lavoro di codifica senza doversi occupare del
livello sottostante costituito dalle risorse infrastrutturali. Bluemix supporta numerosi
linguaggi di programmazione (Java, Node.js, Go, PHP, Python, Ruby on Rails) e permette di
23
integrarne altri attraverso dei buildpacks, insiemi di script per preparare l’esecuzione del
codice sul cloud. [18] NodeRED è una piattaforma messa a disposizione da Bluemix per la
programmazione Flow-Based che integra dei pacchetti per utilizzare le API di Watson. La
strategia cloud offerta da Bluemix è formata da numerose componenti tra cui spiccano il
Natural Language Undersanting e il Natural Language Classifier presentati brevemente di
seguito.
Natural Language Understanding
Si è sviluppata una semplice applicazione che estrapola da una pagina web le principali entità,
parole chiave, concetti, relazioni e ruoli semantici all’interno di una frase. Di seguito viene
riportato il Flusso dell’applicazione.
Figura 4.5 - Natural Language Understanding flow example
La comunicazione avviene attraverso una richiesta HTTP di tipo GET in cui viene inserito
come parametro l’URL della pagina web da analizzare ed eventualmente il formato della
richiesta nel caso di rappresentazione JSON. La richiesta viene inviata attraverso un
messaggio al Natural Language Undestanding (NLU). Il NLU è il nodo fondamentale per la
comunicazione con il servizio omonimo di Watson fornito da Bluemix. In base al formato
richiesto i risultati dell’analisi verranno rappresentati in formato JSON o in forma di tabelle
grazie al tamplate inserito nel nodo Display Content Analysis. [19]
Natural Language Classifier
É una semplice applicazione che utilizza la capacità di Watson di analizzare dati in forma
tabellare per estrapolare l’appartenenza ad una data categoria del messaggio inviato. Di
seguito è riportato il Flusso dell’applicazione.
Figura 4.6 - Natural Language Classifier training
24
Il primo passo è quello di aggiungere i dati relativi all’argomento su cui interrogare il sistema
in formato CSV. Il caricamento è stato fatto direttamente collegando il sistema alla cartella
dropbox che conteneva il file. In seguito alla richiesta il Natural Language Classifier (NCU)
processa il documento creando un Classifier a cui è associato un ID.
Figura 4.7 - Natural Language Classifier
il nodo NCU è il componente che permette la richiesta del servizio e il confornto con il
Classifier creato al passo precedente ottenuto associandone l’ID. L’input è scritto sotto forma
di String mentre l’output è mostrato a video all’interno della piattaforma Node-RED.
4.3 Watson Projects in Education
In molte parti del mondo il settore scolastico è in uno stato di fallimento non fornendo le
abilità necessarie ai giovani per addentrarsi nel mondo del lavoro. Lo scopo di IBM è quello
di introdurre nuovi tool come supporto per l’insegnamento che aiutino l’insegnante a capire i
pattern di apprendimento di ogni studente in modo da modificare il modo di insegnare a
favore di una migliore fruizione dei contenuti [20] affiancando alla figura dell’insegnante
quella di un assistente virtuale in grado di fornire un supporto per studenti e professori e
sollevando questi ultimi da attività onerose come la correzione di test facendo guadagnare
tempo per seguire gli studenti. In alcune università del mondo sono già presenti sistemi di
analisi in grado di segnalare gli studenti che abbandonano gli studi o sono a rischio di
abbandono. Con l’introduzione dei sistemi cognitivi e di Watson si potrebbe cambiare il
paradigma di insegnamento, da “one-to-many” a “one-to-one” permettendo di seguire
singolarmente gli studenti e di sviluppare metodi di insegnamento su misura in base a
specifici bisogni. In questo modo si ridurrà l’abbandono degli studi mantenendo gli studenti
motivati. Per usufruire delle potenzialità di Watson il sistema deve essere educato da un
ampio pool di dati. Da qui l’idea di organizzare una banca dati contenente informazioni
riguardanti il percorso educativo degli studenti. [21] Di seguito si presentano alcuni dei
progetti già avviati nel campo dell’istruzione da IBM.
25
4.3.1 IBM and Sesame Workshop
Per quanto riguarda l’educazione infantile IBM è in collaborazione con Sesame Workshop,
un’organizzazione non profit la cui missione è quella di aiutare i bambini a crescere più
intelligenti, forti e buoni [22], per trasformare l’educazione dei bambini. Questa partnership è
volta ad integrare il sistema IBM Watson e la tecnologia di cognitive computing con le
ricerche e la competenza nel campo della prima infanzia di Sesame sviluppando la tecnologia
necessaria per trasformare il modo in cui i bambini apprendono, sia a scuola che fuori. Con
questo supporto Sesame Workshop può sviluppare app, giochi e giocattoli educativi
sfruttando la potenza delle abilità cognitive di Watson per rendere l’apprendimento più
divertente e stimolante. Il primo frutto di questa associazione è una nuova cognitive app per
tablet che include contenuti e metodi alternativi di apprendimento come video educativi e
giochi basati sulle parole caratterizzate dai personaggi di Sesame Street come Grover e Elmo.
L’obbiettivo è quello di ampliare il vocabolario dei bambini dando la possibilità ai professori
di riportare i progressi raggiunti dagli alunni. [23] L’applicazione è stata inserita in un
esperimento condotto nelle scuole pubbliche di Gwinnett in Georgia dove la collaborazione
tra bambini e professori nell’utilizzo di questo diverso e stimolante sistema di insegnamento
sta portando risultati positivi nel processo di ampliamento del vocabolario dei bambini.
4.3.2 IBM and Pearson
Per quanto riguarda il campo universitario IBM collabora con Pearson, azienda impegnata nel
campo dell’editoria scolastica, per fornire un supporto tecnologico per aiutare gli studenti nel
loro percorso di studi. Avvicinando le capacità cognitive sviluppate dai sistemi di IBM al
mondo universitario di tutti i giorni si cerca di dare agli studenti una nuova esperienza di
apprendimento ottenuta affiancando al classico lavoro di studio un tutor artificiale, che
sfruttando le capacità cognitive di Watson, potrà comunicare in linguaggio naturale con lo
studente proprio come si farebbe un compagno di studi o un professore. IBM e Pearson
stanno producendo con delle API per Watson strumenti specifici di diagnostica per
l’educazione e capacità di recupero. Grazie ad esse Watson sarà in grado di cercare attraverso
un proprio set di risorse informazioni utili per rispondere alle domande degli studenti. Watson
potrà definire le conoscenze dello studente in base al dialogo identificando dubbi e
26
fraintendimenti, e ampliarle suggerendo le tematiche da approfondire. Con uno strumento del
genere lo studente avrà anche un metro per comprendere il proprio livello di preparazione. In
base al percorso di studi scelto Watson potrà aiutare lo studente nell’organizzare il proprio
studio, risolvere le lacune riducendo sia il tempo necessario a completare gli studi sia il
rischio di abbandono che negli ultimi tempi è sempre più frequente. Dal punto di vista dei
professori Watson potrà fornire consigli su come impostare le lezioni in base ai dati raccolti,
ai punti di forza e di debolezza degli studenti. [24]
4.3.3 Watson Classroom: IBM and Coppel ISD
Una delle collaborazioni più promettenti è quella tra IBM e Coppel ISD. La Coppel
Indpendent School District è una scuola pubblica ad alto rendimento situata nei pressi di
Dallas che conta circa 12.500 studenti di tutte le età di molte comunità etniche differenti.
Quello che caratterizza la Coppel ISD come partner ideale per IBM nella sua missione è
proprio l’impegno della scuola allo sviluppo di metodi innovativi per l’insegnamento. Prima
di introdurre Watson nel percorso scolastico la scuola ha svolto una serie di sondaggi e
interviste ad insegnanti e amministratori scolastici per capire le principali difficoltà che i
professori devono affrontare giornalmente. Da queste indagini è emerso, secondo i professori,
che, a causa della grande velocità con cui si sviluppano le informazioni, esse risultano
ingestibili e che l’utilizzo della tecnologia come supporto all’insegnamento risulta
inutilizzabile a causa della mancanza di un sistema di raccolta dati e integrazione con sistemi
cartacei o con altre tecnologie, oltre alla mancanza di interfacce intuitive e di conseguenza la
necessità di corsi di training per utilizzarle. L’introduzione del progetto di IBM Watson
Education calza perfettamente con ciò che è emerso dai sondaggi poiché utilizzando la
tecnologia cognitiva è possibile comunicare con il sistema in linguaggio naturale, ottimizzare
e personalizzare il percorso degli studenti utilizzando un unico tool che, grazie alle sue
capacità di “deep learning”, propone soluzioni in pochissimo tempo, permettendo al
professore di scegliere in realtime senza più bisogno di ore e ore di studio e approfondimento.
Per introdurre le abilità di Watson, IBM e Coppell hanno previsto un set di app in modo da
aiutare i professori. Il progetto IBM Watson Education è iniziato nel 2013 con Watson
27
Classroom e ha avuto una grande accelerazione grazie alla partnership con Apple nel 2014. Si
sono così sviluppati due tool fondamentali: IBM Watson Element e IMB Watson Enlight con
lo scopo di:
Avvisare gli insegnanti di cambiamenti nelle performance degli studenti.
Condivide informazioni tra classi e insegnanti.
Migliorare l’apprendimento delle classi e trovare più tempo per gli studenti.
Permettere alla scuola di individuare e personalizzare più facilmente il programma.
IBM Watson Element
IBM Watson Element è un’app iOS sviluppata per iPad che dà la possibilità all’insegnante di
monitorare costantemente i progressi dei singoli studenti in modo da poter intervenire subito
in base ai loro bisogni. Permette di inserire osservazioni sugli studenti come interessi o
progressi condividendoli con gli altri professori.
IBM Watson Enlight
IBM Watson Enlight è un servizio browser che integra capacità cognitive e di analisi per
identificare un percorso su misura per ogni studente utilizzando dati accademici, demografici
e quelli raccolti mediante l’applicazione Watson Element.
Watson Education Insights Cloud
Tutti i dati prodotti da Watson Element e Watson Enlight sono depositati in un cloud comune
per migliorare l’analisi svolte dal sistema. Lo scopo è quello di creare un cloud unico a tutte
le applicazioni create da IBM Watson for Education, comprese quelle in collaborazione con
Sesame Street e Pearson, per connettere tutte le fasi del percorso di apprendimento degli
studenti in modo da rendere l’apprendimento cognitivo più efficiente e conveniente dando la
possibilità di sviluppare biblioteche e tutoraggi cognitivi. [25]
28
Conclusioni
Il cognitive computing sta cambiando il modo di approcciarsi al mondo entrando, sempre di
più, a far parte della realtà di tutti i giorni. I sistemi cognitivi con le innumerevoli capacità di
cui sono dotati possono risolvere problemi di analisi utilizzando dati in formati eterogenei
sollevando l’uomo dall’onere di doverli allineare per sfruttare i sistemi di analisi odierni,
fornendo interfacce in linguaggio naturale rendendo l’utilizzo di questi servizi semplice come
parlare con qualcuno. Dalla prima comparsa del sistema Watson nel 2011, l’introduzione dei
sistemi cognitivi si è diffusa a macchia d’olio nelle aziende e nei servizi pubblici dando vita
ad una “collaborazione” tra uomo e macchina senza precedenti. L’obiettivo più recente di
IBM è quello di introdurre le capacità dei sistemi cognitivi nell’istruzione avviando progetti
con diverse scuole per valutarne i risultati, già abbastanza positivi, per migliorare il campo
dell’istruzione cambiando il paradigma tradizionale di insegnamento. Si è discusso di
numerosi servizi che possono affiancare studenti e insegnanti portando allo sviluppo di una
società sempre più preparata a risolvere problemi. Si sono presentati diversi strumenti che
permettono di analizzare dati strutturati e non strutturati per aiutare lo sviluppo delle capacità
negli studenti rimandando ad uno strumento il compito di catalogare, correggere e analizzare
contenuti. A titolo di esempio si sono analizzate due semplici applicazioni che utilizzano i
servizi di Natural Language Understanding e Classifier di Watson per analizzare i dati
sfruttando le API Watson. Questi sistemi sono alla base delle applicazioni presentate
precedentemente di Watson Analysis e Discovery. L’utilizzo di questi strumenti nell’ambito
29
scolastico/universitario può aprire a nuove opportunità. Infatti l’utilizzo della comprensione
del linguaggio naturale di Watson introduce numerose applicazioni che permetteranno di:
analizzare diversi tipi di fonti sottolineando le relazioni tra le entità in gioco
permettendo a studenti ed insegnanti di scorgere diverse relazioni tra concetti ed
entità.
usare i dati sociali e studenteschi per migliorare le prestazioni degli studenti e
monitorare quelli ad alto rischio
analizzare le statistiche delle performance degli studenti nei test per comprendere se è
necessario soffermarsi di più su alcuni argomenti invece che su altri in base ai risultati
ottenuti in uno specifico esame o in un arco di tempo più lungo.
L’innovazione nell’istruzione raggiunta con questi nuovi tool consentirà di sviluppare
persone sempre più preparate e porterà a una richiesta sempre maggiore di personale che
sappia utilizzare i nuovi strumenti dando la possibilità di sviluppare nuovi corsi che
introducano Watson e i sistemi cognitivi agli studenti, ampliandone le conoscenze e
risolvendo il gap tra ciò che viene insegnato al giorno d’oggi e quello che è richiesto dal
mondo del lavoro, aumentando le possibilità lavorative per lo sviluppo di una società
migliore.
30
Bibliografia
[1] J. E. Kelly III, “Computing, cognition and the future of knowing.”, pagine 2-4,
10/2015
[2] “Scienze Cognitive” https://it.wikipedia.org/wiki/Scienze_cognitive,
Accessed 05/11/2017
[3] Roberto Vergani, “Cognitive Computing: che cos’è?”, 03/08/2016
[4] “Cognitive computing” https://en.wikipedia.org/wiki/Cognitive_computing,
Accessed 05/11/2017
[5] “IBM”, http://www.research.ibm.com/cognitive-computing/, Accessed 10/09/2017
[6] Nicoletta Boldrini, “Intelligenza Artificiale e Cognitive Computing: i nuovi
orizzonti”, ZeroUno, 26/09/2016
[7] “QUESTION-ANSWERING SYSTEMS”
http://di.unipi.it/~cappelli/seminari/brinchigiusti2.pdf, Accessed 11/09/2017
[8] “A Survey on Question Answering System”, pagine 7-11,
http://www.cfilt.iitb.ac.in/resources/surveys/Question%20Answering%20Survey-
biplab.pdf
[9] “Watson (intelligenza artificiale)”,
https://it.wikipedia.org/wiki/Watson_(intelligenza_artificiale), Accessed 05/11/2017
[10] Ferrucci, Brown, Chu-Carroll, Fan, Gondek, Kalyanpur, Lally, Murdock, Nyberg,
Prager, Schlaefer, Welty, “Building Watson: An Overview of the DeepQA Project”
[11] Ferrucci, “Introduction to “This is Watson””, volume 56, pagina 10, 05-07/2012
[12] “Industria 4.0”, https://it.wikipedia.org/wiki/Industria_4.0, Accessed 05/11/2017
[13] “La nuova frontiera del cognitive computing”,
31
https://www.wired.it/attualita/tech/2014/05/23/la-nuova-frontiera-del-cognitive-
computing/, Accessed 05/11/2017
[14] Coccoli, Maresca, Stanganelli, “Cognitive Computing in Education”, volume 12,
pagine 62-63, 05/2016
[15] Franceschini, Soares, Montaño, “Watson Concept Insights a Conceptual Association
Framework”, pagine 179-180, 04/2016
[16] “IBM Watson Ecosystem Getting Started Guide”, pagine 1-16, 07/2014
[17] “IBM Watson Analytics”, https://www.ibm.com/watson-analytics, 05/11/2017
[18] “Bluemix” https://it.wikipedia.org/wiki/Bluemix, Accessed 05/11/2017
[19] Bisson, “Natural Language Understanding in Node-RED”
[20] “EDUCATION IN THE COGNITIVE ERA”,
https://www-01.ibm.com/common/ssi/cgi-bin/ssialias?htmlfid=EDI03007USEN&
[21] King, Cave, Foden, Stent, “Personalized Education white paper”, 04/2016
[22] “sesameworkshop”,
http://www.sesameworkshop.org/about-us/workshop-at-a-glance/,
Accessed 11/09/2017
[23] “IBM Education Industry Blog”,
https://www.ibm.com/blogs/insights-on-business/education/cognitive-education-
announcement/, Accessed 12/09/2017
[24] “IBM Watson Education and Pearson to Drive Cognitive Learning Experiences for
College Students”, http://www-03.ibm.com/press/us/en/pressrelease/50842.wss,
Accessed 12/09/2017
[25] Brooks, McCarthy, “IBM Watson at Coppell White Paper”, 07/2017