Machine Learning Systems are Bloated and Vulnerable

Fuente: arXiv
Gespeichert in:
Bibliographische Detailangaben
Hauptverfasser: Zhang, Huaifeng, Ahmed, Fahmi Abdulqadir, Fatih, Dyako, Kitessa, Akayou, Alhanahnah, Mohannad, Leitner, Philipp, Ali-Eldin, Ahmed
Format: Preprint
Veröffentlicht: 2022
Schlagworte:
Online-Zugang:
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
_version_ 1866917573395742720
author Zhang, Huaifeng
Ahmed, Fahmi Abdulqadir
Fatih, Dyako
Kitessa, Akayou
Alhanahnah, Mohannad
Leitner, Philipp
Ali-Eldin, Ahmed
author_facet Zhang, Huaifeng
Ahmed, Fahmi Abdulqadir
Fatih, Dyako
Kitessa, Akayou
Alhanahnah, Mohannad
Leitner, Philipp
Ali-Eldin, Ahmed
contents Today's software is bloated with both code and features that are not used by most users. This bloat is prevalent across the entire software stack, from operating systems and applications to containers. Containers are lightweight virtualization technologies used to package code and dependencies, providing portable, reproducible and isolated environments. For their ease of use, data scientists often utilize machine learning containers to simplify their workflow. However, this convenience comes at a cost: containers are often bloated with unnecessary code and dependencies, resulting in very large sizes. In this paper, we analyze and quantify bloat in machine learning containers. We develop MMLB, a framework for analyzing bloat in software systems, focusing on machine learning containers. MMLB measures the amount of bloat at both the container and package levels, quantifying the sources of bloat. In addition, MMLB integrates with vulnerability analysis tools and performs package dependency analysis to evaluate the impact of bloat on container vulnerabilities. Through experimentation with 15 machine learning containers from TensorFlow, PyTorch, and Nvidia, we show that bloat accounts for up to 80% of machine learning container sizes, increasing container provisioning times by up to 370% and exacerbating vulnerabilities by up to 99%.
format Preprint
id arxiv_https___arxiv_org_abs_2212_09437
institution arXiv
publishDate 2022
record_format arxiv
spellingShingle Machine Learning Systems are Bloated and Vulnerable
Zhang, Huaifeng
Ahmed, Fahmi Abdulqadir
Fatih, Dyako
Kitessa, Akayou
Alhanahnah, Mohannad
Leitner, Philipp
Ali-Eldin, Ahmed
Software Engineering
Machine Learning
Today's software is bloated with both code and features that are not used by most users. This bloat is prevalent across the entire software stack, from operating systems and applications to containers. Containers are lightweight virtualization technologies used to package code and dependencies, providing portable, reproducible and isolated environments. For their ease of use, data scientists often utilize machine learning containers to simplify their workflow. However, this convenience comes at a cost: containers are often bloated with unnecessary code and dependencies, resulting in very large sizes. In this paper, we analyze and quantify bloat in machine learning containers. We develop MMLB, a framework for analyzing bloat in software systems, focusing on machine learning containers. MMLB measures the amount of bloat at both the container and package levels, quantifying the sources of bloat. In addition, MMLB integrates with vulnerability analysis tools and performs package dependency analysis to evaluate the impact of bloat on container vulnerabilities. Through experimentation with 15 machine learning containers from TensorFlow, PyTorch, and Nvidia, we show that bloat accounts for up to 80% of machine learning container sizes, increasing container provisioning times by up to 370% and exacerbating vulnerabilities by up to 99%.
title Machine Learning Systems are Bloated and Vulnerable
topic Software Engineering
Machine Learning
url https://arxiv.org/abs/2212.09437