Domain knowledge and functions in data science, application to hydroelectricity production
Connaissances du domaine et fonctions en science des données, application à la production d'hydroélectricité
Résumé
In this dissertation, we investigate the link between domain knowledge in the form of functions and data science. Consider the following scenario. Let D(y,z1,...,zn) be a dataset, Alice a data scientist, Bob a domain expert and y=f(z1,...,zn) a function known to Bob from his background knowledge. In this dissertation, we are interested in the following simple yet crucial questions for Alice. How to define the satisfaction of f in D? How to measure that satisfaction efficiently? How does this satisfaction relate to the supervised learning task of learning f from D? It turns out that these problems are related to the study of counterexamples through the use of functional dependencies (FDs) and, in particular, FD measures used to quantify their satisfaction in a dataset such as the g3 indicator. More specifically, we consider the case where the equality is replaced by more flexible predicates, a relaxation that is now common in the literature. First, we examine the complexity of computing g3. It is known that g3 can be computed in polynomial time when using equality, while it becomes NP-hard when using general predicates. Our goal is to refine this dichotomy by studying the impact of the following common properties: reflexivity, transitivity, symmetry, and antisymmetry. We show that symmetry and transitivity together are sufficient to guarantee that the g3 can be computed in polynomial time. However, removing one of them makes the problem NP-hard. Second, we study the computation of g3 in the polynomial and NP-hard cases identified previously. We propose different exact and approximate solutions for the computation of g3 in both cases. We compare these solutions in a detailed experimental study of time performance and approximation accuracy. All the algorithms are also made available via fastg3, a fast open-source Python library with an underlying C++ implementation. Third, we link counterexamples and g3 to supervised learning with a web application called ADESIT. ADESIT is intended to be part of an iterative data refinement process right after data selection and just before the machine learning process itself. It provides a way to evaluate the ability of a dataset to perform well for a given supervised learning problem through statistical and visual exploration. Finally, we validate our approach by applying it to the industrial problem of air gap monitoring in compact hydro-generators, and develop a solution for automatically processing the recorded data.
Dans cette thèse, nous étudions le lien entre la connaissance métier sous la forme d'une fonction et la science des données. Considérons le scénario suivant. Soit D(y,z1,...,zn) un ensemble de données, Alice une experte en science des données, Bob un expert du domaine et y=f(z1, ..., zn) une fonction connue de Bob grâce à ses connaissances métier. Dans cette thèse, nous nous intéressons aux questions suivantes, simples mais cruciales pour Alice. Comment définir la satisfaction de f dans D ? Comment mesurer efficacement cette satisfaction ? Comment cette satisfaction est-elle liée à la tâche d'apprentissage supervisé consistant à apprendre f à partir de D ? Il s'avère que ces problèmes sont liés à l'étude des contre-exemples par l'utilisation des dépendances fonctionnelles (DF) et, en particulier, des mesures permettant de quantifier la satisfaction des DFs dans un ensemble de données telles que l'indicateur g3. Plus précisément, nous considérons le cas où l'égalité est remplacée par des prédicats plus flexibles, une relaxation maintenant courante dans la littérature. Premièrement, nous examinons la complexité du calcul du g3. Il est connu que g3 peut être calculé en temps polynomial lorsqu'on utilise l'égalité, alors qu'il devient NP-difficile lorsqu'on utilise des prédicats généraux. Nous proposons d'affiner cette dichotomie en étudiant l'impact des propriétés communes suivantes : réflexivité, transitivité, symétrie et antisymétrie. Nous montrons que la symétrie et la transitivité sont suffisantes pour garantir que l'erreur g3 puisse être calculée en temps polynomial. Cependant, la suppression de l'une d'entre elles rend le problème difficile. Deuxièmement, nous étudions le calcul de g3 dans les cas polynomial et NP-difficile identifiés dans la première partie. Nous proposons différentes solutions exactes et approximées pour le calcul de g3 dans les deux cas. Nous comparons ces solutions dans une étude expérimentale détaillée des performances temporelles et d'approximation. Tous les algorithmes sont également disponibles via fastg3, une librairie Python open-source implémentée en C++. Troisièmement, nous connectons l'étude des contre-exemples et l'indicateur g3 à l'apprentissage supervisé à l'aide d'une application web appelée ADESIT. ADESIT est destinée à faire partie d'un processus itératif de raffinement des données juste après la sélection des données et juste avant le processus d'apprentissage lui-même. Elle permet d'évaluer la capacité d'un ensemble de données à donner de bons résultats pour un problème d'apprentissage supervisé par le biais de statistiques et d'une exploration visuelle. Enfin, nous validons notre approche par une application au problème industriel de la surveillance de l'entrefer dans les générateurs hydrauliques compacts et développons une solution pour le traitement automatique des données enregistrées.
Origine | Version validée par le jury (STAR) |
---|