title: Edge Inference using ML-based resource-aware offloading
Creators: name: Hampejs, Stefan
Publisher: name: TU Wien
Year: 2024
Subjects: subject: offloading
subject: resource-aware
subject: machine learning
subject: decision tree
subject: artificial intelligence
subject: edge computing
subject: edge intelligence

description: Mit der Ausbreitung von Künstlicher Intelligenzen (KI) wird die Cloud zu einem zunehmenden Engpass. Darüber hinaus benötigen Anwendungen immer schnellere Antwortzeiten.Dadurch sind Lösungen gefragt, welche diesem Engpass abschwächen können und eine schnelle Antwortzeit ermöglichen. Eine mögliche Lösung könnte die dezentrale Datenverarbeitung sein, welcher dieser Herausforderung gewachsen ist. Dabei werden die Anfragen nicht zur Cloud gesendet, sondern zu Geräten, welche sich näher zu den Endgeräten befinden. Diese Lösung bietet nicht nur eine verkürze Wartezeit durch die verringerte Distanz, sondern auch eine erhöhte Sicherheit. Jedoch sind die Geräte, welche zur Verarbeitung der Anfragen genutzt werden, generell sehr unterschiedlich. Die Geräte unterscheiden sich in ihrer Größe und Leistung. Darüber hinaus sind sie Leistungstechnisch schlechter als die Cloud, was eine Herausforderung darstellt. Aufgrund eingeschränkter Netzwerkbedingungen und schwacher Client-Leistung ist das Auslagern von Aufgaben nicht immer möglich, aber sich ausschließlich auf den Client zu verlassen, ist ebenfalls ineffizient. Unsere Auslagerungsstrategien zielen darauf ab, die Gesamtleistung zu verbessern, indem diese Einschränkungen ausgeglichen werden.In dieser Abschlussarbeit untersuchen wir einen Fall im ‘Erweiterter Realität‘ Bereich.Ein Endgerät will Bilder durch ein Semantik Segmentation Modell analysieren, welches Bilder in die unterschiedlichen Objektgruppen aufteilt. Dieses KI-Modell befindet sich sowohl am Endgerät als auch auf einem Server. Das Endgerät kann den Server über einen Router erreichen. Um das Systemverhalten zu analysieren, haben wir eine Serie von Experimenten durchgeführt. Dabei haben wir uns auf die Informationen beschränkt,welche einem Endgerät immer zur Verfügung stehen und wir nicht davon ausgehen,dass der Server oder Router uns weitere Informationen zur Verfügung stellt. Da uns innere Prozesse vorenthalten sind handelt es sich hier um ein Black-Box System. Aus diesem Grund sind ausschließlich Informationen über das eigene Gerät verfügbar, sowie Informationen zum verbundenen Router. In unseren Experimenten betrachten wir verschiede Ausgangslagen. Diese unterscheiden sich von mehreren Router und Server,unterschiedliche Umgebungsbedingungen, sowie unterschiedliche Ausgangsbelastungen am Endgerät. Ziel dieser Experimente ist es Leistungseigenschaften der KI-Modells am Endgerät zu evaluieren und mit dem Verarbeiten am Server zu vergleichen. Durch die Analyse soll das abarbeiten von KI-Modell Anfragen im ‘Erweiterter Realität‘ Bereich optimiert werden.Die Daten, welche wir durch unsere Experimente sammeln, verwenden wir, um verschiedene Offloading-Ansätze zu erstellen. Diese unterscheiden sich in der Anzahl der Eingabeparameter und in der Komplexität. Mit den ersten Ansätzen sammeln wir grundlegende Informationen um die effektivität unserer Offloading-Ansätze zu überprüfen. Die Ergebnisse zeigen, dass es nicht ausreicht sich auf die Netzwerkinformationen zu verlassen.Aus diesem Grund sind die weiteren Ansätze ressourcen bewusst. Dies bedeutet, dass zusätzlich zu den vorhanden Netzwerkinformationen auch Hardwareinformationen, wiedie derzeitige CPU Auslastung, des eingenen Gerätes genutzt werden. Unter den Ansätzen befindet sich einer mit einem Entscheidungsbaum, sowei einer welcher mit KI-Modellenarbeitet. Ziel ist es KI-Modelle zu generieren, welche den Ist-Zustand richtig evaluieren können. Dabei muss das KI-Modell die interne Leistung des Endgerätes, die Netzwerkleistung und Rechenauslastung interpretieren und dementsprechend handeln, mit dem Ziel die Leistung im dezentralen System zu verbessern um den KI-Anwendungsanforderungen gerecht zu werden.
description: With the increasing prevalence of artificial intelligence (AI) applications, the strain oncloud processing resources has become a notable bottleneck. This requires solutions that can alleviate this strain, particularly as applications increasingly demand faster responsetimes. Edge computing has emerged as a viable solution to address these challenges by offloading computational tasks to devices closer to the end-user. Edge computing not only offers reduced latency due to its proximity to end devices but also provides enhanced privacy protection. However, the heterogeneity and limited resources of edge devices poses ignificant challenges compared to cloud resources. In this thesis, we focus on evaluating a scenario in which an end device is tasked with processing images using a semantic segmentation model (SSM). A SSM is deployed on the end device and also on a remote server, to which clients can offload their images through an access point (AP). Due to limited network conditions and poor client performance, offloading tasks is not always feasible, but relying on the client alone is also inefficient. Our offloading strategies aim to improve overall performance by balancing these limitations. We conduct a series of experiments in a black-box manner in which only information about the end device andits connection to the AP is available. Our experiments involve various scenarios. These scenarios differentiate in diverse AP, diverse servers, varying environmental conditions,and different load on the client. Through these experiments, our aim is to gain insight into the performance characteristics of the SSM running on the end devices and to compare their efficacy with the models deployed on remote servers. The data gathered from these experiments will be used to construct different offloading approaches. They differ in the number of input features and in their complexity. The first approaches build a baseline that shows that the use of network conditions alone is not sufficient for the offloading decision. Based on that, we formulate two resource-aware offloading approaches as well,which use hardware resources of the client combined with network information. The first one works with a decision tree model and the other one works with a selected MLmodel. The approaches are compared with each other. The goal is to identify models that demonstrate remarkable effectiveness in evaluating the current state of edge devices and guiding appropriate actions. Using these insights and deploying efficient machinelearning models, we aim to optimize the performance of edge computing systems andenhance their overall effectiveness in meeting the demands of AI applications. With that, the standard deviation can be improved and therefore increase the stability of the response times for the requests.