2. powered by
Cognitive Services
Perchè Cognitive Services?
Cognitive Services overview
Come iniziare
Computer Vision API overview
Demo
Language Understanding
Intelligent Service (LUIS)
Overview
Creare una nuova app LUIS
Intenti, Entità, Espressioni
Training del modello
Pubblicare il servizio REST
Demo
E, poi.......
Agenda
4. Piattaforma composta da API REST
Facile da utilizzare: poche line di
codice.
Utilizzabile con qualsiasi piattaforma di
sviluppo
Ampia offerta di servizi in continua
crescita
Costruiti da esperti di Microsoft
Research, Bing e Azure Machine
Learning.
Documentazione, codice di esempio
e contributo della community
Facile Flessibile Testato
GET A
KEY
6. powered by
Computer
Vision API
Ricavare
informazioni utili
da immagini
(tag,
descrizione,
colore, etc.,
etc.).
Video API
Motion detection,
face detection,
stabilizzazione,
generazione di
anteprime e
analisi dei frame.
Face API
Rilevare,
identificare,
analizzare
volti all’interno
delle
immagini.
Emotion
API
Eseguire il
riconoscimento
delle emozioni
all’interno di
immagini e foto.
Vision
Content
Moderator
Moderare testo,
immagini e video
con possibilità di
intervenire
manualmente nei
risultati.
7. powered by
Bing Speech
API
Conversione tra
testo e parlato e
viceversa.
Comprensione
degli intenti.
Speaker
Recognition
API
Identificare uno
speaker in un file
audio o utilizzare
l’audio come un
mezzo per
l'autenticazione
con l'API Speaker
Recognition.
Custom
Recognition
Intelligent
Service (CRIS)
Funzionalità di
Speech
Recognition
personalizzabili.
Speech
8. powered by
Text
Analytics
API
Rileva sentimenti,
frasi chiavi,
argomenti e
lingua di un testo.
Bing Spell
Check API
Correzione
ortografica e
di digitazione
del testo.
Web
Language
Model API
Automatizza
un'ampia gamma
di attività standard
di elaborazione del
linguaggio naturale
tramite API di
modellazione del
linguaggio.
Linguistic
Analysis
API
Analisi
linguistica del
testo.
Language
Understanding
Intelligent
Service (LUIS)
Comprensione
del linguaggio
e degli intenti.
Language
Translator
API
Traduzione di
audio e testo
con API REST.
9. powered by
Knowledge
Exploration
Service
Aggiungere
funzionalità di
ricerca di knowledge
base attraverso dati
strutturati e
linguaggio naturale.
Entity
Linking
Service
Individuazione
“entità” all’interno
del testo con
possibilità di avere
collegamenti con
esse.
Recommendations
API
Fornire consigli sui
prodotti
personalizzati per il
vostro cliente e
migliorare le
vendite nel vostro
negozio
Academic
Knowledge
API
Esplorare le
relazioni
esistenti tra
scritti
accademici, libri,
riviste e autori.
Knowledge
QnA Maker
QnA Maker estrae
tutte le possibili
coppie di domande
e risposte da
contenuti forniti
dall'utente - URL
frequenti,
documenti e
contenuti editoriali.
10. powered by
Bing Web
Search API
Fornire
funzionalità di
ricerca di siti
web,
immagini,
video, notizie.
Bing Video
Search API
Aggiungere
funzionalità di
ricerca di video
con possibilità di
visualizzare
anteprima e dati
di tendenza.
Bing
Autosuggest
API
Fornire
suggerimenti
automatizzati
per le
ricerche.
Bing Image
Search API
Aggiungere
ricerca di
immagini
all’interno delle
applicazioni o dei
siti web.
Bing News
Search API
Aggiungere
funzionalità di
ricerca di
notizie.
Search
12. powered by
Come iniziare
Costi su
https://aka.ms/cognitivecosts
Numero di transazioni
disponibili nella versione
free
Chiavi per l’utilizzo del
servizio
Quote utilizzate
14. powered by
Utilizzando le API di Computer Vision è possibile:
analizzare e filtrare contenuti visivi generando descrizioni e tag,
utilizzare il riconoscimento ottico dei caratteri per identificare il testo trovato in
immagini,
distinguere le combinazioni di colori,
creare miniature a partire da immagini complete,
riconoscere la presenza di facce,
riconoscere celebrità.
Computer Vision API
15. powered by
Free (default quando ci registriamo):
5.000 chiamate mensili, 20 al minuto (terminate le quali otteniamo un
errore HTTP 439, “TOO MANY CALLS”)
Gratuito!!! Ottimo per fare prove!!!!
Standard:
10 transazioni al secondo
1.50$ per 1000 transazioni
Condizioni di utilizzo
Piano Descrizione Prezzo
Free 10,000 transazioni al mese, 20 al minuto Free
Standard 10 transazioni al secondo (TPS) $1.50 per 1000 transazioni
17. powered by
Pensato per aiutare le persone con disabilità visiva
Un’applicazione per “vedere” il mondo che ci circonda
Utilizza i servizi Vision, Emotion e Bing Translator per “descrivere” immagini,
persone ed emozioni utilizzando il linguaggio dell’utente
«Point and Click»
Open-Source su GitHub
App cross-platform con Xamarin
Windows, Android, iOS
Cross-experience
«Gira» anche su Windows 10 IoT Core
Intel Joule 570x
See4Me
https://github.com/DotNetToscana/See4Me
Vision API Emotion API Speech API Translator
API
19. Un servizio di Cognitive Services che fornisce agli
sviluppatori un modo semplice per creare modelli di
linguaggio da utilizzare nelle applicazioni per
comprendere comandi dell'utente.
Creare il
proprio
modello
“Addestrare” il
modello tramite
esempi
Pubblicare il
proprio servizio
HTTP da utilizzare
nelle applicazioni
Gestire ed
evolvere il modello
in maniera
semplice
Language
Understanding
Intelligence
Service (LUIS)
20. powered by
Uno dei problemi chiave nelle interazioni uomo-computer è la capacità del
computer di capire ciò che una persona vuole, e di trovare i pezzi di
informazioni che sono rilevanti per il suo intento.
Per esempio, in una applicazione che visualizza delle news, l’utente potrebbe dire
«Trovami notizie su aziende di realtà virtuale», nel qual caso vi è l'intenzione
(intento) di «Trovare notizie», e il tema «società di realtà virtuale» come
informazione essenziale (entità).
LUIS è stato progettato per consentire di implementare rapidamente servizi
REST in grado di comprendere intenti e capire entità presenti in una frase.
LUIS consente di progettare l'insieme delle intenzioni e le entità che sono
rilevanti per l'applicazione, e poi guida l'utente attraverso il processo di
costruzione di un sistema di comprensione del linguaggio.
Overview
21. powered by
Una volta che l'applicazione viene distribuita e gli utenti cominciano ad
interagire con essa, LUIS permette, inoltre, di utilizzare una sorta di
apprendimento attivo per migliorare se stesso.
Nel processo di apprendimento attivo, LUIS identifica le interazioni non
gestite e permette di «etichettarle» secondo le intenzioni e le entità.
In questo modo LUIS ci permette di
Migliorare costantemente il sistema;
Concentrarsi sulle sole affermazioni importanti per l’utente minimizzando il
tempo speso per il training del sistema stesso
Overview
22. powered by
Per iniziare ad utilizzare LUIS è necessario registrarsi su http://www.luis.ai/
Per creare e rendere disponibile una app LUIS (di fatto un REST Service) è
necessario
1. Creare una nuova App nel portale
2. Definire intenti ed entità
3. Definire le espressioni comprese
dall’app
4. Eseguire il training del modello
5. Pubblicare il servizio
6. Utilizzare il servizio con chiamate
REST
Creare una nuova app
23. powered by
Scenari di utilizzo
LUIS può essere utilizzato
in scenari IoT, come ad
esempio attivazione vocale
di luci, vendor machine,
scenari di facial recognition
per accessi e altri.
IoT
LUIS permette di essere
integrato con il Bot
Framework di di Microsoft e
poter essere utilizzato
all’interno di Slack, Skype ed
alter piattaforme di
messaging.
Chat bots
LUIS utilizza dei modelli pre-
compilati utilizzati in Bing e
Cortana che permettono agli
sviluppatori di aggiungere
facilmente le proprie
funzionalità di assistente
virtuale.
Assistente
Virtuale
25. powered by
Definisce una intenzione catalogata all’interno del modello, ad esempio
«Vorrei una pizza margherita» potrebbe essere l’intento «MakeOrder»
in una applicazione di gestione degli ordini per una pizzeria
Indentificato da
una label (es. «MakeOrder»)
un elenco di espressioni (es. «Voglio una margherita»,
«Ordino una capricciosa!», etc., etc.)
eventuali entità («margherita», «capricciosa», etc., etc.)
Intenti
26. powered by
Informazione importante all’interno di intento, ad esempio «margherita» potrebbe
essere l’entità «PizzaType» all’interno dell’intento «MakeOrder»
Possono esistere più entità per ogni label, ad esempio «PizzaType» potrebbe avere
«margherita», «capricciosa», etc., etc.
Le entità possono essere:
Generiche: definisce di fatto solo il tipo
Gerarchiche: definisce il tipo e delle entità specifiche
(ad esempio PizzaType::Margherita)
Predefinite: sono entità predefinite (come, ad esempio,
date, percentuali, etc., etc.)
Possono essere definite fino a 10 entità di ogni tipo
per ogni applicazione
Entità
27. powered by
Espressione:
frase che può essere associata ad un intento e può contenere delle entity
Ad esempio «vorrei ordinare una margherita e una capricciosa» è un
espressione che
risponde all’intento «MakeOrder»
contiene due entità di «PizzaType» ed esattamente «margherita» e «capriciosa»
Espressioni
28. powered by
Quando si esegue il training di un modello, LUIS
prende in considerazione intenti, entità e
espressioni e tenta di generalizzarli (sfruttando
algoritmi di machine learning) per sviluppare un
modello di riconoscimento.
Tecnicamente, LUIS utilizza classificatori di
regressione logistica per determinare intenti, e
campi aleatori condizionali (CRF) per
determinare le entità.
Per eseguire il training del modello è sufficiente
fare clic sul pulsante nell'angolo in basso a
sinistra della pagina. Il training avviene anche
automaticamente con intervalli regolari.
Training del modello
29. powered by
Il comando di pubblicazione genera
un endpoint HTTP di tipo REST che
consente di interpretare frasi di
testo.
La finestra di dialogo di
pubblicazione consente di eseguire
subito un test.
Pubblicazione del servizio REST Api
URL di test (GET)
30. powered by
Free (default quando ci registriamo):
10.000 transazioni mensili (terminate le quali otteniamo un errore HTTP
439, “TOO MANY CALLS”)
Gratuito!!! Ottimo per fare prove!!!!
Standard:
10 transazioni al secondo
0.75$ per 1000 transazioni
Condizioni di utilizzo
Piano Descrizione Prezzo
Free 10,000 transazioni al mese Free
Standard 10 transazioni al secondo $0.75 per 1000 transazioni