Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Cognitive Services & LUIS

444 views

Published on

Sessione tenuta al Meet{cast} di DotNetPodcast su Cognitive Services e LUIS.

Published in: Technology
  • Be the first to comment

Cognitive Services & LUIS

  1. 1. Meet{cast} powered by Massimo Bonanni SR Consultant – EMEA Modern Apps Domain – Microsoft @massimobonanni massimo.bonanni@microsoft.com
  2. 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
  3. 3. powered by
  4. 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
  5. 5. powered by Cognitive Services API
  6. 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. 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. 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. 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. 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
  11. 11. powered by https://www.microsoft.com/cognitive-services/ Come iniziare
  12. 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
  13. 13. powered by Portal Overview DEMO
  14. 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. 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
  16. 16. powered by Computer Vision API DEMO
  17. 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
  18. 18. powered by
  19. 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. 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. 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. 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. 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
  24. 24. powered by Creare una nuova app «MyBank» DEMO
  25. 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. 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. 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. 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. 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. 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
  31. 31. powered by MyPizza DEMO
  32. 32. powered by
  33. 33. powered by  Cognitive Services Web Site https://www.microsoft.com/cognitive-services  SDK & Samples https://www.microsoft.com/cognitive-services/en-us/SDK-Sample  Documentation https://www.microsoft.com/cognitive-services/en-us/documentation  Stack Overflow https://stackoverflow.com/questions/tagged/microsoft-cognitive  UserVoice https://cognitive.uservoice.com/  Pricing https://www.microsoft.com/cognitive-services/en-us/pricing  Videos https://myignite.microsoft.com/videos/49997 https://myignite.microsoft.com/videos/2828  dotNet{podcast} - #119 Cognitive Services http://dotnetpodcast.com/show/card/119 Reference – Cognitive Services
  34. 34. powered by  LUIS Web Site https://www.luis.ai/  Documentation https://www.luis.ai/Help Reference – LUIS

×