Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Technologie de l'Internet des objets

Créer des applications IoT efficaces avec tinyML et le machine learning automatisé

L'IoT permet une surveillance continue des environnements et des machines à l'aide de minuscules capteurs. Les progrès des technologies de capteurs, des microcontrôleurs et des protocoles de communication ont rendu possible la production en série de plates-formes IoT, avec de nombreuses options de connectivité, à des prix abordables. En raison du faible coût du matériel IoT, les capteurs sont déployés à grande échelle dans les lieux publics, les résidences et sur les machines.

Ces capteurs surveillent les propriétés physiques associées à leurs environnements de déploiement, 24h/24 et 7j/7, et génèrent une énorme quantité de données. Par exemple, les accéléromètres et les gyroscopes déployés sur une machine tournante enregistrent en permanence les modèles de vibration et la vitesse angulaire du rotor attaché à l'arbre. Des capteurs de qualité de l'air surveillent en permanence les polluants gazeux dans l'air, à l'intérieur ou à l'extérieur. Les microphones d'un babyphone sont toujours à l'écoute. Les capteurs à l'intérieur des montres intelligentes mesurent en permanence les paramètres de santé vitaux. De même, divers autres capteurs comme le magnétomètre, la pression, la température, l'humidité, la lumière ambiante, etc., mesurent les conditions physiques partout où ils sont déployés.

Les algorithmes d'apprentissage automatique (ML) permettent de découvrir des modèles intéressants dans ces données, qui dépassent la compréhension de l'analyse et de l'inspection manuelles. La convergence des appareils IoT et des algorithmes ML permet une large gamme d'applications intelligentes et des expériences utilisateur améliorées, rendues possibles par une inférence d'apprentissage automatique à faible consommation, faible latence et légère, c'est-à-dire tinyML. De nombreux secteurs industriels sont en train d'être révolutionnés par cette convergence, comme le montre la figure 1, y compris, mais sans s'y limiter, les technologies portables, la maison intelligente, les usines intelligentes (Industrie 4.0), l'automobile, la vision industrielle et d'autres appareils électroniques grand public intelligents.

tinyML avec apprentissage automatique automatisé

Les algorithmes de ML déployés sur de minuscules microcontrôleurs (MCU) dans les appareils IoT sont particulièrement intéressants en raison de multiples avantages :

cliquez pour l'image en taille réelle

Figure 1 :tinyML ajoute des fonctionnalités avancées aux appareils IoT traditionnels (Source :Qeexo)

L'apprentissage automatique automatisé à l'aide de données de capteurs implique les étapes décrites dans la figure 2. La configuration des capteurs et la collecte de données de qualité pour l'application ML cible sont terminées avant ces étapes. Une plate-forme d'apprentissage automatique automatisée telle que Qeexo AutoML gère l'ensemble du flux de travail pour la création de modèles d'apprentissage automatique légers et hautes performances pour les MCU de classe Arm Cortex-M0 à M4 et d'autres environnements contraints.

cliquez pour l'image en taille réelle

Figure 2 : Flux de travail Qeexo AutoML (Source :Qeexo)

tinyML avec l'architecture ARM® Cortex™ M0+

La prolifération des technologies IoT et les exigences de déploiement à grande échelle des capteurs repoussent encore plus les limites des architectures de microcontrôleurs et du calcul d'apprentissage automatique. Par exemple, les microcontrôleurs Arm Cortex M0+ fonctionnant à 48 MHz sont largement utilisés sur les cartes de capteurs conçues pour les applications IoT en raison de leur faible consommation d'énergie. Il ne consomme que 7 mA par broche d'E/S par rapport à la version Cortex M4 qui fonctionne à 64 MHz et consomme 15 mA.

La faible consommation d'énergie des MCU Cortex-M0+ se fait au prix d'une mémoire et d'un profil de calcul réduits. Les MCU M0+ ne peuvent effectuer que des opérations mathématiques à virgule fixe 32 bits, ne prennent pas en charge l'arithmétique de saturation et n'ont pas les capacités DSP. Basé sur ce MCU, l'Arduino Nano 33 IoT, l'une des plates-formes IoT les plus populaires, est livré avec seulement 256 Ko de flash et 32 ​​Ko de SRAM. En revanche, un module de capteur populaire avec architecture Cortex M4, l'Arduino Nano 33 BLE Sense peut effectuer des opérations à virgule flottante 32 bits, prend en charge le DSP et l'arithmétique de saturation, ainsi que quatre fois le flash et huit fois la SRAM.

Le déploiement d'algorithmes d'apprentissage automatique sur le M0+ est de loin plus difficile que le déploiement sur un M4 en raison de ces trois principaux défis :

Cadre AutoML M0+

Développé pour relever ces défis, Qeexo AutoML fournit un pipeline d'apprentissage automatique à virgule fixe, hautement optimisé pour l'architecture Arm Cortex M0+. Ce pipeline comprend la gestion des données de capteur dans le calcul de caractéristiques à virgule fixe et à virgule fixe et l'inférence à virgule fixe pour les algorithmes d'ensemble basés sur des arbres tels que Gradient Boosting Machine (GBM), Random Forest (RF) et eXtreme Gradient Boosting ( algorithmes XGBoost). Qeexo AutoML encode les paramètres du modèle d'ensemble dans des structures de données très efficaces et les combine avec une logique d'interprétation qui se traduit par une inférence extrêmement rapide sur la cible M0+. La figure 3 articule le pipeline d'apprentissage automatique à virgule fixe développé par Qeexo pour la cible embarquée Arm Cortex M0+.

cliquez pour l'image en taille réelle

Figure 3 : Pipeline d'inférence Qeexo AutoML M0+ (Source :Qeexo)

Qeexo AutoML effectue une compression et une quantification des modèles en instance de brevet pour réduire davantage l'empreinte mémoire des modèles d'ensemble développés sans compromettre les performances de classification. La figure 4 décrit le processus d'entraînement Qeexo AutoML pour la cible intégrée Cortex M0+.

cliquez pour l'image en taille réelle

Figure 4 : Pipeline de formation Qeexo AutoML M0+ (Source :Qeexo)

Élagage intelligent

L'élagage intelligent permet la compression des modèles sans perte de performances. En termes simples, Qeexo AutoML crée d'abord un modèle d'ensemble complet tel que recommandé par un optimiseur d'hyperparamètres, puis sélectionne intelligemment uniquement les boosters les plus puissants.

Cette approche consistant à développer un modèle plus grand, puis à l'élaguer intelligemment pour le déploiement cible est beaucoup plus efficace que de créer un modèle plus petit en premier lieu. Un modèle initial plus grand donne la possibilité de sélectionner des boosters (ou arbres) hautes performances qui se traduisent finalement par de meilleures performances du modèle.

Comme le montre la figure 5, le modèle d'ensemble compressé est d'environ 1/10 ème la taille du modèle complet tout en ayant des performances de validation croisée plus élevées. (L'axe X représente le nombre d'arbres (ou booster) dans le modèle d'ensemble et l'axe Y représente les performances de validation croisée.) Notez que notre méthode d'élagage intelligente Qeexo AutoML sélectionne uniquement les 20 boosters les plus puissants, ce qui entraîne une compression de 90 % dans la taille du modèle.

cliquez pour l'image en taille réelle

Figure 5 : Élagage intelligent du modèle Qeexo AutoML (Source :Qeexo)

Quantification du modèle d'ensemble

Qeexo AutoML effectue une quantification post-formation des algorithmes d'ensemble. La quantification post-entraînement est une fonctionnalité banalisée pour les modèles basés sur les réseaux de neurones et est prise en charge prête à l'emploi dans des frameworks tels que TensorFlow Lite. Cependant, la quantification des modèles d'ensemble est la technique en instance de brevet de Qeexo qui peut réduire encore plus la taille du modèle tout en améliorant la latence au niveau du MCU avec peu ou pas de dégradation des performances du modèle. Le pipeline Qeexo AutoML M0+ génère des modèles d'ensemble à virgule fixe représentés avec une précision de 32 bits. Des options supplémentaires pour la quantification 16 bits et 8 bits peuvent réduire davantage les modèles de ½ et ¼, respectivement, avec une accélération de 2x à 3x.

Exemples de cas d'utilisation de tinyML

Quelles sont les applications ou les cas d'utilisation de tinyML ? Les possibilités sont illimitées et nous en soulignons ici quelques-unes :

  1. Nous voulons créer un mur intelligent compatible avec l'IA sur lequel les utilisateurs peuvent appuyer pour contrôler l'éclairage (allumer/éteindre et modifier l'intensité de la lumière). Nous pouvons définir les gestes de la main associés au ON/OFF et au contrôle de l'intensité, puis collecter et étiqueter les données gestuelles à l'aide d'un module accéléromètre et gyroscope fixé au dos du mur. Avec ces données étiquetées, Qeexo AutoML peut utiliser des algorithmes d'IA pour créer un modèle permettant de détecter les gestes « frapper » et « essuyer » sur le mur pour contrôler l'éclairage. Dans la vidéo ci-dessous, vous pouvez voir un prototype de mur intelligent développé par Qeexo AutoML en quelques minutes.
  2. En utilisant l'apprentissage automatique et l'IoT, nous voulons nous assurer que les envois sont traités avec le plus grand soin conformément aux directives d'expédition. Dans la vidéo ci-dessous, vous pouvez voir comment une boîte d'expédition compatible avec l'IA est capable de détecter comment l'expédition a été traitée de la source à la destination.
  3. La convergence de l'IA avec l'IoT peut également créer des plans de travail de cuisine intelligents. La vidéo ci-dessous montre des modèles construits par Qeexo AutoML pour détecter divers appareils de cuisine.
  4. La surveillance des machines est l'un des cas d'utilisation les plus prometteurs de tinyML. Plusieurs modèles de pannes de la machine sont détectés dans la vidéo ci-dessous.
  5. La détection d'anomalies est un autre scénario qui bénéficie grandement de l'apprentissage automatique. Souvent, il est difficile de collecter des données pour divers défauts dans un environnement industriel, alors qu'il est relativement facile de surveiller l'état de fonctionnement sain de la machine. En observant simplement l'état de fonctionnement sain, les algorithmes Qeexo AutoML peuvent développer des systèmes d'IA pour la détection d'anomalies, comme indiqué dans la partie 1 (ci-dessous), la partie 2, la partie 3 et la partie 4.

  6. La reconnaissance d'activité à l'aide de capteurs intégrés dans les appareils portables est un autre cas d'utilisation qui profite à notre vie quotidienne. La vidéo ci-dessous montre comment créer une solution de reconnaissance d'activité à l'aide de Qeexo AutoML en quelques minutes.

Technologie de l'Internet des objets

  1. Créer des applications hybrides blockchain/cloud avec Ethereum et Google
  2. La chaîne d'approvisionnement et l'apprentissage automatique
  3. Émetteurs-récepteurs bidirectionnels 1G pour les fournisseurs de services et les applications IoT
  4. Capteurs et processeurs convergent pour les applications industrielles
  5. Créer des robots avec Raspberry Pi et Python
  6. Conduire la fiabilité et améliorer les résultats de la maintenance avec l'apprentissage automatique
  7. IoT et éducation :Combler la fracture numérique
  8. Améliorer la surveillance de la pollution de l'air avec des capteurs IoT
  9. IdO industriel et les blocs de construction pour l'industrie 4.0