<  Retour au portail Polytechnique Montréal

Quantifying Uncertainty in Systems - Two Practical Use Cases Using Machine Learning to Predict and Explain Systems Failures

Gabrielle Gauthier Melançon

Mémoire de maîtrise (2019)

Document en libre accès dans PolyPublie
[img]
Affichage préliminaire
Libre accès au plein texte de ce document
Conditions d'utilisation: Tous droits réservés
Télécharger (4MB)
Afficher le résumé
Cacher le résumé

Résumé

Afin d'accomplir et automatiser des tâches complexes, différents modèles et composantes peuvent être organisés sous forme d'un système. Par exemple, les chaînes d'approvisionnement sont des systèmes qui permettent de transformer et transporter des matières premières en produits finis. Ces systèmes sont primordiaux lorsque la complexité d'un processus est telle qu'elle ne pourrait être gérée manuellement par un seul humain. Cependant, différentes sources d'incertitude peuvent affecter le comportement d'un système et son résultat. Cela peut mener à ce que l'on désigne comme une défaillance du système, c'est-à-dire lorsqu'un système ne produit pas un résultat désiré. Ce mémoire présente et compare deux projets où l'on utilise l'apprentissage machine afin de prédire les défaillances dans les systèmes, en modélisant ces sources d'incertitude avec une approche holistique. Dans le premier projet, pour lequel nous avons soumis un papier au INFORMS Journal on Applied Analytics, nous cherchons à prédire les défaillances dans les chaines d'approvisionnement. Nous avons développé notre approche à JDA, un fournisseur de logiciels en chaînes d'approvisionnement, et en coopération avec Michelin, un manufacturier international de pneus. Dans le cadre du projet, nous avons défini une défaillance du système comme étant une baisse du niveau de service en dessous d'un seuil désiré. Nous avons modélisé les différents risques présents dans la chaîne d'approvisionnement en fonction de leur habilité à prédire les défaillances quelques semaines à l'avance. Nous démontrons que notre modèle d'apprentissage automatique donne de bons résultats sur un large éventail de produits. Nous soulignons également l'importance de considérer dans l'approche la façon dont les utilisateurs interagissent avec les prédictions. Pour cela, nous avons développé un outil interactif afin que les utilisateurs puissent naviguer à travers les prédictions et obtenir le contexte nécessaire afin de comprendre la source de la défaillance. Cet outil a permis de convertir les prédictions en actions concrètes afin de prévenir et éliminer les défaillances avant qu'elles ne se produisent. Dans nos résultats, nous présentons également comment l'outil a permis d'identifier des causes récurrentes de défaillances dans leur chaîne d'approvisionnement. Dans le cadre du second projet, nous présentons nos résultats préliminaires effectués à Element AI, un fournisseur de logiciels en intelligence artificielle. Le projet consiste à quantifier la confiance associée à chaque prédiction générée par un système d'intelligence artificielle. Le système en question est composé d'une séquence de modèles, incluant deux algorithmes d'apprentissage profond et quelques heuristiques. L'objectif du système est d'extraire automatiquement de l'information contenue sur un document. Dans une approche similaire au premier projet, nous avons identifié les sources principales d'incertitude dans le système, telle de l'incertitude aléatorique et épistémique, pour ensuite les modéliser avec une approche d'apprentissage machine afin de déterminer la confiance du système dans chacune de ses prédictions. L'approche est de ce fait inverse à notre premier projet, puisque nous quantifions la possibilité que le système ne soit pas en état de défaillance. En pratique, cela revient à la même tâche. Nos résultats préliminaires suggèrent que notre approche est prometteuse. Pour nos deux approches, nous prédisons les défaillances d'un système dans le même but, celui d'identifier les situations incertaines où un humain-dans-la-boucle (human-in-the-loop)peut intervenir afin de rectifier le résultat du système et ainsi éviter la défaillance. Cela permet de mettre à profit la créativité et la connaissance de l'humain pour les situations plus délicates, et ainsi augmenter la performance du système. Dans le contexte des chaînes d'approvisionnement, cela peut vouloir dire d'ignorer les paramètres du plan afin de déplacer des items au bon endroit ou encore augmenter manuellement la production. Dans un système d'intelligence artificielle, l'humain peut directement changer la prédiction du système en regardant par lui-même les données, dans notre cas lire le document et extraire lui même l'information. Nous soulignons aussi comment notre approche est générique et peut s'adapter à divers types de systèmes, avec différentes granularités et sources d'incertitude. Nous discutons également comment le modèle utilisé se doit d'être explicable, afin que les utilisateurs puissent identifier et potentiellement éliminer les causes récurrentes de défaillances. Pour terminer, notre approche permet aussi d'augmenter la confiance de l'utilisateur dans le système utilisé ainsi que l'automatisation qu'il permet.

Abstract

Systems are widely used to execute complex tasks, such as supply chain systems, which transform and transport raw materials into finished goods. We often rely on systems to automate, at least partially, a process that would be unmanageable or not-efficient for humans to tackle manually. However, different sources of uncertainty can affect systems' outcomes and behavior, and eventually lead to system failure. The definition of failure is dependent on the context, and it represents an outcome of the system that we want to avoid. This thesis presents and compares two different tracks of work where we explored how to predict system failures, using machine learning, by modeling its sources of uncertainty holistically. In the first project, for which we submitted a paper to the INFORMS Journal on Applied Analytics, we predict failures in a supply chain system. We developed our approach at JDA, a supply chain software provider, in co-operation with Michelin, an international tires manufacturer. In our approach, we modeled risks with features from different segments of the supply chain that could be good indicators of a future failure. We defined failure as a drop in the service level below the desired target. We showcase that our machine learning model works well on a large variety of products. Most importantly, we highlight the importance of considering in the approach how users interact with the models' predictions. We designed and built an interactive tool for users so they could navigate through the predictions, get the necessary context, and receive an explanation as to the cause of the failure. The tool allowed for predictions to become actionable, so users could act and avoid system failures. We also present in our results how planners identified recurrent issues in their supply chains. In the second use case, we present early experiments that we have done at Element AI, an artificial intelligence software provider, on quantifying the confidence of an AI system in its prediction. The system is composed of a sequence of models, including deep learning algorithms, and aims at extracting text from documents. In a similar idea to the first project, we modeled the primary sources of uncertainty of the system, such as aleatoric and epistemic uncertainty, and used a machine learning model to measure confidence estimates in each AI system's predictions. Our early results on a given dataset suggest that our method is promising. In both approaches, we predict system failure for a similar purpose: identifying uncertain situations where a human-in-the-loop can rectify the system's outcome to avoid failure. Indeed, by leveraging a human's creativity and knowledge in complex cases, we can boost the system's performance. In supply chains, this could mean overriding the system's parameters to change the location of some stock or increase the production. In the AI system use case, this could mean to change the predicted text to its correct value manually. We also highlight how our approach to system failure prediction is generic and flexible to various types of systems, with different granularity, failure definition, and uncertainty sources. We further underscore how the model needs to be explainable so that users can identify and potentially eliminate recurrent causes of system failure. Lastly, failures prediction also help to build general trust in the system and the automation it is providing.

Département: Département de mathématiques et de génie industriel
Programme: Maîtrise recherche en mathématiques appliquées
Directeurs ou directrices: Louis-Martin Rousseau
URL de PolyPublie: https://publications.polymtl.ca/4168/
Université/École: Polytechnique Montréal
Date du dépôt: 08 oct. 2020 08:04
Dernière modification: 10 juin 2023 21:55
Citer en APA 7: Gauthier Melançon, G. (2019). Quantifying Uncertainty in Systems - Two Practical Use Cases Using Machine Learning to Predict and Explain Systems Failures [Mémoire de maîtrise, Polytechnique Montréal]. PolyPublie. https://publications.polymtl.ca/4168/

Statistiques

Total des téléchargements à partir de PolyPublie

Téléchargements par année

Provenance des téléchargements

Actions réservées au personnel

Afficher document Afficher document