PILOTAGE DE LA PERFORMANCE DURANT LES PROJETS DE SCIENCE CITOYENNE AVEC EXPLORATION D’ESPACES
INITIATIVES EMERGENTES POUR REUNIR SCIENTIFIQUES ET EXPERTS EN ANALYSE DE DONNEES : LE CAS DU RAMP
Le Center for Data Science (CDS) de l’université Paris-Saclay est un projet de Lidex et l’une des premières initiatives de science des données en France. Son objectif consiste à développer des méthodes et des outils permettant d’analyser de grandes quantités de données et d’en extraire des informations utiles pour la physique, la biologie, la médecine, la chimie, l’environnement et les sciences humaines. Cette initiative est multidisciplinaire; elle nécessite des recherches sur les méthodologies analytiques (statistiques, processus d’apprentissage automatique, extraction de connaissances, visualisation de données), ainsi que sur la conception de logiciels. Elle regroupe 50 laboratoires d’informatique et plus de 300 chercheurs, couvrant une grande variété d’expertises. Ce centre se concentre principalement sur les applications de données scientifiques telles que les données ATLAS provenant des expériences du CERN et les projets CASD (données économiques et financières françaises / européennes). Le RAMP (pour Rapid Analytics and Model Prototyping) est une plateforme de data challenge développée en tant qu’outil interne au Center for Data Science (CDS) de l’université Paris-Saclay pour répondre au déséquilibre spécifique entre l’offre et la demande de projets scientifiques. La conception de cette plateforme rassemble depuis 2014 des chercheurs de l’équipe Théories et méthodes de conception pour l’innovation du Centre 201 de Gestion Scientifique (CGS) des Mines ParisTech et des spécialistes de l’analyse de données du CDS. Aujourd’hui, RAMP a deux types d’utilisation primaire. Premièrement, il est utilisé comme plateforme de compétition et de collaboration où les spécialistes des données travaillent sur un problème pour des délais relativement courts (généralement un ou deux jours). Cela peut être considéré comme une forme de Hackathon avec la principale différence que l’objectif est d’optimiser une métrique claire. Ce format a été mis en place dans plusieurs endroits comme l’Université Paris-Saclay mais également à l’École d’économie de Paris, au Musée national d’histoire naturelle, sur la plateforme Epidemium ou au Centre national de recherche atmosphérique aux États-Unis. Deuxièmement, RAMP est utilisé en tant que support à l’éducation dans divers cours de science des données. Il a été utilisé à ce jour dans 6 établissements pour 8 cours de science des données et avec la participation d’environ 400 étudiants. Figure 25. Extrait de la liste des projets réalisés par le RAMP1 Le RAMP est utilisé dans le contexte opérationnel suivant. À l’instar d’un data challenge, un scientifique fournit un problème et un ensemble de données à la plateforme. De manière générale, le problème doit souvent être remanié pour pouvoir formuler une hypothèse compatible avec les méthodes d’analyse ainsi qu’une métrique d’évaluation. De plus, les données doivent également être traitées, nettoyées et les données manquantes doivent être comblées pour être exploitable. Cette activité est généralement réalisée par une équipe distincte des participants qui participent au RAMP en soumettant des modèles. Le processus peut prendre de deux semaines à six mois et donne lieu à la conception d’un système de récompenses (des prix, un système de notation,…) en fonction des résultats ainsi qu’un kit de démarrage, généralement un bloc-notes (environnement informatique interactif dans lequel il est possible de combiner du code, du texte enrichi, des mathématiques, des tracés et du contenu multimédia) qui présente le problème de la science du domaine, décrit les données et présente une première solution servant de base. 1 https://ramp.studio/problems 202 Le problème est ensuite configuré à l’aide du logiciel RAMP et un événement RAMP est organisé qui est dans la plupart dont la participation est généralement ouverte. Au cours du RAMP, les participants soumettent leurs solutions sous forme de code qui sont ensuite traitées sur un serveur principal distant. Cette étape crée les modèles de prédiction correspondants pour chaque solution soumise. L’expérience montre que les soumissions uniquement des prédictions réalisées par le code sont inutiles pour les scientifiques du domaine, car ils ne fournissent pas de modèles reproductibles et de code prêt pour la production. Les scores sont automatiquement calculés pendant le traitement et affichés sur un classement (Figure ). Un challenge peut être compétitif (fermé) ou collaboratif (ouvert). Dans le cas compétitif, les codes soumis sont fermés aux autres participants; les participants ne peuvent voir que leur propre code ainsi que le score de chacun. En mode collaboratif, tous les participants ont accès à tous les codes soumis, et ils sont encouragés à les regarder et à réutiliser les solutions. Suivant l’expérience, le mode collaboratif accélère le processus de développement puisque les bonnes idées se répandent rapidement: en effet les challenges sous forme compétitive sont lents, les participants n’échangent pas leurs idées et gaspillent du temps précieux (Kégl et al., 2018). La configuration collaborative a été principalement utilisée dans des événements d’une journée où différents ensembles de problèmes tels que le défi HiggsML (physique des particules), la prédiction de la mortalité (soins de santé), la classification des étoiles variables (astrophysique), la prédiction des insectes (écologie), et des simulations basées sur des agents (macroéconomie) ont été utilisées. Chacun de ces événements a entraîné une amélioration significative par rapport aux solutions de base. Les organisateurs ayant accès à tout le code, le résultat de la journée est un prototype entièrement fonctionnel, réutilisable et prêt à être déployé. Figure 26. Exemple de classement pour le challenge Drug Spectra Par la pratique, les organisateurs ont développé un principe organisationnel clé. En utilisant les RAMP dans la formation en science des données, les challenges ont dû être en partie fermés (mode compétitif) pour pouvoir noter les étudiants. La répétition de ce type de challenge a montré que l’exploration est plus performante en termes d’amélioration du score que le modèle purement collaboratif. À partir de là, les organisateurs ont systématisé la construction des challenges hybride: une phase compétitive dans laquelle les participants ont uniquement accès aux scores du 203 modèle, suivi d’une phase de collaboration au cours de laquelle, en outre, le code source des modèles peut être dévoilé
PRINCIPE DE FONCTIONNEMENT DU RAMP
Dans cette section sont résumées les principales composantes du RAMP. Tous les kits RAMP des expériences répertoriées sur le site de soumission sont disponibles ouvertement sur la plateforme GitHub2. Dans la figure 27 sont repris les éléments principaux qui constituent le RAMP. Figure 27. Processus du RAMP
Le « bundle »
Le « bundle » représente l’architecture globale du problème soumis aux expérimentateurs. Grâce à plusieurs itérations, le modèle type de bundle de la plateforme RAMP a été affiné et développé autour de quatre composantes qui définissent l’expérimentation ou le problème prédictif : le workflow, le type de score, les connecteurs de données et la validation croisée. Tous ces éléments peuvent être entièrement personnalisable. La principale conséquence de cette modularisation a été la réorganisation du travail: elle a séparé la mise en place des expériences de la résolution et de l’optimisation des modèles. Nous présentons en détail chacun de ces composants du bundle. 1. Le workflow décrit les éléments de calcul algorithmique par lequel les données vont passer pour générer un vecteur de prévisions. Un workflow élémentaire peut contenir un seul élément comme un classificateur, un régresseur ou un détecteur mais la plupart du temps celui-ci est modélisé par au moins un extracteur des caractéristiques des bases de données ainsi qu’un prédicteur. Une fois le workflow configuré, les expérimentateurs vont optimiser et soumettre un seul fichier de code pour chaque élément de workflow défini. 2. Les types de score (ou métriques) définissent la façon dont les prédictions des soumissions sont évaluées. Plusieurs types de score peuvent être nécessaires pour un seul projet. De manière générale, la prédiction réalisée par le biais de l’algorithme fournit un 2 https://github.com/ramp-kits 204 vecteur de prédiction � à partir des bases de données test. Cette valeur est ensuite comparée avec la valeur de vérité y des éléments de la base par la fonction ce qui génère un score. 3. Les connecteurs de données sont des fonctions qui à partir d’un fichier de données brutes renvoient un objet X manipulable par les algorithmes et une valeur y qui correspond à la valeur recherchée (le score). 4. La validation croisée définit la manière par laquelle le modèle algorithmique va s’entraîner ainsi que la façon dont il va être évalué. Son choix est déterminant pour éviter tout problème de sur-apprentissage dans les algorithmes (surinterprétation d’un algorithme qui « colle » trop aux données et ne peut pas être généralisé). Il existe plusieurs systèmes existants déjà prêts à l’emploi et disponibles dans les bibliothèques de Scikit-Learn. De manière générale, le modèle algorithmique va choisir comment à partir de la base de données existantes les données vont être réparties entre celles qui vont servir à entraîner le modèle (train set) et les données qui serviront à évaluer le modèle (test set). L’algorithme de prédiction s’entraîne et apprend à partir de la base de données X qui est visible pour lui, puis sa capacité de prédiction est évaluée sur le test set Y.