Trois offres cloud pour automatiser l'IA

Trois offres cloud pour automatiser l'IA Pour démocratiser l'intelligence artificielle, les géants du cloud misent sur le machine learning automation. Tour d'horizon des outils proposés dans ce domaine par Google, IBM et Microsoft.

Définitivement sorties des laboratoires de recherche, les technologies de machine et deep learning restent complexes à appréhender. Comme ils l'ont fait dans bien d'autres domaines, les fournisseurs de cloud public se sont mis en quête de les démocratiser. Depuis un peu plus d'un an, Amazon Web Services (AWS), Google, IBM ou Microsoft proposent des plateformes "as a service" conçues pour créer des modèles algorithmiques avec un minimum d'interventions humaines. Une manière de pallier la pénurie de compétences en data science en ouvrant ces IA à un public plus large. Alors qu'un data scientist s'attellera à dénicher l'algorithme le plus adéquat à un problème donné, parmi la pléthore d'algorithmes existants, ces solutions d'"automatisation" du machine learning suggéreront l'algorithme qu'elles considèrent comme le plus pertinent à partir d'un jeu de données soumis en entrée. 

Comparatif de trois services cloud d’auto ML
  Google Cloud AutoML Microsoft Azure Automated ML IBM Watson OpenScale + NeuNetS
Sortie Janvier 2018 (version bêta) Septembre 2018 (version finale) Octobre 2018 (version bêta pour NeuNetS)
Fonctions Google joue de la carte de la simplicité et de l'efficacité en cernant les cas d'usage arrivés à maturité. Fonctionnalité du service Azure Machine Learning, Azure Automated ML se présente comme un généraliste du machine learning automatisé Watson OpenScale rend le fonctionnement des algorithmes transparents et corrige automatiquement les biais. Il comprend un moteur de synthèse de réseau neuronal.
Public Développeurs peu expérimentés dans le domaine de l'IA Data analysts, data scientist Data scientists orientés business
Cas d'usage Reconnaissance d'images, classification de textes, traduction automatique, analyse des séquences vidéo… Cas d'usage multiples. Une douzaine d'algorithmes proposés pour la classification, la régression ou la prévision Traitement d'images ou du langage, finance ou prévisions météorologiques
Clients Disney, ZSL, URBN TAL, Asos, Wipro, Cognizant NC
Tarification Vision : une heure d'entraînement gratuite par mois puis 20 $ par heure. Pour les prédictions de classification : les mille premières images gratuites puis 3 dollars par lot de mille images. Natural Language : 3 $ par heure d'entraînement, classification gratuite pour 30 000 enregistrements texte puis 5 $ par bloc de mille contenus. Traduction : 76 $ par heure d'entraînement, traduction gratuite jusqu'à 500 000 caractères puis 80 $ par million de caractères La fonctionnalité Azure Automated ML est comprise dans le service Azure Machine Learning. Soit de 0,034 € à 0,27 € par heure au-delà du prix des machines virtuelles pour une infrastructure standard (tarif affiché pour la zone Europe de l'Ouest). Gratuit jusqu'à 5 modèles déployés. La surveillance de modèles supplémentaires est facturée 3 250 $ pour 6 modèles. NeuNetS est gratuit.

Tech lead data science IA au sein de l'ESN Keyrus, Khalil El Mahrsi tempère : "ce type de solution s'adresse aux entreprises déjà matures dans l'exploitation de leurs données. Dans un projet de data science, on démarre rarement par le machine learning. En phase de cadrage, il s'agit tout d'abord de se poser la question de l'opportunité de recourir au machine learning plutôt qu'à une méthode statistique classique. Si c'est le cas, il faut ensuite s'assurer d'avoir des données qualifiées, propres et en volume suffisant."

Google Cloud AutoML pour des cas ciblés

Google a tiré le premier sur ce marché du machine learning as a service. Lancée en janvier 2018, son offre Cloud AutoML est toujours en version bêta. Elle capitalise sur plus de 10 ans d'expertise de Google dans les domaines notamment de l'apprentissage par transfert avancé et des architectures de réseau neuronal (neural architecture search). S'adressant aux "développeurs peu expérimentés" dans le domaine, Cloud AutoML dispose d'une interface graphique pour entraîner, évaluer et déployer un modèle personnalisé à partir d'un jeu de données via glisser-déposer. Google propose aussi de faire labelliser les données par ses propres équipes, moyennant finance.

Cloud AutoML se décline en plusieurs produits : Vision pour la reconnaissance d'images, avec sa déclinaison Vision Edge dédiée aux terminaux en edge computing, Natural Language pour la classification de textes, Translation pour la traduction automatique, Video pour l'analyse des séquences vidéo, et Tables pour la création de modèles d'apprentissage automatique à partir de données structurées.

"En deux heures, j'ai pu tagger 2 000 photos"

Chez Keyrus, Khalil El Mahrsi a pu tester Vision. "En deux heures, j'ai pu tagger 2 000 photos. Les performances sont bonnes et le temps de traitement correct. Google Cloud AutoML allie simplicité d'utilisation et efficacité." Et l'expert de pondérer : "Pour scorer des centaines de photos, l'outil est parfait. En revanche, si on sort de ce type de cas d'usage précis, la solution n'offre plus les mêmes résultats."

La tarification comprend des coûts liés à l'entraînement du modèle et d'autres à la classification des images ou des textes en plus du prix des ressources Google Cloud Platform consommées, telles les instances Google App Engine. Pour Vision, la première heure d'entraînement est gratuite. "Une heure est généralement souvent suffisante pour avoir une idée de la pertinence de la solution par rapport au problème à traiter", estime Khalil El Mahrsi. Lors de sa dernière conférence annuelle, Next'19, début avril, Google a complété l'édifice en lançant Cloud AI Platform (en bêta), une plateforme collaborative taillée pour coordonner les différents acteurs intervenant autour d'un projet de machine learning.

Azure Automated ML, le "Netflix" du ML

Développé par la division Microsoft Research, Azure Automated ML a été présenté fin septembre 2018. Il s'agit d'un sous-ensemble du service Azure Machine Learning. A l'instar des plateformes de streaming qui recommandent des films à leurs abonnés, Automated ML suggère des "pipelines" d'apprentissage machine.

Azure s'appuie sur un modèle probabiliste, "formé en effectuant des centaines de millions d'expériences", pour déterminer le meilleur pipeline pour chaque cas d'usage. Le provider précise qu'il ne consulte par les données de l'utilisateur mais seulement les résultats de chaque pipeline évalué. Automated ML propose une douzaine de modèles de machine learning de classification, de régression et de prévision parmi les plus courants (Random Forest, arbre de décision, réseau bayésien...).

"L'interface graphique de l'offre de Microsoft est plus évoluée que celle de Google"

Les data scientists peuvent utiliser Automated ML via un SDK Python et Jupyter Azure Machine Learning. L'entraînement peut s'effectuer en local sur un ordinateur ou bien sur le cloud Azure. Bien sûr, Microsoft créer des synergies avec les briques de sa suite Office. La firme de Redmond travaille à rendre accessible Automated ML depuis son application de data visualisation PowerBI.

Pour Bouzid Ait Amir, team lead data science IA chez Keyrus, Azure Automated ML se positionne en amont de Google Cloud AutoML. "L'interface graphique est plus évoluée que celle de Google. On peut déposer des briques mais il est nécessaire ensuite de saisir quelques lignes de code en utilisant le notebook Jupyter." Selon lui, la solution s'adresse aux data analysts voire aux data scientists qui ne veulent pas s'ennuyer à faire du développement mais plutôt réaliser une preuve de concept rapidement.

IBM rend les algorithmes plus transparents

Lancée en 2018, Watson OpenScale se positionne moins dans la génération automatisée de modèles que dans le monitoring d'algorithmes. L'objectif de Big Blue est de rendre plus transparent le fonctionnement de ces derniers, d'enlever le côté "boîte noire", en répondant à quelques questions fondamentales. Quelles sont les variables qui ont contribué à cette décision ? Lesquelles ont le plus de poids ? (etc.).

Watson OpenScale formule dans des termes accessibles la manière dont l'IA prend des décisions ou émet des recommandations. Elle s'assure qu'elle se conforme aux réglementations de type RGPD. La solution se targue aussi de corriger automatiquement les biais et de vérifier la stabilité du modèle dans le temps en regardant comment les paramètres évoluent et si des dérives interviennent. Le service prend en charge les modèles déployés sur IBM Watson mais également sur des plateformes tierces comme Amazon SageMaker ou Azure Machine Learning. Il supporte aussi les frameworks open source Tensorflow, Keras, Scikit-Learn, SparkML et PMML. Pour Bouzid Ait Amir, Watson OpenScale s'adresse aux data scientists orientés métier pour une exploitation business des modèles en évitant notamment toute saisie de code.

Un moteur de synthèse de réseau neuronal 

"Le positionnement d'IBM est intéressant", estime Bouzid Ait Amir. "Avec ces connecteurs, OpenScale permet d'importer des modèles et de les centraliser en un point unique pour les piloter au quotidien. Rendre transparent le fonctionnement des algorithmes est une belle promesse mais elle peut être prise à défaut. La solution peut s'appliquer à des systèmes de régression avec un chaînage de décisions applicable. En revanche sur des modèles très complexes, elle montrera ses limites."

La partie automatisation de l'IA est représentée par NeuNetS (Neural Network Synthesis Engine), un moteur de synthèse de réseau neuronal intégré dans OpenScale. En version bêta et gratuit, NeuNetS est un développement fait maison. "L'outil prend les données d'apprentissage, images ou textes, que vous lui fournissez, et synthétise un modèle entraîné qui peut ensuite être téléchargé et déployé dans Watson Machine Learning, localement ou au sein d'une plateforme tierce", résume Khalil El Mahrsi.

Pour générer des réseaux de neurones, NeuNetS procède en deux étapes. Dans la première, le moteur détermine l'échafaudage du réseau : le nombre de couches, la façon dont elles sont reliées, le type de contournements et de retours, etc. Dans la seconde étape, NeuNetS plonge plus profondément dans chaque couche et optimise la connexion des neurones. Ce qui permettrait de concevoir des réseaux de neurones en quelques heures contre des semaines voire des mois avec une approche traditionnelle.