ibm watson conversation: machine learning tools, artificial intelligence capabilities and natural...
TRANSCRIPT
IBM Watson Conversationmachine learning tools, artificial intelligence capabilities and natural language
November 25th, 2016
Francesca GiganteSolution IT ArchitectCloud and Cognitive [email protected]@francy_giant
Milan
La nuova frontiera della statistica: il cognitive computingLa statistica applicata al linguaggio naturale
attraverso gli algoritmi di data mining e machine
learning si è sviluppata molto velocemente negli
ultimi anni al punto di produrre centinaia di
algoritmi che sono alla base del Cognitive
Computing
L’evoluzione del Q&A (attraverso le fasi di sviluppo di Watson)
4
REASON
They can reason, grasp underlying concepts, form hypotheses, and infer and extract ideas.
UNDERSTAND
Cognitive systems understand imagery, language and other unstructured data like humans do.
LEARN
With each data point, interaction and outcome, they develop and sharpen expertise, so they never stop learning.
INTERACT
With abilities to see, talk and hear, cognitive systems interact with humans in a natural way.
The Core Characteristics of a Cognitive System
Customers moves toward a multichannel engagement model
THEN NOW
Customer Customer
L’era dei ‘chatbot’ (computazione conversazionale)
I chatbot sono applicazioni che consentono di creare dialoghi interattivi con linguaggio naturale.
Attraverso le chatbot è possibile soddisfare puntualmente le richieste dell’utente attraverso una conversazione in linguaggio naturale e nello stesso tempo:– ‘raccogliere’ tutte le informazioni inserite dall’utente per successive analisi di business– accedere ai sistemi informativi aziendali (CRM, magazzino, catalogo, ecc.) per fornire informazioni
di dettaglio– accedere ad una serie di documenti opportunamente classificati per fornire informazioni testuali di
aiuto all’utente per lo svolgimento di operazioni, aiuto all’uso di prodotti, e altre informazioni utili.– può essere continuativamente ‘affinata’ e ‘arricchita’ con nuovi termini e modi conversazionali
senza azioni sul sw sviluppato ma agendo unicamente sul ‘training set’ o sul ’dialogo’
IBM Watson – A Gentle Technical Introduction7
• Watson Conversation allows you to create applications that understands natural-language input and uses machine learning to respond to customers in a way that simulates a conversation between humans beings.
• Combines a number of cognitive techniques to help you build and train a bot - defining intents and entities and crafting dialog to simulate conversation.
• The system can then be further refined with supplementary Watson API’s and other technologies to make the system more human-like or to give it a higher chance of returning the right answer.
• Allows you to deploy a range of bots via many channels, from simple, narrowly focused Bots to much more sophisticated, full-blown virtual agents across mobile devices, messaging platforms like Slack, or even through a physical robot.
Watson Conversation Service
IBM Watson – A Gentle Technical Introduction8
Watson Conversation Service
Watson Conversation è uno strumento grafico completo, veloce, flessibile e facile da usare per creare e testare dialoghi interattivi con l’utente.
Watson Conversation espone le conversazioni create dall’utente via API per poterle includere all’interno del codice applicativo
Si basa sul principio degli intenti e delle entità viste precedentemente a cui si aggiunge la capacità di utilizzare questi intenti e queste entità per creare dei veri e propri dialoghi ramificati
Watson Conversation – how to train the service
Come creare le conversazioniPer creare le conversazioni si parte dagli intenti che stabiliscono le tipologie di richieste dell’utente. Per ogni intento è necessario istruire il Watson con un certo numero di esempi che servono ad identificare l’intento stesso.- Es.: #trova_attività
• “Mi va di uscire stasera”• ”Voglio andare a mangiare fuori”• “Credo che andrò al cinema”• “Non ho per niente voglia di stare a casa”
Successivamente si stabiliscono le entità con vari valori associati e vari sinonimi per ciascun valore:- Es: @attività:
• Ristorante mangiare, affamato, ristoranti, cibo• Cinema film, • Discoteca disco, ballare• Bar pub, bere, birra
Dopo aver definito gli intenti e le entità si costruisce il dialog in maniera grafica:- Si parte dai convenevoli e poi si aggiungono i percorsi possibili relativi ai vari intenti, per cui se ad esempio il sistema recepisce
la frase “Credo che andrò al cinema” è in grado immediatamente di capire che l’utente vuole andare al cinema e gli chiede magari se ha preferenze per un cinema, per un film o per un genere di film ecc. Se invece il sistema recepisce la frase “Mi va di uscire stasera” compirà un percorso diverso per chiedere se l’interlocutore vuole andare a mangiare fuori o vuole andare al cinema o in discoteca e se gli viene risposto ‘voglio andare al cinema’ allora il dialogo si riconduce alla scelta del cinema o del film
Come fornire informazioni agli utentiAll’interno del dialogo si possono inserire – risposte compiute che possono essere ritornate direttamente all’utente– risposte contengono delle variabili di contesto che l’applicazione usa per capire quale
sistema/servizio esterno può completare la risposta con le informazioni in possesso.– Es. ”Che tempo fa a Roma oggi”
• Si identifica l’intento #meteo e le entità @city e @date e si costruisce la risposta inserendo una variabile di contesto modo che l’applicazioni chiami il servizio TheWeatherChannel per ottenere l’informazione necessaria al completamento della risposta
– Per determinare le ‘entità aperte’ (es.city) è necessario ricorrere al servizio Alchemy
E’ previsto il caso “Anything else” che si verifica quando il servizio di conversation non riesce a determinare correttamente uno specifico intento.
Watson Retrieve and Rank per gestire le varie tipologie di richieste
Il servizio Watson Conversation è sufficiente
E’ necessario integrare il Watson Conversation conIl servizio ‘Retrieve and Rank’
• Il servizio di Retrieve and Rank viene
utilizzato quando il Watson Conversation
non ‘capisce’ l’intento della domanda o
identifica un intento con una bassa
percentuale di ‘confidenza’.
• Il servizio Retrieve and Rank utilizza la
domanda dell’utente per ricercare tra i
documenti che sono stati inseriti nel
servizio una serie di documenti che
possono soddisfare la domanda in
questione (modalità F.A.Q.)
Rispondere alle domande non è solo ricercare nei documenti
13
IBM WatsonHas question
Search engine vs.
Distills to 2-3 keywords
Reads documents
Finds answers
Finds and analyzes evidence
Finds documents containing keywords
Delivers documents based on popularity
Asks a question
Understands question
Computes confidence
Delivers response, evidence and confidence
Considers answers and evidence
Produces possible answers or outcome
Analyzes evidence
IBM Watson – A Gentle Technical Introduction14
Starting Watson Conversation Service – the payload
For every following inputs in the same conversations, the input MUST INCLUDE THE CONTEXT of the previous output
IBM Watson – A Gentle Technical Introduction15
Watson Conversation channels: Botkit (https://howdy.ai/botkit/)This middleware plugin for Botkit allows developers to easily integrate a Watson Conversation workspace with multiple social channels like Slack, Facebook, and Twilio. Customers can have simultaneous, independent conversations with a single workspace through different channels.
1 Conversation to all possible channles
Integration
16
What is Watson today?
Watson Developer Cloud
SpeechVisionLanguage Data Insights
Watson Offerings
Watson Virtual Agent
Watson Explorer Watson Knowledge Studio
Enable cognitive computing features in your app using APIs.
Product & SaaS Offerings
17
Watson Developer Cloud
…with more to come
Language Vision
Data Insights Speech
Watson Developer Cloud
Feed DetectionVisionLanguage Data
Insights
Watson Offerings
Watson Virtual Agent
Watson Explorer Watson Knowledge Studio
18
Engagement Reference Architecture – Execution
19
Critical Success Factors for Cognitive (Guiding Principles for the cognitive reference architecture)
Right Cloud Platform IBM Bluemix cloud (120 services +), that includes Watson APIs.
New Forms of Data Ability to gain insight from Invisible Data (music, literature, pictures, videos); IOT Data in Peer Clouds ; Data that you don’t own (Social, Weather, etc)
Ecosystem Ability to use data / API’s in Peer Clouds (UA Record, Medical Device data, Softbank)
New Channels Ability to develop same application for the most of the current channels: facebook messenger, twitter, web, slack, robots, wearables, ……
IBM Watson – A Gentle Technical Introduction20
APP /Solution / Service
Weather
Data & analytics
Geocoding/Travel
Internet of Things
Watson
Mobile / Push
Video Streaming
Services
Runtimes Security
Integration /Hybrid Cloud DevOps
Core
... and more are coming
Cognitive application powered by IBM Watson can leverage all other IBM Bluemix services
IBM Watson – A Gentle Technical Introduction21
How to learn
• Courses and use caseswww.ibm.com/learningDevelopment section, Watson Technology coursesUse cases
• Watson Developer Cloudwww.ibm.com/watson/developercloud/
All Watson services are documented here
• Youtube – Watson channelwww.youtube.com/user/IBMWatsonSolutions/videosFor each Watson services you can find an ‘how to’ video
22
• Documented architecture for various areas including Data & Analytics, e-Commerce, DevOps, IoT etc.
• Sample code and demo apps as well.
• https://developer.ibm.com/architecture/
• Goal of this work group was to create a robust set of architecture’s and guidance for various cognitive adoption patterns
• Currently Cognitive for Engagement is published.
IBM Cloud Architecture Center
IBM Watson – A Gentle Technical Introduction23
Project IntuProject Intu is an experimental service that allows developers to quickly and seamlessly integrate various cognitive services, such as Conversation and Speech-to-Text, with the capabilities of various devices, spaces and physical objects.
What’s coming ….. Stay tuned
https://ibmtjbot.github.io/
http://www.ibm.com/watson/developercloud/project-intu.html
TJ BotI'm an open source project designed to help you access Watson Services in a fun way. You can 3D print me or laser cut me, then use one of my recipes to bring me to life!
24
Demo
25
What will you do with Watson?
The Cognitive Business Narrative / 05.18.201626
Gigante FrancescaBusiness Development & ISVSolution IT ArchitectEmail: [email protected]: +39.335.7506665