Battle of the AI Titans Part 3 - Microsoft Azure's AI Services

Chris Dunn,
April 4, 2018

Il s'agit du dernier Èpisode d'une sÈrie en 4parties sur l'intelligence artificielle (IA). Le premier article de cette sÈrie portait sur les bases de l'IA et il fut suivi par des publications prÈsentant chaque acteur majeur de l'IA: Google, Amazon et aujourd'hui, les services d'IA de MicrosoftAzure.

Nul ne peut nier que MicrosoftAzure prend l'intelligence artificielle tr s au sÈrieux. Par exemple, son groupe CognitiveServices reprÈsente 28services diffÈrents, et il ne s'agit que d'un pan de son portefeuille global en mati re d'IA! Nous avons donc beaucoup d'aspects ‡ couvrir. CommenÁons!

Services Cognitifs

Microsoft Azure divise ses Cognitive Services ou Services Cognitifs en 5domaines diffÈrents: vision, parole, langue, connaissance et recherche.

Services d'IA Microsoft Azure - Vision

Computer Vision API

Ce service identifie les objets et les actions ‡ l'intÈrieur des photos et des vidÈos. S'appuyant sur cette capacitÈ de base, il effectue de nombreuses actions, notamment:

  • Lire des textes imprimÈs et manuscrits.
  • Reconnaissance des cÈlÈbritÈs et des rep res.
  • Analyser des vidÈos identifiant des objets ‡ l'intÈrieur de celles-ci.

ModÈrateur de Contenu

Ce service permet de modÈrer les textes, images et vidÈos. En ce qui concerne les textes, le logiciel ContentModerator dÈtecte les potentiels propos vulgaires dans plus de 100langues. Il peut Ègalement utiliser des listes personnalisÈes de termes considÈrÈs comme inappropriÈs par le dÈveloppeur. Pour les vidÈos, le logiciel ContentModerator Èvalue les contenus potentiellement destinÈs aux adultes. Il donne Ègalement la possibilitÈ d'intÈgrer des vÈrifications humaines, de mani re ‡ pouvoir surveiller ses opÈrations.

Service Vision PersonnalisÈe (prÈsentation)

Ce service est adaptatif. Les utilisateurs tÈlÈchargent des photos qui ont ÈtÈ marquÈes (ou peuvent tÈlÈcharger des photos non marquÈes et laisser le Service Vision PersonnalisÈe les marquer). Une fois que le Service Vision PersonnalisÈe dispose des photos marquÈes, l'utilisateur lui ´donne l'instructionª de reconna tre des aspects de la photo, comme une pi ce ou un aliment en particulier. Regardez cette vidÈo pour vous rendre compte ‡ quel point il est facile d'adapter le Service Vision PersonnalisÈe:

https://www.youtube.com/watch?v=3sjInlJcpBs

Face API

Face API peut indiquer la probabilitÈ que deux photos contiennent la m'me personne. Il extrait Ègalement de la photo des dÈtails concernant une personne, notamment: l'‚ge, le sexe, la pose, le sourire, les Èmotions et les poils du visage. Il dÈtecte o˘ se trouvent les caractÈristiques d'un visage gr‚ce ‡ des coordonnÈes (c.-‡-d. le sourcil gauche se trouve aux coordonnÈes X et Y). Je l'ai essayÈ sur ma photo et je l'ai trouvÈ Ètrangement prÈcis.

Ce qui est intÈressant, c'est que quand j'ai tÈlÈchargÈ une photo prise il y a plusieurs annÈes et une autre de l'annÈe derni re, il m'a donnÈ le m'me ‚ge. (Apparemment, je n'ai pas vieilli au cours de ces derni res annÈes!)

Emotion API

Ce service est dÈfini comme obsol te, car sa fonctionnalitÈ est incluse dans l'application de Face API. Comme son nom l'indique, il dÈtecte les Èmotions des individus dans les photos.

Video Indexer (prÈsentation)

L'un des meilleurs aspects des services d'IA de Microsoft Azure, c'est qu'ils rassemblent plusieurs technologies d'IA sous-jacentes pour offrir un service plus large. Video Indexer en est un excellent exemple. Ce service simple associe une puissante Ènergie avec:

  • La transcription audio: prend en charge la conversion de la parole en texte en anglais, espagnol, franÁais, allemand, italien, chinois, portugais (brÈsilien), japonais et russe.
  • Le suivi et l'identification de visages: comme son nom l'indique, cette fonctionnalitÈ identifie les visages (cÈlÈbritÈs). Video Indexer peut Ègalement recevoir l'instruction de reconna tre d'autres visages et les identifier ‡ travers des flux vidÈo.
  • L'indexation des orateurs: note qui a dit quoi et quand.
  • La reconnaissance visuelle de textes: extrait le texte des panneaux de signalisation, des documents, etc. qui sont affichÈs dans une vidÈo.
  • La dÈtection d'activitÈs vocales: identifie le fond sonore et sÈpare les voix du bruit de fond.
  • La dÈtection de sc nes: effectue une analyse visuelle sur la vidÈo pour dÈterminer quand une sc ne change.
  • L'extraction de keyframes: identifie automatiquement les keyframes dans une vidÈo.
  • L'analyse des sentiments: se passe d'explication.
  • La traduction: traduit la transcription de la vidÈo.
  • La modÈration de contenus: identifie n'importe quel contenu pour adulte dans les vidÈos.
  • L'extraction de mots-clÈs: Video Indexer identifie des mots-clÈs en fonction d'une transcription.
  • L'annotation: Video Indexer annote les vidÈos ‡ l'aide d'un mod le prÈdÈfini de 2000objets. (Semblable ‡ de nombreux autres titans de l'IA.)

Services d'IA Microsoft Azure - Parole

Traducteur de conversation :Translator Speech API

Ce service est similaire ‡ Google Cloud Translate. Ce qu'il faut retenir de ce service, c'est qu'il est intÈgrÈ dans certaines des applications populaires de Microsoft, y compris Skype et PowerPoint. Vous en saurez plus dans quelques instants.

Translator Speech API, comme son nom l'indique, traduit la parole. Pour ce faire, il effectue 5Ètapes:

  1. Il reconna t les paroles.
  2. Il identifie la langue.
  3. Il transcrit les mots en texte.
  4. Il traduit le texte.
  5. Il lit la traduction.

De nombreux cas d'usage sont dÈtaillÈs ici sur le site Web de Microsoft. L'un des cas d'usage les plus intrigants concerne l'utilisation de ce que Microsoft appelle la ´fonctionnalitÈ en directª.

Elle permet aux dÈveloppeurs d'ajouter des fonctionnalitÈs de traduction automatique en direct ‡ leurs applications. Il vaut la peine de noter que Microsoft se sert de l'API de traduction de conversation TranslatorSpeech dans Skype et Powerpoint. DorÈnavant, les personnes discutant dans des langues diffÈrentes par l'intermÈdiaire de Skype peuvent demander ‡ l'API TranslatorSpeech de traduire leurs conversations en temps rÈel.

Vous devez faire une prÈsentation devant des personnes qui ne parlent pas votre langue maternelle? Aucun probl me! Les Èquipes de Microsoft se sont associÈes pour intÈgrer l'API TranslatorSpeech ‡ Powerpoint. Ce nouveau plug-in vous permet d'intÈgrer des sous-titres dans une autre langue pendant que vous faites votre prÈsentation.

Si vous voulez en apprendre davantage sur cette technologie, tÈlÈchargez l'application MicrosoftTranslate sur votre tÈlÈphone; elle est disponible sous Android et iOS.

Cette application est alimentÈe par l'API TranslatorSpeech et fournit une traduction en temps rÈel lors d'une conversation entre deux personnes. Mon coll gue (de langue maternelle espagnole) et moi-m'me (de langue maternelle anglaise) avons testÈ l'application. Nous l'avons trouvÈe Ètonnamment prÈcise. Pour ne rien g‚cher, nous nous sommes bien amusÈs!

Traduction de conversations en direct

Reconnaissance de l'orateur : Speaker Recognition API

Ce service porte bien son nom! Il identifie les orateurs en fonction de leur voix. Si vous vous souvenez de Video Indexer ÈvoquÈ plus tÙt dans cet article, c'est le service qui sous-tend la capacitÈ de Video Indexer ‡ reconna tre qui parle et quand.

Service d'assistance vocale : Custom Speech Service

¿ un niveau ÈlevÈ, ce service vous permet de crÈer votre propre mod le de reconnaissance vocale. En approfondissant un peu plus, vous pouvez crÈer ‡ la fois des mod les acoustiques et linguistiques personnalisÈs. Microsoft a fait un bon travail en dÈcrivant la diffÈrence entre les mod les ici. J'en ai inclus l'extrait suivant:

´Le mod le acoustique est un classificateur qui classe des fragments courts audios dans un certain nombre de phon mes, ou d'unitÈs sonores, dans une langue donnÈe. Par exemple, le mot ´paroleª est composÈ de deux phon mes ´pa ??lª. Ces classifications sont produites ‡ une vitesse de l'ordre de 100fois par seconde.

Le mod le linguistique est une distribution de probabilitÈ sur des sÈquences de mots. Le mod le linguistique aide le syst me ‡ faire un choix entre des sÈquences de mots qui sonnent pareil, en fonction de la probabilitÈ des sÈquences de mots elles-m'mes. Par exemple, ´reconna tre la paroleª et ´refaire na tre la farandoleª sonnent pareil, mais la premi re hypoth se est beaucoup plus susceptible de se produire, et donc se verra attribuer un score plus ÈlevÈ par le mod le linguistique.ª

Custom Speech Service est idÈal pour les applications qui ont leurs propres termes. Ceux d'entre nous qui cherchent ‡ crÈer des applications peuvent donc vouloir fortement envisager de l'utiliser. C'est un bon encha nement vers le prochain bloc de services d'IA Microsoft Azure - Langue.

Services d'IA Microsoft Azure - Langue

Reconnaissance Vocale : Language Understanding (LUIS)

Si vous cherchez ‡ intÈgrer des actions basÈes sur la langue dans votre application, ce service est fait pour vous! Il utilise Bing Speech API (abordÈ plus en dÈtail ci-dessous) pour traduire les mots parlÈs en texte, qui est ensuite traitÈ par LUIS. LUIS dÈtermine les intentions (ou les mesures qu'un utilisateur a l'intention de prendre) et les entitÈs sur lesquelles ces objets agissent.

Il renvoie un JSON avec toutes les informations dont vous avez besoin pour prendre des mesures dans vos applications. Ce service est Ègalement intÈgrÈ au Bot Service d'Azure afin que vous puissiez crÈer rapidement des robots pour alimenter vos applications.

Vous savez ce qui est vraiment cool? Il a adoptÈ une approche similaire au DialogFlow de Google et fournit ce qu'il appelle des ´mod les de domaine prÈcrÈÈsª. Ces mod les sont dotÈs d'intentions, d'entitÈs et de ce qu'Azure appelle des ´ÈnoncÈsª. Ainsi, la crÈation d'un robot ou l'ajout d'une comprÈhension linguistique aux applications est beaucoup plus rapide. Il propose un nombre impressionnant de 21mod les de domaines.

Soit dit en passant, fÈlicitations ‡ Microsoft pour avoir fait un travail remarquable dans la documentation. Si cela vous intÈresse, tout ce dont vous avez besoin pour 'tre opÈrationnel avec ses services est disponible et facile d'acc s, notamment une explication des intentions, des entitÈs et des ÈnoncÈs.

DÈcouvrez la comprÈhension des langues en action

VÈrification Orthographique : Bing Spell Check API

La plupart des services d'IA Microsoft Azure ont des noms qui correspondent ‡ leur finalitÈ. Ce service ne dÈroge pas ‡ cette r gle. Bing Spell Check s'assure que les mots dans les documents et dans les recherches Web sont correctement orthographiÈs. Vous donnez au service une cha ne de texte et il rÈpond avec un message JSON en soulignant les mots mal orthographiÈs ainsi que le score de confiance pour ce rÈsultat.

Analyse de texte : Text Analytics API

Je parlais justement de la mani re ingÈnieuse dont Microsoft nommait ses services. Ce service peut 'tre une exception ‡ la r gle :).

Text Analytics API effectue 3actions: l'analyse des sentiments, l'extraction de phrases clÈs et la dÈtection de la langue, pas exactement ce ‡ quoi je m'attendais d'un service appelÈ ´Text Analyticsª. L'API renvoie un score d'analyse des sentiments entre 0 et 1, o˘ 1 est le plus positif.

En plus de renvoyer la langue dÈtectÈe, l'API renvoie un score de confiance entre 0 et 1, o˘ 1 est (vous l'avez devinÈ) 100% s˚r. ¿ ce jour, Microsoft ne prend que quelques langues en charge pour l'extraction de phrases clÈs. Mais il prend en charge une liste impressionnante dans la prÈsentation. Consultezla liste compl te ici.

API de traduction de texte : Translator Text API

Translator Text API appartient ‡ la m'me catÈgorie que Translator Speech API - Microsoft Translator. La seule diffÈrence qui existe, comme vous pouvez le deviner, c'est que ce service ne traite que du texte. Il dÈtecte la langue du texte et effectue ensuite la traduction demandÈe. Microsoft utilise dÈsormais Neural Machine Translation (NMT) ou traduction automatique neuronale pour ce service, le plaÁant ainsi au m'me niveau qu'AWS et que Google d'un point de vue technique.

Services d'IA Microsoft Azure - Connaissance

QnA Maker (prÈsentation)

Il s'agit du service FAQ d'Azure. QnA Maker rend agrÈablement facile la crÈation d'une FAQ. Il vous suffit de le pointer vers une source Q&A en ligne ou de tÈlÈcharger un document (.tsv, .pdf, .doc, .docx, et .xlsx pris en charge) qui est bien formatÈ avec une table des mati res, de nommer votre service, et le tour est jouÈ. Azure s'occupe du reste.

Ce service est destinÈ ‡ 'tre couplÈ avec le Bot Service d'Azure pour alimenter les rÈponses qu'un robot peut avoir ‡ fournir.

Custom Decision Service (prÈsentation)

SuggÈrer du contenu basÈ sur les articles lus par un utilisateur est devenu de plus en plus courant sur diffÈrents sites Web et fournisseurs de contenu. Cette fonctionnalitÈ est maintenant mise ‡ la disposition de simples dÈveloppeurs comme moi, via un simple appel d'API, gr‚ce au Custom Decision Service.

Le Custom Decision Service ou service dÈcision personnalisÈe s'efforce de comprendre le contexte des informations dont vous avez besoin. Il apprend au fur et ‡ mesure pour fournir de meilleures suggestions de contenus. Il va Ègalement un peu plus loin en expÈrimentant de nouvelles options pour pouvoir s'adapter aux tendances Èmergentes.

Project Knowledge Exploration

DestinÈ aux universitaires, ce service se trouve dans ce que Microsoft appelle les Cognitive Services Labs. Il prend une demande en langage naturel et la transforme en une expression de requ'te structurÈe pour rechercher des revues universitaires. Il poss de Ègalement d'autres capacitÈs qui aident les chercheurs, notamment le remplissage automatique.

Project Academic Knowledge

Encore une fois, ce service fait partie des Cognitive Services Labs. Il prend une demande en langage naturel, puis dÈtermine son intention universitaire et rÈcup re les informations demandÈes ‡ l'aide de Microsoft Academic Graph (MAG). (Vous en saurez plus dans quelques instants sur MAG.)

Ce service calcule Ègalement la similaritÈ entre 2documents, non seulement en termes de mots, mais aussi d'intentions.

Vous vous demandez peut-'tre ce qu'est le MAG? Microsoft est probablement le mieux placÈ pour rÈpondre ‡ cette question:

´Le Microsoft Academic Graph est un graphique hÈtÈrog ne contenant des dossiers de publications scientifiques, des relations de citations entre ces publications, ainsi que des auteurs, des institutions, des revues, des confÈrences et des domaines d'Ètudes. Ce graphique est utilisÈ pour alimenter des expÈriences dans Bing, Cortana, Word et dans Microsoft Academic. Le graphique est actuellement mis ‡ jour toutes les semaines.ª

Project Entity Linking

Ce service est idÈal pour fournir un contexte aux informations fournies. Il identifie des ´entitÈsª telles que la Terre, les …tats-Unis ou l'UniversitÈ de la Floride (personnellement, c'est mon prÈfÈrÈ :) ). Ensuite, il ajoute automatiquement un lien vers l'entrÈe de chaque entitÈ dans Wikipedia, fournissant ainsi automatiquement le contexte.

Services d'IA Microsoft Azure - Recherche

Bing Autosuggest API

Ce service est simple. Il vous permet de fournir des fonctionnalitÈs intelligentes de frappe anticipÈe dans votre application. Je ne peux pas faire plus simple pour le dÈcrire!

API suggestion automatique : Bing Autosuggest API

Un autre service relativement simple. Cet API renvoie:

  • Une photo pour l'article des actualitÈs.
  • Une URL vers l'article.
  • Des informations sur le fournisseur d'actualitÈs.

API Recherche sur le Web Bing

API Recherche sur le Web Bing

Un autre service simple. Ce service effectue une recherche sur le Web et renvoie le nombre d'articles disponibles correspondant au sujet ainsi qu'un sous-ensemble de ces articles par titre, lien et derni re date d'analyse. Vous pouvez dÈfinir un certain nombre de param tres, notamment si la recherche doit 'tre ´sÈcurisÈeª et quel contenu vous voulez recevoir (c.-‡-d. actualitÈs, photos, etc.)

Bing Entity Search API

Conforme aux autres services Bing, il s'agit d'un autre service spÈcialisÈ. Il renvoie des liens et des informations sur des entitÈs (entreprises, lieux, personnes, livres, etc.) plutÙt que des liens vers des sites Web qui mentionnent ces entitÈs.

L'API recherche d'images : Bing Image Search API

Bing Image Search API renvoie des vignettes, des URL, des mÈtadonnÈes et bien plus encore apr s la soumission d'une requ'te.

Bing Video Search API

Ce service renvoie le nom et un lien vers des vidÈos correspondant aux termes de la recherche. L'API Recherche de VidÈos Bing permet Ègalement de voir des aperÁus vidÈo dans les rÈsultats, en plus de renvoyer une grande quantitÈ de mÈtadonnÈes, notamment une image, l'attribution de mÈdias, le lieu de tournage de la vidÈo, l'Èditeur, etc.

Bing Custom Search API

Ce service met la puissance de la recherche Bing entre les mains des dÈveloppeurs. Il existe 2faÁons principales d'utiliser la recherche personnalisÈe Bing: la recherche de sites et la recherche verticale personnalisÈe. Les deux faÁons se trouvent dans l'interface utilisateur graphique de la recherche personnalisÈe.

Dans cette interface utilisateur graphique, vous pouvez ajouter une liste de sites Web que vous souhaitez que Bing recherche et seuls les rÈsultats de ces sites Web seront renvoyÈs. Vous pouvez Ègalement ´Èpinglerª un site Web particulier. Cela garantit que les rÈsultats correspondant au terme recherchÈ depuis votre site ´ÈpinglȪ sont renvoyÈs en premier, les rÈponses d'autres sites s'affichant ensuite.

Pour une recherche de sites, vous saisissez simplement l'adresse de vos sites Web et la recherche personnalisÈe Bing s'occupe du reste! Pour la recherche verticale personnalisÈe, vous ajoutez simplement les sites Web particuliers que vous souhaitez analyser et, encore une fois, la recherche personnalisÈe Bing s'occupe du reste!Microsoft propose m'me une interface utilisateur hÈbergÈe que vous pouvez utiliser une fois que vous avez crÈÈ votre recherche. Vous pouvez un peu personnaliser l'apparence pour mieux correspondre ‡ votre site Web. Pour en savoir plus, regardez cette super vidÈo de dÈmonstration rÈalisÈe par Mahesh Balachandran

https://www.youtube.com/watch?v=d5skeIApBo4

Services d'IA Microsoft Azure - Apprentissage automatique

Poste de Travail : Workbench

Workbench est l'outil idÈal pour le scientifique de donnÈes. Il s'agit d'une application de bureau qui permet aux scientifiques de donnÈes de prÈparer des donnÈes, de crÈer des mod les d'IA et d'examiner les rÈsultats. Cette application utile fournit un certain nombre de vues utiles des donnÈes. Elle est livrÈe avec Jupyter Notebooks, un indispensable pour les scientifiques de donnÈes.

Workbench prend Ègalement en charge ce que Azure appelle ´les transformations par exempleª. Cette fonctionnalitÈ puissante vous permet d'examiner un tableau contenant vos donnÈes et, dans une colonne ‡ cÙtÈ de vos donnÈes, de taper la faÁon dont vous souhaitez que chaque ÈlÈment de donnÈes apparaisse. Il est plus facile de la comprendre si vous la voyez en action. Alors, regardez cette vidÈo. J'en suis vraiment fan!https://www.youtube.com/watch?v=9KG0Sc2B2KI

Pour une prÈsentation rapide de Workbench, regardez cette courte vidÈo:

https://www.youtube.com/watch?v=tW1JV6bHXFA

Azure Machine Learning Experimentation Service

Si vous associez ce service ‡ Workbench et au service de gestion des mod les (dÈtaillÈ dans la section ci-dessous), vous obtenez un service semblable ‡ SageMaker d'AWS. Si vous ne connaissez pas ce produit, veuillez consulter mon article sur les capacitÈs d'intelligence artificielle d'AWS pour disposer d'un rÈsumÈ rapide de ses fonctionnalitÈs.

Le service d'expÈrimentation est compatible avec Workbench. De plus, il permet la gestion des projets, l'intÈgration du syst me Git, le contrÙle des acc s, l'itinÈrance et le partage de donnÈes. Il vous permet d'exÈcuter vos mod les systÈmatiquement dans le m'me environnement, seuls les algorithmes changent.

Ensuite, il enregistre l'historique d'exÈcution et vous donne la possibilitÈ de voir le mod le qui convient le mieux ‡ vos besoins. En ce qui concerne la mise en place d'expÈriences, il prend en charge la machine native, le Docker local, le Docker sur VM et un cluster Spark mis ‡ l'Èchelle (plus d'informations sur Spark ‡ venir).

Azure Machine Learning Model Management Service

Ce service vous permet de dÈployer vos mod les dans une grande variÈtÈ d'environnements. Il nÈcessite d'utiliser les commandes de l'interface de ligne de commande, qui conteneurisent vos mod les dans des images Docker. Une fois cette Ètape terminÈe, vous dÈployez vos mod les sur des machines locales, des serveurs sur site, le cloud et des appareils pÈriphÈriques IoT. Ce service offre beaucoup de possibilitÈs. Pour en apprendre davantage, cliquez ici.

Microsoft Machine Learning Library for Apache Spark (MMLSpark)

Cette biblioth que inclut une intÈgration des pipelines SparkML avec le Microsoft Cognitive Toolkit et OpenCV. Si vous utilisez Workbench et que vous exÈcutez vos expÈriences sur Docker, vous n'avez plus rien ‡ faire. Workbench utilise automatiquement MMLSpark.

Data Science Virtual Machines (DSVM)

Tout comme AWS poss de des AMI d'apprentissage profond prÈcrÈÈs avec des composants pour les t‚ches d'IA et d'apprentissage automatique, les services d'IA Microsoft Azure incluent des machines virtuelles prÈcrÈÈes pr'tes pour les t‚ches d'IA. Azure offre ‡ la fois des variantes Linux et Windows avec un nombre impressionnant d'applications dÈj‡ installÈes, telles que les Jupyter Notebooks, les bases de donnÈes (SQL et PostgreSQL), R, Python, etc. Vous pouvez consulter la liste compl te sur son site Web ici.

Mieux encore, le DSVM d'Azure propose un certain nombre d'exemples et de Jupyter Notebooks prÈcrÈÈs pour vous rendre rapidement opÈrationnel!

Data Science Virtual Machines (DSVM)

Azure Batch

Ce service puissant automatise l'exÈcution d'algorithmes d'apprentissage automatique sur plusieurs ensembles de donnÈes. Il lance les ressources nÈcessaires pour exÈcuter les calculs en parall le, puis rÈduit immÈdiatement les ressources une fois la t‚che terminÈe.

Il s'agit du service idÈal pour tout programmeur cherchant ‡ exÈcuter des algorithmes d'apprentissage automatique sur une grande quantitÈ de donnÈes!

___________________________________________________________________________________

Nous avons survolÈ les services d'IA de MicrosoftAzure.

Si vous voulez obtenir des conseils pratiques et des stratÈgies pour tirer le meilleur parti de l'IA, dÈcouvrez notre webinaire ‡ la demande!

Chris Dunn