5 research outputs found

    DiverGet: A Search-Based Software Testing Approach for Deep Neural Network Quantization Assessment

    Full text link
    Quantization is one of the most applied Deep Neural Network (DNN) compression strategies, when deploying a trained DNN model on an embedded system or a cell phone. This is owing to its simplicity and adaptability to a wide range of applications and circumstances, as opposed to specific Artificial Intelligence (AI) accelerators and compilers that are often designed only for certain specific hardware (e.g., Google Coral Edge TPU). With the growing demand for quantization, ensuring the reliability of this strategy is becoming a critical challenge. Traditional testing methods, which gather more and more genuine data for better assessment, are often not practical because of the large size of the input space and the high similarity between the original DNN and its quantized counterpart. As a result, advanced assessment strategies have become of paramount importance. In this paper, we present DiverGet, a search-based testing framework for quantization assessment. DiverGet defines a space of metamorphic relations that simulate naturally-occurring distortions on the inputs. Then, it optimally explores these relations to reveal the disagreements among DNNs of different arithmetic precision. We evaluate the performance of DiverGet on state-of-the-art DNNs applied to hyperspectral remote sensing images. We chose the remote sensing DNNs as they're being increasingly deployed at the edge (e.g., high-lift drones) in critical domains like climate change research and astronomy. Our results show that DiverGet successfully challenges the robustness of established quantization techniques against naturally-occurring shifted data, and outperforms its most recent concurrent, DiffChaser, with a success rate that is (on average) four times higher.Comment: Accepted for publication in The Empirical Software Engineering Journal (EMSE

    Towards Reliable, Production-Ready Deep Learning and Deep Reinforcement Learning Systems

    No full text
    RÉSUMÉ: Nous sommes au bord d’une nouvelle révolution technologique alimentée par l’intelligence artificielle (IA) qui remodèle les industries et modifie notre vie quotidienne. Au cours des dernières années, des progrès notables ont été réalisés dans les domaines de l’apprentissage profond (DL) et du apprentissage par renforcement profond (DRL), les sous-domaines les plus recherchés en matière d’IA. Ces progrès ont conduit à des réalisations importantes dans plusieurs domaines tels que la robotique, la médecine et les transports. En outre, l’accessibilité d’une puissance de calcul abordable et l’expansion rapide des données sont des facteurs clés pour le développement de modèles DL et DRL de pointe. Toutefois, générer du profit grâce à l’apprentissage automatique (ML) exige plus que simplement de développer le meilleur modèle ML; il exige l’exploitation d’un système ML holistique qui fonctionne de manière fiable et s’adapte aux changements de la dynamique de l’entreprise. Cette néces- sité d’exploitation a mis en évidence la nécessité de mettre en place une discipline axée sur l’acheminement de la ML à la production. Opérations d’apprentissage automatique (MLOps) a attiré un intérêt considérable dans le domaine de l’ingénierie ML en raison de ses améliora- tions notables en matière de qualité du logiciel et de temps de mise sur le marché. MLOps est une méthodologie d’ingénierie de ML qui formalisent et automatisent les différentes étapes du cycle de vie de ML, avec l’objectif d’unifier le développement et les opérations de ML. Les rapports actuels du secteur mettent l’accent sur les difficultés des entreprises de ML, en particulier celles qui exploitent DL et DRL, à appliquer les principes MLOps et à passer d’une solution de preuve de concept à un système ML fiable et prêt pour la production. Cela est attribué à l’opérationnalisation actuelle, lente, manuelle et difficile des systèmes ML, qui appelle à plus de dévouement et d’attention de la part du monde universitaire et de l’industrie. Plusieurs défis entravent la production transparente du ML dans des applications du monde réel, couvrant toutes les phases du cycle de vie de l’opérationnalisation du ML, y compris la validation, le déploiement et la surveillance des modèles. En effet, il existe un manque important d’outils, de lignes directrices et de recherches spécifiquement axés sur la phase de déploiement de DL et DRL. Les universités et les entreprises sont principalement concernées par la phase de développement des systèmes ML, avec une attention minimale sur le déploiement. La rareté des recherches sur les défis de déploiement spécifiques aux DRL a laissé les praticiens mal informés des problèmes potentiels qu’ils peuvent rencontrer lors du déploiement de systèmes basés sur les DRL. De plus, on s’appuie toujours sur des procédures traditionnelles, souvent inefficaces, pour évaluer la fiabilité des stratégies de compression post-entraînement, telles que la quantification. Dans les environnements de production réels, ces techniques traditionnelles d’évaluation de la fiabilité affectent la validation du modèle, ce qui constitue un obstacle à l’évaluation précise du comportement du modèle. De plus, le phénomène de dérive des données, c’est-à-dire l’altération de la distribution des données au fil du temps dans les contextes opérationnels, continue de constituer un obstacle important à la surveillance du ML en production. Cela peut entraîner une détérioration notable des performances du modèle. Lorsque cette condition n’est pas rapidement identifiée et résolue, elle peut augmenter considérablement les coûts opérationnels et les temps d’arrêt. Compte tenu des défis susmentionnés, il est primordial d’appliquer davantage les principes MLOps relatifs à chaque phase d’opérationnalisation du ML et d’améliorer la fiabilité et la préparation à la production des systèmes DL et DRL. Dans cette thèse, nous souhaitons contribuer à trois aspects clés couvrant des phases dis- tinctes du cycle de vie de l’opérationnalisation du ML. Notre objectif est de relever les défis qui surviennent tout au long des phases de déploiement, de validation et de surveillance du modèle. Cette approche ciblée permet un examen plus approfondi des défis auxquels les praticiens du ML sont confrontés lors de la transition de la validation de principe à des systèmes fiables et prêts pour la production. Tout d’abord, nous abordons le déploiement du modèle. Plus précisément, nous contribuons à améliorer notre compréhension des défis pratiques rencontrés par les développeurs lors du déploiement de systèmes DRL en menant une étude empirique sur Stack Overflow (SO), le plus grand forum mondial de développeurs. Dans cette étude, nous avons examiné les articles de SO sur le déploiement de DRL, étudié l’état actuel et mis en évidence les défis associés au déploiement de systèmes DRL. Ensuite, nous examinons la fréquence et la difficulté de ces défis. Ensuite, nous avons examiné la fia- bilité des techniques de quantification des réseaux neuronaux profonds (DNN) dans le but de découvrir l’impact réel de ces techniques dans les environnements de production. Nous pro- posons DiverGet, une approche de test basée sur la recherche pour évaluer l’impact réel des méthodes de quantification. DiverGet vise à détecter les entrées induisant des différences qui provoquent des désaccords comportementaux entre un DNN original et sa version quantifiée, permettant ainsi une évaluation complète de l’influence des approches de quantification. En- fin, notre troisième étude plonge dans le suivi des modèles, en se concentrant sur le phénomène de dérive des données dans les DRL (également appelée dérive environnementale). La dérive environnementale est susceptible de provoquer une dégradation des performances prédictives du système DRL en production. L’apprentissage continu (CL) est actuellement la solution in- contournable pour guérir les systèmes DRL après des dérives environnementales. Cependant, en raison des inefficacités de la CL, telles que l’oubli catastrophique et la lente convergence, la CL peut entraîner des cycles de guérison longs, voire infructueux. Pour atténuer ce prob- lème, nous avons introduit Dr.DRL, une nouvelle approche d’auto-guérison DRL qui intègre un mécanisme d’oubli intentionnel. Dr.DRL est conçu pour donner systématiquement la priorité à l’adaptation des capacités de résolution de problèmes d’un agent DRL dans des contextes de production réels en présence de dérive environnementale. Notre approche réini- tialise délibérément les comportements mineurs du système DRL afin de mettre l’accent sur l’adaptation du comportement majeur, améliorant ainsi la vitesse d’auto-guérison. L’éventail des questions de recherche présentées dans cette étude couvre l’ensemble du cycle de vie de l’opérationnalisation du ML, abordant des défis allant de la validation du modèle à la surveillance du modèle. Notre étude vise à alléger le fardeau de l’opérationnalisation du ML pour les praticiens du ML et à servir de base sur laquelle la communauté du ML peut s’appuyer vers des systèmes DL et DRL plus fiables et prêts pour la production. ABSTRACT: We stand on the verge of a new technological revolution powered by Artificial Intelligence (AI) that is reshaping industries and altering our daily lives. In recent years, there have been notable advancements in Deep Learning (DL) and Deep Reinforcement Learning (DRL), the most sought-after subfields of AI. These advancements have led to significant accomplish- ments in several domains like robotics, medicine, and transportation. Furthermore, the ac- cessibility of affordable computational power and the rapid expansion of data are key factors for the development of cutting-edge DL and DRL models. However, producing profit through Machine Learning (ML) requires more than simply developing the finest ML model; it ne- cessitates the operationalization of a holistic ML system that performs reliably and adapts to changes in the business’s dynamics. This need for operationalization has highlighted the necessity for a discipline focusing on delivering ML to production. Machine Learning Oper- ations (MLOps) has attracted significant interest in the field of ML engineering owing to its notable improvements in software quality and time to market. MLOps is an ML engineering methodology that formalizes and automates the various stages of the ML lifecycle, with the objective of unifying ML development and operations. Current industry reports emphasize the struggles of ML firms, especially those leveraging DL and DRL, in applying MLOps principles, and transitioning from a proof-of-concept solution to a reliable, production-ready ML system. This is attributed to the current slow, manual, and challenging operationalization of ML systems, which urges more dedication and attention from both academia and industry. Several challenges hinder the seamless productionization of ML in real-world applications, spanning all phases of the ML operationalization lifecycle, including model validation, deployment, and monitoring. Indeed, there is a significant lack of tools, guidelines, and research, that are specifically focused on the deployment phase of DL and DRL. Academia and business are primarily concerned with the development phase of ML systems, with minimal focus on deployment. The scarcity of research on DRL-specific de- ployment challenges has left practitioners uninformed of potential issues they may encounter while deploying DRL-based systems. Furthermore, there is still a reliance on traditional, of- ten ineffective, procedures for assessing the reliability of post-training compression strategies, such as quantization. In real-world production settings, these traditional reliability assess- ment techniques affect model validation, posing a hurdle in accurately gauging the model’s behavior. In addition, the phenomenon of data drift, the alteration in the data distribution over time in operational settings, continues to pose a significant obstacle to in-production ML monitoring. This can lead to a notable deterioration in the model performance. When this condition is not promptly identified and resolved, it can significantly increase opera- tional costs and downtime. Considering the aforementioned challenges, it’s paramount to further apply MLOps principles relative to each ML operationalization phase and enhance the reliability and production-readiness of DL and DRL systems. In this thesis, we are interested in contributing to three key aspects covering distinct phases within the ML operationalization lifecycle. Our aim is to address challenges that arise throughout the model deployment, validation, and monitoring phases. This targeted ap- proach allows for a more in-depth examination of the challenges that ML practitioners face as they transition from proof-of-concept to reliable, production-ready systems. First, we tackle model deployment. More precisely, we contribute to improving our understanding of practical challenges encountered by developers when deploying DRL systems by conducting an empirical study on Stack Overflow (SO), the world’s largest forum for developers. In this study, we reviewed SO posts about DRL deployment, investigated the current state, and highlighted the challenges associated with deploying DRL systems. Then, we look into the frequency and difficulty of these challenges. Next, we examined the reliability of Deep Neural Network (DNN) quantization techniques with the aim of uncovering the real impact of these techniques in production settings. We propose DiverGet, a search-based testing approach to evaluate the real impact of quantization methods. DiverGet aims to detect difference-inducing inputs that cause behavioral disagreements between an original DNN and its quantized version, thereby enabling a comprehensive evaluation of the influence of quantization approaches. Finally, our third study dives into model monitoring, focusing on the phenomenon of data drifts in DRL (also known as environmental drift). Environmen- tal drift is able to cause a degradation in the predictive performance of the DRL system in production. Continual learning (CL) is currently the go-to solution for healing DRL systems after environmental drifts. However, due to CL’s inefficiencies such as catastrophic forgetting and slow convergence, CL can result in long or even failed healing cycles. To alleviate this issue, we introduced Dr.DRL, a new DRL self-healing approach that incorporates an inten- tional forgetting mechanism. Dr.DRL is designed to systematically prioritize the adaptation of a DRL agent’s problem-solving abilities in real-world production settings in the presence of environmental drift. Our approach purposefully resets the DRL system’s minor behaviors in order to emphasize the adaptation of the major behavior, hence enhancing the speed of self-healing. The range of research questions presented in this study spans the entire ML operationalization lifecycle, addressing challenges ranging from model validation to model monitoring. Our study aims to relieve the burden of ML operationalization for ML practitioners and serve as a foundation for the ML community to build on, toward more reliable and production-ready DL and DRL systems
    corecore