Dot.Blog

C#, XAML, Xamarin, UWP/Android/iOS

Les Microsoft Cognitive Services

Les cognitives services de Microsoft forment un ensemble d’API dans le Cloud offrant des services “intelligents” proches de l’IA. Disponibles pour tous, gratuits pour une utilisation de base, ces services s’intègrent à merveille dans les applications mobiles en Xamarin.Forms. Nous en verrons un exemple dans le prochain article.

Les cognitives services

C’est une famille d’API dans le Cloud offrant des services que vous ne pourriez pas réaliser sur un smartphone ou d’autres machines mobiles (ou même PC) car ils demandent une grande puissance de calcul et des algorithmes complexes, notamment de Deep Learning.

Microsoft a regroupé ces API sous le nom de “Cognitives Services”.

C’est véritablement une étape incroyable vers la domination de l’IA. Un jour peut-être des archéologues du Web retrouveront cet article et en déduiront la date ou Skynet a pris le pouvoir…

Au-delà des peurs, tout à fait raisonnables – ce qui amène à être prudent avec toutes ses technologies, nous avons une responsabilité vis-à-vis des générations futures – on peut saluer ce travail énorme que Microsoft met à notre disposition. Ils pourraient le garder jalousement pour marquer la différence, mais plus intelligents ils nous l’offre pour que Skynet puisse s’infiltrer partout !

Serons-nous ces moutons décrits par les œuvres de fiction, victimes consentantes de leur propre élimination sous couvert de services rendus gratuitement ou bien des consommateurs avisés sachant tirer parti de tout cela de façon raisonnée et raisonnable sans mettre nos libertés en péril ?

C’est un sujet vraiment délicat et passionnant.

En tant que geek j’adore toutes ces technos et j’en conseille la consommation sans modération, c’est trop fun.

En tant que citoyen lucide je ne peux que vous demander d’être vigilants ! Ce n’est que le début, mais quel début ! Comme vous allez le voir Microsoft frappe fort, très fort avec une vingtaine de services qui mis ensemble (ou non) permettent déjà de créer la prochaine génération de softs : les logiciels _intelligents_.

On s’attardera donc sur ce papier d’aujourd’hui à la fois pour des raisons purement techniques, c’est un travail magnifique qui ne va cesser d’évoluer et dont il faut savoir tirer parti, et pour des raisons philosophiques voire éthiques, savoir quel avenir nous voulons pour nos enfants, où faut-il placer le curseur ? Si les cognitives services sont loin de mettre en péril l’humanité, ils représentent la première vague structurée d’une déferlante dont on ne maîtrise pas la puissance à termes.

Le post du jour vous donnera donc matière à réfléchir autant à de nouvelles possibilités pour vos apps qu’à des sujets plus citoyens pour vos longues soirées d’hiver !

Les services

Passons en revue les différents services offerts.

La Vision

Ces services rassemblent différentes API dédiées à la vision au sens général. On y trouve la Computer Vision qui retourne des informations sur une image, Content Moderator qui permet de modérer automatiquement un forum par exemple en filtrant les images obscènes ou d’autres types d’images, mais aussi du texte et des vidéos, Emotion API qui permet de reconnaître les émotions sur un visage, Face qui reconnaît les figures humaines, et Vidéo API pour obtenir des informations sur des vidéos.

image

La parole

Avec Bing Speech API il est possible de convertir du texte en paroles prononcées mais aussi l’inverse tout en comprenant le sens du texte. Avec le Custom Recognition Intelligent Service il est possible de faire des réglages fins adaptés pour toute personne dans tout contexte. Speaker Recognition permet de reconnaître la signature vocale et donc d’identifier qui parle (dans un enregistrement, dans un live meeting etc).

image

Le Langage

Les CS destinés au langage sont assez nombreux : Bing Spell Check, pour la correction des textes, Language Understanding Intelligent Service pour apprendre à vos application à reconnaître des commandes vocales particulières, Linguistic Analysis permet de parser du texte et d’obtenir une analyse de son contenu. Text Analytics est plus subtile en détectant les sentiments, les phrases clé, les sujets abordés dans un texte. Translator est un traducteur et Web Language Model utilise des modèles de langage nourrit par des données provenant de tout le Web.

image

La connaissance

La vision, la parole, le langage, même la connaissance se trouve être traitée dans cet ensemble incroyable !

Academic Knowledge étudie les relations entre des articles académiques, des journaux, des auteurs. L’Entity Linking Intelligence Service étend la connaissance de façon contextuelle sur les gens, les emplacements et les événements. Knowledge Exploration ajoute la recherche interactive sur des données structurées à l’intérieur d’une application. La Recommandation API offre un service de recommandation de produits adaptés aux clients d’une entreprise (la vôtre en général ou celle d’un de vos clients si vous êtes informaticien).

image

Chercher

Voir, écouter, comprendre, ressentir, détecter, ne reste plus qu’un puissant outil de recherche pour brasser tout ça ! Cinq services s’en occupent :

Bing Autosuggest API pour faire des suggestions intelligentes à l’utilisateur, Bing Image Search pour chercher parmi les images et leurs métadonnées, Bing News Search pour reliés intelligemment vos utilisateurs à des nouvelles qui peuvent les intéresser, Bing Vidéo Search pour jouer avec les tendances de l’instant, obtenir des métadonnées et des résultats pertinents. Et enfin Bing Web Search pour ajouter des modes de recherche sophistiqués aux Apps.

image

Plus ?

Oui, il y a plus, pas forcément aussi personnellement impactant mais tout aussi puissant. Par exemple le Bot Framework pour créer des Bots intelligents, le Computanional Network Toolkit pour les apprentis sorciers du Deep Learning, Multiworld Testing Decision Service, outil de prise de décision intelligent intégrable à vos apps, ou même PhotoDNA Cloud Service pour détecter l’utilisation d’images même manipulées…

Conclusion

imageTout cela est énorme. On dépasse de très loin les gadgets des années précédentes, le petit trombone de Office qui donnait des conseils est le grand-père des Cognitives Services. Ne fournissant que le contenu d’un fichier d’aide sous une forme amusante et plus ou moins contextualisée il restera pourtant à mon sens la première tentative de Microsoft de fournir des services logiciels proches de l’utilisateur, ludiques, essayant de deviner ce qui pourrait aider l’utilisateur.

Nous sommes très loin de notre vieil ami Clippy mais son âme est là, tapie dans l’ombre de ces nouveaux services !

Avec les Cognitives Services on peut reconnaître quelqu’un a sa voix, traduire ce qu’il dit en texte, traduire ce texte dans une autre langue, re-synthétiser un message sonore destiné à une personne ne parlant pas la même langue, comprendre les sentiments de la personne, le sens de ce qu’elle dit, le mettre en relation avec les milliards d’information du Web, lui suggérer un produit, analyser sa photo, obtenir son âge, son sexe.. Et tout cela sans que la personne n’ait volontairement acceptée de nous livrer toutes ces informations !

Nous approchons d’une singularité, celle de l’IA, au même titre qu’un trou noir est une singularité en physique. Un gouffre protégé par un horizon qui ne peut être dépassé au péril de ne jamais en revenir. Ce que nous contemplons ici c’est comme aller se mettre au raz du dernier étage d’un building et regarder en bas… Un vertige.

Les cognitives services sont certes encore un peu pataud, mais déjà les logiciels qui sauront bien les utiliser ensemble seront plus invasifs… Et si on pense à la prochaine génération de ces services on est en droit de ressentir comme un frisson.

En attendant on peut tout de même jouer avec, Dot.Blog est un blog technique, ce qui n’interdit pas de réfléchir à l’impact de notre travail, nous les informaticiens qui avons déjà décimés des métiers entiers en aidant les plus puissants et les plus riches à remplacer des salariés par nos logiciels… On ne peut pas agir dans ce monde en évacuant ses responsabilités. D’autres, dans d’autres circonstances ont fait valoir, face aux horreurs dont ils étaient les complices qu’ils ne faisaient “qu’obéir aux ordres”, “que faire leur boulot”. On sait à quoi mène cette forme de collaboration passive avec les pouvoirs totalitaires. Soyons vigilants.

Mais amusons-nous malgré tout avec cette boîte à outil intelligente que nous offre Microsoft !

(la gratuité est bien réelle mais limitées en quantité d’appels. Passé un certain point, différent selon chaque API, il faut acheter un forfait. Toutefois ce qui est offert est assez généreux et peut suffire à de petites applications).

Dans le prochain article nous verrons comment intégrer de l’OCR dans une application Xamarin.Forms.

Ce n’est pas encore Skynet, mais qu’on le veuille ou non, c’en sont les prémices…

Stay Tuned, I’ll be back !

image

blog comments powered by Disqus