DSS 8.0 : Dataiku veut s’ouvrir aux métiers en simplifiant la vie des data scientists
Dataiku a lancé la version 8.0 de sa plateforme Data Science Studio (DSS). Celle-ci introduit de nouvelles fonctionnalités afin de simplifier le travail des data scientists et l’accès aux applications par les métiers.
Dataiku s’était concentré sur l’accessibilité de ses outils par les data scientists et les data analysts avec DSS 7.0. La version 8.0 renforce cet aspect en ajoutant davantage de fonctions de partages en direction des métiers. Comme l’explique Romain Fouache, directeur des opérations chez Dataiku, la licorne souhaite embarquer plusieurs milliers d’utilisateurs sur la plateforme de data science.
En ce sens, Dataiku Applications permet de créer des applications instanciées en embarquant un projet d’analyse au sein d’une interface graphique. Pour cela, les administrateurs d’un projet ont accès à une suite d’outils low-code/no code.
Flow permet de construire des workflows analytiques, par exemple une prédiction mensuelle des ventes, puis Application Designer doit faciliter la création de l’interface pour visualiser cette prédiction. L’application créée est ensuite disponible depuis le portail DSS. D’autres départements d’une entreprise peuvent reprendre l’application comme un template et en monter une instance pour leurs propres besoins. Dans le jargon de Dataiku, c’est une « application as recipe ».
DSS s’ouvre aux métiers…
Ce sont des applications visuelles plutôt simples à créer. En principe, des analystes métiers pourraient – à condition d’être formés – utiliser les briques décrites ci-dessus.
Dans un article de blog, Mendi Grissom, directrice marketing produit chez Dataiku, précise que DSS permet de créer des web apps plus avancées en HTML, CSS, JavaScript ou avec les librairies Shiny R et Bokeh (Python). Là, ce sont des développeurs qui préparent des applications pour les métiers.
L’éditeur d’origine française introduit ensuite Flow Zones. Cette fonctionnalité doit faciliter la gestion d’un flux de grande taille créé avec l’interface graphique Flow. Il est possible de sélectionner des éléments d’un flux pour en faire des zones, afin de détailler les étapes d’un processus de machine learning, par exemple, la phase d’injection de données, d’étiquetage, ou d’entraînement d’un modèle. Dataiku présente cette fonctionnalité pour gagner en visibilité et détailler les composants d’un processus pour les utilisateurs qui découvriraient la plateforme.
… Mais reste avant tout une plateforme pour les data scientists
Puis, Model Document Generator est sans surprise un générateur de documentation pour les modèles entraînés. Dataiku justifie l’ajout de cette fonctionnalité par les obligations qu’ont certains data scientists, travaillant au sein de secteurs hautement régulés, de fournir des fiches détaillées sur les traitements des données effectuées. Model Document Generator génère un fichier DOCX (Microsoft Word) qui indique les fonctions du modèle, les composants pour le bâtir (algorithmes utilisés, traitements et features/variables choisis), ses optimisations et ses performances.
Attention toutefois, la fonctionnalité n’est pas compatible avec les modèles Keras, Vertica (le support de Vertica Advanced Analytics est déprécié depuis DSS 7.0) et ceux construits avec des algorithmes accessibles depuis des plug-ins.
Parmi les fonctionnalités plus avancées, on peut citer l’ajout de nouvelles méthodes pour la phase d’optimisation des hyperparamètres. Pour rappel, les hyperparmètres sont des paramètres ajustables régissant le processus d’entraînement lui-même (par exemple, nombre de couches d’un réseau neuronal profond, nombre de nœuds dans le RNN, régularisation d’un algorithme de régression, etc.).
À l’instar d’Azure Machine Learning, DSS comprend un outil de recherche automatique des valeurs à conserver pour les hyperparamètres. Deux stratégies de recherche étaient jusqu’alors disponibles : la recherche par grille et la validation croisée (simple et K-fold).
DSS 8.0 ajoute la recherche randomisée et bayésienne. La méthode bayésienne réclame d’installer un package dédié nommé scikit-optimize, ainsi que scikit-learn et XGBoost dans l’environnement de développement. Il est possible de choisir plusieurs hyperparamètres à suivre et de visualiser les valeurs les plus pertinentes à l’aide d’un graphe.
DSS 7.0 ajoutait avant tout une interface visuelle et des méthodes pour l’explication des prédictions des modèles, même quand ceux-ci dépendent de « boîtes noires ». La version 8.0 de la plateforme logicielle permet d’exposer les visualisations de ces analyses via API. Ici, il s’agit de partager les résultats obtenus à des fins de transparence.
À noter que DSS 8 supporte maintenant la version 1.0 de la librairie Python Pandas, réputée pour sa simplicité.
Renforcer le contrôle et les performances
Par ailleurs, l’éditeur a renforcé la centralisation des logs d’audits à des fins de sécurité, d’analyse d’usage de ressources informatiques, mais aussi pour des utilisations MLOps (notamment pour l’analyse des requêtes en provenance des nœuds d’API).
Les événements d’audits sont stockés dans un système distant. Pour des raisons de sécurité, ils ne doivent pas résider sur la même machine qui héberge DSS. Plusieurs méthodes d’extraction des logs sont listées dans la documentation.
Dans cette logique de contrôle apporté par des outils comme Model Document Generator et la centralisation des logs d’audits, l’éditeur a présenté une fonctionnalité d’étiquetage pour mieux organiser les données, les modèles et les ressources sous des labels associés à un département, une marque, un type de traitement, etc. Encore une fois, ce sont les administrateurs qui gèrent ces étiquetages.
Enfin, sous le capot, Dataiku a amélioré le support des images containérisées pour API Deployer, Spark on Kubernetes et l’exécution des activités (modèles, recettes) qui sont maintenant tous bâtis sur une seule base CentOS 7. L’éditeur annonce également le support expérimental d’OpenShift 4.
À l'heure actuelle, la plateforme pensée par Red Hat est utilisable comme un moteur Kubernetes pour l’exécution des modèles et des recettes. DSS ne prend pas encore en compte les fonctionnalités spécifiques à OpenShift.