Pour familiariser les développeurs avec ses technologies d’intelligence artificielle, AWS a organisé cette semaine, pour la 1ère fois en France sur ce sujet, un Dev Day sur ses services cognitifs et ses outils d’apprentissage machine et de deep learning. « La problématique est importante pour les clients en ce moment », confirme Julien Simon, évangéliste d’AWS sur ces technologies. Cette journée de sessions gratuites s’est tenue hier à Paris dans le cadre de Station F, le campus de start-ups de l’ancienne Halle Freyssinet. Depuis le début de l’année, Amazon Web Services a déjà organisé plusieurs autres Dev Days en Europe, sur ce thème mais aussi sur le serverless et les containers.

En matière d’intelligence artificielle, AWS propose d'abord des services applicatifs de haut niveau « en boîte noire » qui permettent aux entreprises de s’abstraire de la complexité du machine learning. « Faire soi-même une synthèse vocale multilingue de qualité, c’est très compliqué alors que les cas d’usage sont très répandus chez les clients », indique Julien Simon. Le service de text-to-speech Polly dispose ainsi de « plus d'une cinquantaine de voix pour générer des messages vocaux ». Une vingtaine de langues sont disponibles, avec des voix d'hommes et de femmes, et des versions accentuées (français canadien, anglais britannique, américain, australien ou indien, par exemple). Aux Etats-Unis, des établissements scolaires l'utilisent par exemple pour signaler automatiquement aux parents par téléphone les absences de leurs enfants à l'école. Parmi les autres services ML de haut niveau disponibles sur AWS, on trouve également Translate (traduction), Transcribe (speech to text), Comprehend (traitement en langage naturel), Lex (service de chatbot) ou Recognition (reconnaissance d’images).

Les outils d'apprentissage machine d'AWS se répartissent en trois niveaux : les services de haut niveau, la plateforme SageMaker et au niveau le plus bas, les frameworks, interfaces et AMI de deep learning. (Crédit photo : MG)

Réduire la complexité de la mise en production

En dehors de cette couche de services applicatifs, le numéro 1 du cloud public a lancé fin 2017 un service de plateforme, SageMaker. Entièrement managé, celui-ci réunit une collection de fonctionnalités pour créer des modèles de machine learning, les entraîner et les déployer à n’importe quelle échelle. Avec SageMaker, AWS cherche à aplanir  les difficultés qui peuvent se présenter entre les différentes étapes du cycle de production des modèles de ML, depuis la préparation des données jusqu’au déploiement. La plateforme comprend des notebooks Jupyter hébergés et les algorithmes d’apprentissage machine les plus courants, préinstallés et optimisés. Quant au déploiement, il se fait sur un appel d’API géré avec de l’autoscaling sur l’infrastructure de production. SageMaker inclut aussi des fonctionnalités de test A/B pour tester le modèle. « Quelle que soit votre aisance avec ces technologies, l’objectif est de vous permettre de vous concentrer sur le machine learning et pas sur la plomberie », a indiqué Julien Simon aux développeurs réunis hier à Station F.

Cette problématique qui freine les mises en production, il l’a lui-même vécue de près pendant 10 ans, alors qu’il était CTO ou VP Engineering dans des start-ups parisiennes de renom. Il connaît bien les écueils associés au déploiement de modèles ML. D’un côté, l’ingénieur travaille dans sa sandbox, il y développe de façon très maîtrisée un modèle qui fonctionne parfaitement. Mais dès lors qu’on extrait celui-ci de son contexte, pour le transmettre à l’équipe opérationnelle qui doit le déployer, surgissent alors d’innombrables problèmes liées en grande partie aux différentes versions d’outils et bases de données utilisés par les uns et les autres. « Les librairies de ML bougent vite, les version de Python changent tout le temps, etc. Vous vous retrouvez englués dans des problèmes qui n’ont rien à voir avec le machine learning », nous a exposé Julien Simon lors d’un entretien sur le Dev Day. Sur cette question, SageMaker présente l’intérêt de recourir à des containers. « Vous prenez le container utilisé par le développeur et vous le mettez en production sur l’instance AWS choisie. C’est entièrement managé », pointe Julien Simon. « On peut commencer avec les petites instances, faire les tests et si c’est trop lent, on prend l’instance supérieure, cela permet d’avoir la juste taille ».

Blue DME : des assistants virtuels pour le secteur automobile

Lors de sa présentation, Blue DME, start-up hébergée dans l'accélérateur Gate 31, a rappelé le rôle du dataops chargé de faciliter le lien entre les différents métiers de la data, notamment sur les problématiques de versioning des modèles. Pour traiter ces problèmes, la société a défini son cycle de vie du modèle, a exposé Mohamed Ben Khemis, data scientist senior (au centre). Crédit : MG

Sur cette journée Dev Day consacrée au machine learning, AWS a convié Blue DME, un utilisateur français de SageMaker. Cette start-up installée à Neuilly-sur-Seine est spécialisée dans les solutions big data pour le secteur de l’automobile et l’assurance. Créée en 2015, elle développe des modèles d’apprentissage machine pour améliorer la relation client sur une variété de cas d’usage. Le cycle de vie d’une automobile est en effet impacté dans son ensemble par les données et l’analyse prédictive, depuis la conception du véhicule jusqu’à sa revente d’occasion. Dans ce contexte, le cœur de métier de Blue DME est axé sur les assistants virtuels et la performance commerciale. « Nous avons une vingtaine de modèles en production », a indiqué hier matin Mohamed Ben Khemis, data scientist senior chez Blue DME. Au début, la start-up concevait des modèles d’apprentissage machine sur mesure pour ses clients, avec toute la complexité inhérente à l’exercice. « Il fallait trouver un moyen de rationaliser notre mise en production de modèles », a relaté le data scientist.

Pour illustrer les problèmes de mise en production au quotidien, Tommy Nacass, ingénieur data senior chez Blue DME, a présenté un exemple d'échange typique entre un data scientist et un ingénieur data. (agrandir l'image)

Blue DME a commencé par développer sa propre solution de déploiement de modèles en interne, Booster, avant d’adopter le service managé d’AWS, a détaillé ensuite Tommy Nacass, ingénieur data senior. La start-up francilienne conjugue maintenant l’utilisation des deux solutions, la sienne et celle d’AWS, en recourant au service managé d’Amazon pour certaines fonctionnalités et conservant Booster pour d’autres. « SageMaker permet de garder le focus sur la création de valeur », a expliqué Mohamed Ben Khemis. Le service affranchit les équipes de la start-up d’un certain nombre de tâches qu’elles effectuaient elles-mêmes auparavant. Parmi les gains obtenus, la mise en production des modèles est passée de quelques semaines à quelques jours. La gestion de la sécurité intégrée par défaut dans le service managé d’AWS est l’un des éléments appréciés par Blue DME. En revanche, l’équipe rappelle que la connexion aux données ne peut se faire que sur des données stockées sur S3.

DigitalGlobe, 100 Po d'images, a réduit son stockage S3 de 50%

Dans les entreprises et chez les fournisseurs de technologie, le machine learning n’est pas seulement utilisé pour créer de la valeur pour les clients. On l’exploite aussi pour des optimisations internes. Julien Simon a présenté hier l’exemple de DigitalGlobe, un opérateur de satellites d’observation de la Terre. Ce spécialiste de l’imagerie spatiale a accumulé 100 pétaoctets d’images. « Je vous laisse imaginer combien coûtent 100 Po dans S3 », glisse l’évangéliste en ML. « Mais toutes les photos ne se valent pas. A-t-on besoin de tout laisser en ligne en temps réel dans S3 ? ». Une partie d’entre elles peut être archivée dans Glacier avec une récupération en 3 ou 4 heures. Le Lab ML d’AWS a travaillé avec DigitalGlobe sur la construction d’un modèle prédictif permettant de choisir les images à archiver. « Ils arrivent à réduire leur stockage de 50%. C’est sans doute le projet de machine learning le plus rentable de l’histoire », évalue Julien Simon.

L’offre IA disponible chez AWS comporte donc une couche de services applicatifs de haut niveau et une couche plateforme avec SageMaker. Elles reposent sur la couche infrastructure qui apporte frameworks, interfaces et différentes catégories de machines virtuelles pour mettre les modèles en production. « Deux grandes familles d’instances sont très pertinentes pour le machine learning, C4 et C5 », a indiqué hier Julien Simon. La première apporte 36 vCPU Intel Haswell, 4 Gbps vers EBS et 60 GiB de mémoire. La deuxième, lancée récemment offre une performance d’entrées/sorties « phénoménale », a insisté l’évangéliste. Une instance C5 fournit 72 vCPU avec des puces Intel Skylake, 12 Gpbs vers EBS et 144 GiB de mémoire. « Avec son jeu d’instruction AVX 512 pour manipuler les données 512 bits par 512 bits, c’est la famille que je recommande aujourd’hui pour faire de l’apprentissage machine ». Ce sont vraiment des instances faites pour le calcul. L’évangéliste recommande de les utiliser pour faire de la prédiction et de l’inférence, en soulignant que l’équation économique est plus intéressante avec des instances de type C5 qu’avec des instances GPU. « Elles offrent un meilleur ratio prix/performance ».

Instances EC2 P3, jusqu'à 1 Pflop

Ensuite, dès que l’on passe sur une grande échelle, AWS propose ses instances EC2 P3 qui apportent de 1 à 8 GPU Nvidia Tesla V100 de dernière génération, jusqu’à 1 pétaflop de performance. « Vous pouvez maintenant en disposer à la demande sur AWS, à un prix compétitif, à mon avis ». Pour faire gagner du temps, le fournisseur cloud a également créé des AMI de deep learning qui fournissent des environnements préconfigurés pour bâtir plus rapidement des applications basées sur l’apprentissage profond.

Après la mise en place de la caméra Deeplens, il faut moins de 10 minutes pour obtenir les premières prédictions à partir de la détection d'objets, a indiqué hier Julien Simon, évangéliste ML d'AWS. (Crédit : MG)

Enfin, en conclusion, Julien Simon a évoqué la caméra Deeplens, « un gadget pour les développeurs », qui embarque du compute optimisé pour le deep learning et permet de faire de la détection d’objets et de la prédiction localement sur la caméra. Deeplens s’intègre avec SageMaker et Lambda (la technologie serverless d’Amazon). Elle n’est pas encore disponible en Europe.