Energy efficiency measurement in optimization and inference of ML models
View/Open
Cita com:
hdl:2117/391670
Document typeBachelor thesis
Date2023-06-30
Rights accessOpen Access
All rights reserved. This work is protected by the corresponding intellectual and industrial
property rights. Without prejudice to any existing legal exemptions, reproduction, distribution, public
communication or transformation of this work are prohibited without permission of the copyright holder
Abstract
Les aplicacions d'aprenentatge automàtic (ML) han experimentat un ràpid creixement en els darrers anys, la qual cosa ha provocat un augment del consum d'energia associat a la formació i el desplegament de models ML, fet que ha generat preocupacions sobre el seu impacte ambiental. En aquest projecte de recerca, pretenem investigar l'eficiència energètica dels models ML durant les etapes d'optimització i inferència. Investigarem específicament l'efecte de les estratègies d'optimització de ML com la quantificació i la poda sobre l'energia consumida i la correctesa del model ML. També veurem com els diferents marcs d'optimització, com PyTorch i TensorFlow, afecten aquestes mètriques tant en les fases d'optimització com d'inferència. A més, realitzarem una avaluació contextual de l'eficiència energètica per a diversos models de ML en diversos dominis, inclosos el processament del llenguatge natural, la visió per ordinador i la generació de codi. Mitjançant l'exploració de sis models de ML, abordarem qüestions de recerca relacionades amb l'energia consumida, la correctesa i l'optimització de la compensació. Tot això es farà mitjançant dos scripts de Python: l'script d'optimització, que optimitza els sis models i desa totes les versions al disc, i l'script d'inferència, que agafa els models desats per l'script d'optimització i fa inferència sobre ells. Tots dos scripts també generen un fitxer csv amb els resultats de cada fase. Els resultats del projecte mostren que els marcs, dominis, models i estratègies d'optimització de ML tenen un efecte significatiu en el consum d'energia tant en optimització com en inferència: TensorFlow consumeix menys energia que PyTorch però PyTorch aconsegueix una major correctesa en inferència, mentre que PyTorch funciona millor. en optimització, i la poda consumeix menys energia que la quantificació. Al mateix temps, els models de visió per ordinador són molt eficients energèticament, mentre que els models de codi requereixen una mica més d'energia que els models de text. Els resultats d'aquest projecte d'investigació proporcionen informació sobre l'optimització de l'energia consumida en els models de ML, contribuint a aplicacions ML més sostenibles i respectuoses amb el medi ambient. Machine learning (ML) applications have witnessed rapid growth in recent years, leading to increased energy consumption associated with training and deployment of ML models, which has raised concerns about their environmental impact. In this research project, we aim to investigate the energy efficiency of ML models during the optimization and inference stages. We will specifically investigate the effect of ML optimization strategies such as quantization and pruning on the energy consumed and ML model correctness. We will also look at how different optimization frameworks, such as PyTorch and TensorFlow, affect these metrics both in the optimization and inference phases. Additionally, we will conduct a context-aware evaluation of energy efficiency for diverse ML models across various domains, including Natural Language Processing, Computer Vision and Code Generation. Through the exploration of six ML models, we will address research questions related to the energy consumed, correctness, and trade-off optimization. All of this will be done using two Python scripts: the optimization script, which optimizes the six models and saves all the versions in disk, and the inference script, which takes the models saved by the optimization script and performs inference on them. Both these scripts also generate a csv file with the results of each phase. The results of the project show that ML frameworks, domains, models and optimization strategies have a significant effect on the consumption of energy in both optimization and inference: TensorFlow consumes less energy than PyTorch but PyTorch achieves a higher correctness in inference, while PyTorch performs better in optimization, and pruning consumes less energy than quantization. At the same time, Computer Vision models are very energy efficient while code models are slightly more energy demanding than text models. The findings of this research project provide insights into optimizing the energy consumed in ML models, contributing towards more sustainable and environmentally-friendly ML applications.
DegreeGRAU EN CIÈNCIA I ENGINYERIA DE DADES (Pla 2017)
Files | Description | Size | Format | View |
---|---|---|---|---|
177940.pdf | 984,0Kb | View/Open |