Apprentissage automatique avec tinyML dans les réseaux logiciels

Encadrants

  • Leonardo Linguaglossa
  • Emails: Leonardo.Linguaglossa@telecom-paris.fr
  • Bureaux: --

Nombre d'étudiant par instance du projet:

  • Minimum: 4
  • Maximum: 5

Nombre d'instances du projet :

1

Sigles des UE couvertes et/ou Mots-clés :

RES101, INF101, AI, Data science

Logo/Favicon

project image

Description du projet :

TinyML  [ 1 ] fait référence au domaine de l’apprentissage automatique (ML) qui se concentre sur le déploiement et l’exécution de modèles d’apprentissage automatique sur des appareils aux ressources limitées, tels que des microcontrôleurs, des systèmes embarqués et d’autres dispositifs avec ressources limitées.

Par exemple, dans un système cloudifié, TinyML met l’accent sur le déploiement de modèles d’apprentissage automatique directement sur les appareils dans le “edge” plutôt que de s’appuyer sur des serveurs basés sur le cloud. Cela est particulièrement important pour les applications où le traitement en temps réel, la faible latence et la confidentialité sont essentiels. Par contre, l’accès aux ressources de calcul est très limité: en particulier, l’accès à GPUs/TPUs est impossible, et les modèles IA doivent etre en modalité pure software. Ceci est typiquement obtenu avec des outils développés en langage C  [ 2 ] . En outre, si le traitement ML doit coexister avec traitement de paquets à cause de la connectivité réseau, les performances des deux composants seront impactés.

Dans ce projet, les élèves évalueront des approches d’apprentissage automatique en pure software sur des dispositifs à ressources limités (par exemple, des laptops ou RaspberryPi). Les cas d’usage sont à définir. Les métriques pour l’analyse des performances seront :

  • Temps de training.

  • Temps d’exécution de l’algorithme.

  • Nombre de calcul/unité de temps.

  • Efficacité de l’IA (accuracy, ROC score, ...).

  • ...

Par la suite, un système combinant l’apprentissage automatique et les réseaux informatiques (incluant la transmission et la réception de paquets, ainsi que l’analyse de données en temps réel) sera mis en place.

Objectifs du projet :

L’objectif à la fin du projet consiste à évaluer de manière approfondie l’impact d’un système combinant l’apprentissage automatique (ML) et l’I/O dans les réseaux virtualisés. Pour la première étape exploratoire, un scénario simple tel que la classification d’images sera pris en considération; différentes alternatives (par exemple, réseaux neuronaux, forêts aléatoires, ...) seront examinées pour effectuer cette classification.

Dans la deuxième phase, le composant réseau sera déployé en parallèle, suivi d’une collecte de données et l’entraînement/exécution du modèle ML.

Enfin, lors de la phase finale, une analyse des données sera présentée en utilisant les informations obtenues au cours de ces expériences.

Références bibliographiques:

1

Colby R Banbury, Vijay Janapa Reddi, Max Lam, William Fu, Amin Fazel, Jeremy Holleman, Xinyuan Huang, Robert Hurtado, David Kanter, Anton Lokhmotov, et al. Benchmarking tinyml systems: Challenges and direction. arXiv preprint arXiv:2003.04821, 2020.

2

Lewis Van Winkle. genann: A simple neural network library for c/c++. https://github.com/codeplea/genann, Last update: 2020. Accessed on: 15/12/2023.