10 plates-formes d'IA pour créer votre application moderne
Maintenant que la menace des Terminators semble s'éloigner, il est temps d'embrasser l'Intelligence Artificielle et d'en tirer le meilleur parti !
Pendant une longue période, le domaine de l'Intelligence Artificielle, et plus particulièrement le Machine Learning, a été enveloppé d'une aura de mystère. Les médias ont multiplié les articles alarmistes, prophétisant l'avènement de machines surpuissantes, autonomes et maléfiques, semant la panique (y compris chez moi).
Mais où en sommes-nous aujourd'hui, après toute cette agitation ? Nous nous retrouvons avec une technologie d'IA loin d'être parfaite, des erreurs embarrassantes et un robot limité et défectueux, promu citoyen presque de force. Et comble de tout, nous n'avons toujours pas d'algorithme de traduction linguistique fiable.
Si quelqu'un persiste à annoncer l'apocalypse imminente, voici ma réponse :
Alors, l'IA, le ML et tous ces termes tendance, qu'est-ce que c'est, si ce n'est pas la fin de l'humanité ?
Eh bien, il s'agit de nouvelles méthodes pour programmer des ordinateurs afin de résoudre des problèmes de classification et de prédiction. Et devinez quoi, il existe aujourd'hui de nombreux services d'IA que vous pouvez utiliser immédiatement dans vos applications professionnelles pour en tirer d'énormes bénéfices.
Que peuvent apporter les plateformes d'IA aux entreprises d'aujourd'hui ?
Excellente question !
L'intelligence artificielle est si polyvalente dans son application (du moins en théorie) qu'il serait impossible de préciser son objectif unique. C'est comme demander à quoi sert un tableur. Il a été initialement conçu pour la comptabilité, mais aujourd'hui, il dépasse largement ce rôle. Les gens l'utilisent comme outil de gestion de projet, liste de tâches, base de données, etc.
Il en va de même pour l'IA.
En résumé, l'IA est utile pour les tâches imprécises qui reposent sur l'apprentissage par l'expérience. C'est ce que font également les humains, mais l'IA possède un avantage : elle peut traiter des masses de données en un temps record et parvenir à des conclusions bien plus rapidement. Voici quelques exemples d'applications typiques de l'IA :
- Détection de visages dans des photos, vidéos, etc.
- Classification et étiquetage d'images, par exemple pour le contrôle parental.
- Conversion de la parole en texte.
- Détection d'objets dans des contenus multimédias (voiture, personne, etc.).
- Prévision des fluctuations boursières.
- Détection du financement du terrorisme (parmi des millions de transactions quotidiennes).
- Systèmes de recommandations (achats, musique, amis, etc.).
- Résolution de captchas.
- Filtrage des spams.
- Détection d'intrusions réseau.
Je pourrais continuer encore longtemps, mais je pense que vous avez compris. Ce sont tous des exemples de problèmes que les humains ont du mal à résoudre avec les méthodes informatiques traditionnelles. Ils sont cependant cruciaux, car ils répondent à des besoins importants dans le monde des affaires et dans la vie quotidienne.
Passons maintenant à la liste des meilleures plateformes d'IA disponibles et découvrons leurs atouts.
Services d'IA d'Amazon
À l'instar de la domination d'Amazon dans le commerce, AWS s'impose comme une plateforme incontournable. Il en va de même pour les services d'IA d'Amazon, qui proposent une gamme d'outils d'IA extrêmement utiles.

Voici quelques-uns des services les plus impressionnants proposés par AWS :
Amazon Comprehend : ce service vous aide à analyser les données textuelles non structurées. Par exemple, vous pouvez extraire des conversations de support client pour évaluer le niveau de satisfaction au fil du temps, identifier les principales préoccupations des clients, les mots clés les plus utilisés, etc.
Amazon Forecast : un service sans configuration qui utilise vos données chronologiques pour générer des prévisions précises. Si vous vous interrogez sur la nature des données chronologiques, je vous invite à consulter un article que j'ai récemment écrit (cherchez une base de données nommée Timescale vers la fin de l'article).
Amazon Lex : ce service vous permet de créer des interfaces conversationnelles (textuelles ou visuelles) dans vos applications. En coulisses, les modèles d'apprentissage automatique d'Amazon analysent l'intention et effectuent la conversion parole-texte en temps réel.
Amazon Personalize : un service simple qui vous permet de créer des recommandations pour vos clients ou pour vous-même. Vous pouvez y importer des données de commerce électronique ou d'autres types, et profiter de suggestions précises et pertinentes. Bien entendu, plus l'ensemble de données est important, plus les recommandations seront pertinentes.
Il existe de nombreux autres services d'IA d'Amazon. Je vous encourage vivement à explorer toutes ces possibilités ! 🙂
Note : Il est difficile de trouver un récapitulatif de tous ces services dans la documentation AWS. Toutefois, si vous vous rendez sur https://aws.amazon.com/machine-learning, vous les trouverez listés dans le menu déroulant sous la rubrique "Services IA".
TensorFlow
TensorFlow est une bibliothèque (et une plateforme) créée par l'équipe de Google Brain. Elle met en œuvre le sous-domaine du ML appelé réseaux neuronaux profonds. TensorFlow est en quelque sorte la vision de Google sur la façon de réaliser l'apprentissage automatique à l'aide de réseaux neuronaux, grâce à la technique de l'apprentissage en profondeur.
TensorFlow n'est évidemment pas la seule manière d'utiliser les réseaux neuronaux. Il existe de nombreuses autres bibliothèques, chacune avec ses avantages et ses inconvénients.

Essentiellement, TensorFlow met à votre disposition des capacités d'apprentissage automatique pour différents environnements de programmation. La plateforme de base est assez visuelle et s'appuie sur des graphiques et des visualisations de données pour accomplir le travail. Ainsi, même sans être un expert en programmation, il est possible d'obtenir de bons résultats avec TensorFlow.
Historiquement, l'objectif de TensorFlow était de "démocratiser" l'apprentissage automatique. Il s'agissait, à ma connaissance, de la première plateforme qui a rendu le ML simple, visuel et accessible à ce point. L'utilisation du ML a ainsi explosé et les utilisateurs ont pu créer des modèles avec une grande facilité.
L'argument de vente principal de TensorFlow est Keras, une bibliothèque qui facilite l'utilisation de réseaux neuronaux en programmation. Voici à quel point il est simple de créer un réseau simple entièrement connecté (perceptron) :
model = tf.keras.Sequential() # Adds a densely-connected layer with 64 units to the model: model.add(layers.Dense(64, activation='relu')) # Add another: model.add(layers.Dense(64, activation='relu')) # Add a softmax layer with 10 output units: model.add(layers.Dense(10, activation='softmax'))
Bien sûr, la configuration, l'apprentissage, etc. doivent également être effectués, mais ils sont tout aussi simples.
Il est difficile de critiquer TensorFlow, étant donné sa contribution au ML pour JavaScript, les appareils mobiles et même les solutions IoT. Cependant, aux yeux des puristes, elle reste une plateforme "inférieure", avec laquelle tout le monde peut s'amuser. Attendez-vous donc à une certaine résistance lorsque vous progresserez dans vos compétences et rencontrerez des esprits plus "éclairés". 🙂
Si vous êtes débutant, je vous recommande de consulter ce cours en ligne d'introduction à TensorFlow.
Autre point important : certaines critiques de TensorFlow mentionnent qu'elle ne peut pas utiliser de GPU, ce qui n'est plus le cas. Aujourd'hui, TensorFlow fonctionne non seulement avec le GPU, mais Google a développé son propre matériel spécialisé, le TPU (TensorFlow Processing Unit), disponible en tant que service cloud.
Services d'IA de Google
Tout comme Amazon, Google propose également une suite de services cloud axés sur l'IA. Je m'abstiendrai de lister tous les services, car ils sont similaires à ceux proposés par Amazon. Voici une capture d'écran des possibilités offertes aux développeurs intéressés :

Il existe principalement deux façons d'utiliser les services d'intelligence artificielle de Google. La première consiste à utiliser un modèle déjà créé par Google et à l'intégrer à vos produits. La seconde est le service AutoML, qui automatise plusieurs étapes de l'apprentissage automatique, permettant aux développeurs full stack, moins experts en ML, de créer et d'entraîner des modèles plus facilement.
H2O
Le "2" dans H2O est censé être un indice (rappelant la formule chimique de l'eau, je suppose), mais c'est fastidieux à taper. J'espère que les personnes derrière H2O ne m'en tiendront pas rigueur !
H2O est une plateforme open source d'apprentissage automatique utilisée par de grandes entreprises du Fortune 500.

L'idée principale est de rendre accessible au grand public la recherche de pointe en IA, plutôt que de la laisser entre les mains d'entreprises puissantes et influentes. Plusieurs produits sont disponibles au sein de la plateforme H2O, notamment :
- H2O : la plateforme de base pour explorer et utiliser l'apprentissage automatique.
- Sparkling Water : une intégration officielle avec Apache Spark pour les grands ensembles de données.
- H2O4GPU : une version accélérée par GPU de la plateforme H2O.
H2O propose également des solutions sur mesure pour les entreprises, notamment :
- IA sans conducteur : non, l'IA sans conducteur n'a rien à voir avec les voitures autonomes ! 🙂 Elle s'apparente davantage au service AutoML de Google, dans le sens où la plupart des étapes AI/ML sont automatisées, ce qui permet un développement plus simple et plus rapide.
- Support payant : si vous êtes une entreprise, vous ne pouvez pas vous permettre d'attendre une réponse sur GitHub. Si le temps, c'est de l'argent, H2O propose un support et des conseils payants pour les grandes entreprises.
Petuum
Petuum développe la plateforme Symphony, conçue pour vous faire oublier que l'IA est complexe. En d'autres termes, si vous en avez assez du codage et que vous ne voulez pas mémoriser d'autres bibliothèques ou formats de sortie, Symphony vous donnera l'impression d'être en vacances dans les Alpes !

Bien que la plateforme Symphony ne soit pas "ouverte", ses fonctionnalités méritent qu'on s'y attarde :
- Interface utilisateur glisser-déposer.
- Création aisée de pipelines de données interactifs.
- Des tonnes de blocs de construction standardisés et modulaires pour créer des applications d'IA sophistiquées.
- Des interfaces de programmation et d'API pour les utilisateurs qui estiment que l'approche visuelle n'est pas assez puissante.
- Optimisation automatisée avec des GPU.
- Plateforme distribuée et hautement évolutive.
- Agrégation de données multi-sources.
Il existe de nombreuses autres fonctionnalités qui vous donneront vraiment l'impression que la barrière à l'entrée a été considérablement abaissée. Hautement recommandé !
Polyaxon
Aujourd'hui, le plus grand défi dans l'apprentissage automatique et l'IA n'est pas de trouver de bonnes bibliothèques ou algorithmes, mais l'ingénierie qualifiée qui doit être appliquée pour faire face aux systèmes géants et aux charges de données élevées qui en résultent.
Même pour les ingénieurs logiciels chevronnés, cela peut être un défi de taille. Si vous partagez ce sentiment, Polyaxon vaut le détour.

Polyaxon n'est ni une bibliothèque ni un framework, mais plutôt une solution de bout en bout pour gérer tous les aspects de l'apprentissage automatique, tels que :
- Connexions et streaming de données
- Accélération matérielle
- Conteneurisation et orchestration
- Planification, stockage et sécurité
- Pipelining, optimisation, suivi, etc.
- Tableaux de bord, API, visualisations, etc.
Elle est relativement indépendante de la bibliothèque et du fournisseur, car un grand nombre de solutions populaires (open source ou propriétaires) sont prises en charge.
Bien entendu, vous devez toujours gérer le déploiement et la mise à l'échelle à un certain niveau. Si vous souhaitez aller encore plus loin, Polyaxon propose une solution PaaS qui vous permet d'utiliser leur infrastructure de manière élastique.
DataRobot
Pour faire simple, DataRobot est une solution d'apprentissage automatique conçue pour les entreprises. Elle est entièrement visuelle et conçue pour vous aider à comprendre rapidement vos données et à les exploiter à des fins professionnelles concrètes.

L'interface est intuitive et élégante, ce qui permet aux non-experts de prendre les commandes et de générer des informations utiles.

DataRobot ne propose pas une multitude de fonctionnalités. Elle se concentre plutôt sur l'analyse des données au sens traditionnel et offre des capacités solides dans les domaines suivants :
- Apprentissage automatique automatisé.
- Régression et classification.
- Séries chronologiques.
Le plus souvent, c'est tout ce dont vous avez besoin pour votre entreprise. Dans la plupart des cas, DataRobot est tout ce qu'il vous faut. 🙂
NeuralDesigner
Dans cette exploration de plateformes d'IA puissantes et faciles à utiliser, NeuralDesigner mérite une mention particulière.

Il n'y a pas grand-chose à dire sur NeuralDesigner, mais il y a beaucoup à faire ! Étant donné que les réseaux neuronaux dominent plus ou moins l'approche moderne de l'apprentissage automatique, il est judicieux d'utiliser une plateforme qui se concentre uniquement sur les réseaux neuronaux. Pas de distractions, pas de choix superflus : la qualité prime sur la quantité.
NeuralDesigner excelle à bien des égards :
- Aucune programmation requise.
- Pas de création d'interface complexe. Tout est organisé en étapes logiques, faciles à comprendre et ordonnées.
- Un ensemble d'algorithmes de pointe, spécialement conçus pour les réseaux neuronaux.
- Parallélisation CPU et accélération GPU pour des performances optimales.
Cela vaut le coup d'œil, absolument !
Prévision.io
Pervision.io est une plateforme qui gère tous les aspects de l'apprentissage automatique, du traitement des données au déploiement à grande échelle.

PredictionIO
Si vous êtes développeur, PredictionIO est une offre extrêmement utile que vous devriez examiner. PredictionIO est une plateforme d'apprentissage automatique qui peut analyser les données de votre application (web, mobile ou autre) et générer rapidement des prédictions.

Ne vous laissez pas tromper par le nom. PredictionIO ne se limite pas aux prédictions, mais couvre tout le spectre de l'apprentissage automatique. Voici quelques bonnes raisons de l'apprécier :
- Prise en charge de la classification, de la régression, des recommandations, du traitement du langage naturel (PNL), etc.
- Conçue pour gérer des charges de travail importantes dans un environnement de Big Data.
- Plusieurs modèles préfabriqués pour ceux qui sont pressés.
- Livrée avec Apache Spark, MLlib, HBase, Akka HTTP et Elasticsearch, répondant à tous les besoins possibles d'une application robuste et moderne.
- Ingestion combinée de données provenant de multiples sources, en mode batch ou en temps réel.
- Déployée comme un service web typique, facile à utiliser.
Pour la plupart des projets web, je ne vois pas comment PredictionIO pourrait ne pas être une solution idéale. N'hésitez pas à l'essayer !
Conclusion
Aujourd'hui, les frameworks et plateformes d'IA et de ML ne manquent pas. J'étais submergé par le choix lorsque j'ai commencé à faire des recherches pour cet article. J'ai donc essayé de limiter cette liste à ceux qui sont uniques ou intéressants. Si vous pensez que j'ai oublié quelque chose d'important, n'hésitez pas à me le faire savoir.
Coursera propose d'excellents cours d'apprentissage automatique, alors consultez-les si vous êtes intéressé par l'apprentissage.
Alors, quelle est la meilleure plateforme ? Malheureusement, il n'y a pas de réponse simple. L'une des raisons est que la plupart de ces services sont liés à une pile technologique ou à un écosystème particulier. L'autre raison, plus importante, est que les technologies d'IA et de ML sont devenues courantes et qu'il y a une course pour offrir le plus de fonctionnalités au prix le plus bas possible. Aucun fournisseur ne peut se permettre de ne pas proposer ce que les autres offrent, et toute nouvelle offre est copiée et proposée par les concurrents en un temps record.
Le choix dépendra donc de votre pile technologique, de vos objectifs, de votre expérience avec l'interface, de votre perception des entreprises qui les proposent, etc.
Quoi qu'il en soit, il va sans dire que l'IA est enfin disponible en tant que service. Il serait imprudent de ne pas en tirer parti. 🙂