banner
Centre d'Information
Matière première de bonne qualité, contrôle de qualité strict

TinyML : Apprentissage continu avec LwM2M

Oct 15, 2023

Alors que les MCU deviennent de plus en plus puissants, les modèles d'apprentissage automatique peuvent être conçus pour utiliser moins de ressources. Cela permet la mise en œuvre de TinyML ; modèles d'apprentissage en profondeur pouvant s'exécuter sur des appareils IoT à ressources limitées. TinyML peut être utilisé pour analyser localement les données brutes des capteurs, ce qui réduit ou supprime le besoin d'envoyer des données vers le cloud, réduit la consommation de la batterie et préserve la confidentialité des données.

Néanmoins, la mise en œuvre de solutions IoT intelligentes ne repose pas uniquement sur le modèle ML lui-même. Cela implique des défis tels que la mise en œuvre d'un apprentissage continu, l'activation de la communication sans fil à faible consommation, la gestion des appareils à distance, la garantie d'une communication sécurisée, la mise à jour du micrologiciel (sans fil) et l'activation de l'interopérabilité des appareils.

"TinyML peut être utilisé pour analyser localement les données brutes des capteurs, ce qui réduit ou supprime le besoin d'envoyer des données vers le cloud, réduit la consommation de la batterie et préserve la confidentialité des données."

LwM2M est une norme de communication de couche application qui simplifie la messagerie et la gestion des appareils pour les appareils IoT. Le protocole dicte un format de données et définit les mécanismes de gestion des périphériques et les processus standardisés pour les mises à jour du micrologiciel en direct (FOTA). Le protocole est bien adapté aux normes LPWAN telles que NB-IoT et LTE-M.

Alors que TinyML fournit l'intelligence de l'appareil (à l'aide d'outils tels que Edge Impulse ou Cartesiam.ai), le protocole LwM2M fournit la connectivité, la communication standardisée et la gestion de l'appareil. Lorsqu'ils sont combinés, ils créent une solution holistique pour les appareils IoT intelligents.

L'analyse basée sur le cloud des données brutes des capteurs d'un appareil est inefficace en raison du volume de données que l'appareil doit transmettre. Un moyen plus efficace consiste à traiter les données des capteurs directement sur l'appareil à l'aide de TinyML. Par exemple, l'analyse des valeurs X, Y et Z de l'accéléromètre peut détecter des mouvements ou des vibrations complexes qui pourraient donner des informations précieuses, permettant des cas d'utilisation tels que la maintenance prédictive, la surveillance de l'utilisation de biens de valeur ou la classification des mouvements de personnes ou d'animaux.

De nos jours, de plus en plus de capteurs intelligents sont développés. En plus de leurs capacités de détection, les capteurs intelligents sont livrés avec un MCU intégré qui exécute le modèle TinyML et communique uniquement les modèles détectés au MCU principal de l'appareil. Ces capteurs intégrés TinyML sont appelés Sensor 2.0 Paradigm par le professeur Vijay Janapa Reddi (Harvard University) lors de sa récente conférence au TinyML Summit. Les capteurs intelligents simplifient la mise en œuvre de TinyML car ils permettent de moderniser les appareils existants avec les capacités de TinyML sans avoir à reconcevoir le micrologiciel intégré. De plus, il peut résoudre les problèmes de confidentialité en raison du véritable isolement des données brutes des capteurs. Les capteurs intelligents peuvent analyser les voix ou les images de la caméra tout en garantissant la confidentialité des personnes, car les données ne fuient pas vers le MCU principal de l'appareil.

L'un des principaux défis d'aujourd'hui est de maintenir la fiabilité du modèle TinyML après le déploiement. Souvent, les ensembles de données utilisés à des fins de formation diffèrent des données du monde réel, ce qui conduit à des modèles inexacts. De plus, le contexte environnemental peut changer dans le temps (par exemple en raison du décalibrage des machines industrielles, ou des conditions climatiques changeantes) conduisant à la détérioration de la qualité du modèle.

L'apprentissage continu fait référence à la capacité des modèles TinyML à s'adapter au fil du temps. Cela peut être accompli en apprenant à partir de nouveaux ensembles de données sans qu'il soit nécessaire de recycler le modèle à partir de zéro. Bien que les techniques pour réaliser l'apprentissage continu soient bien connues, les implémentations pratiques manquent souvent lors de l'exécution des modèles sur des appareils à ressources limitées. Souvent, cela a à voir avec une couche de gestion des appareils manquante qui prend en charge la gestion du cycle de vie du modèle ML. LwM2M peut être le chaînon manquant pour réaliser un apprentissage continu car il est livré avec un support natif pour les configurations à distance et les mises à jour du micrologiciel. À l'aide de méthodes éprouvées, les modèles ML peuvent être mis à jour en continu sans avoir à accéder physiquement à chaque appareil pour mettre à jour son micrologiciel.

Les solutions TinyML pour les appareils IoT à ressources limitées sont un catalyseur pour le développement de solutions intelligentes. Pour aller au-delà de la phase POC actuelle et commencer à déployer des applications TinyML réelles, il est nécessaire de fournir des mécanismes pour une communication efficace, une gestion des appareils et des micrologiciels et une connectivité sécurisée. L'utilisation du protocole LwM2M pour gérer les modèles TinyML et assurer la connectivité est une voie vers la standardisation de TinyML et l'enrichissement de l'écosystème de solutions IoT intelligentes.

Une solution TinyML a été conçue en utilisant la norme LwM2M. Le Thingy:91 est un appareil de développement qui utilise le SiP nRF9160 de Nordic Semiconductor. Il exécute le système d'exploitation Zephyr OS et a été formé pour détecter trois modèles de mouvement différents, comme indiqué dans le visuel ci-dessous.

Les étapes de mise en œuvre du concept présenté sont les suivantes :

L'exemple utilise la plate-forme Edge Impulse pour collecter les données de l'accéléromètre Thingy:91, former le classificateur ML et générer des bibliothèques autonomes pour C++. La bibliothèque contenant le modèle TinyML peut s'exécuter sur l'appareil et contrôler la détection du modèle de signalisation LED. Le client Anjay LwM2M fournit une couche de connectivité pour la solution, gérant les problèmes technologiques de bas niveau liés à la communication et à la transmission sécurisée des données.

Enfin, l'appareil est enregistré sur le serveur LwM2M où les données sont stockées et visualisées. À l'aide du portail Coiote IoT Device Management, l'appareil peut être chargé d'informer le serveur chaque fois qu'un modèle spécifique est détecté ou de réduire la fréquence à une fois toutes les quelques secondes, minutes ou heures et d'envoyer un compteur indiquant le nombre de fois qu'un modèle est détecté. a été détécté.