Prendre de l’avance lors de l’apprentissage sur le bord

« Avec le Puissance de edge AI dans la paume de votre main, votre entreprise sera inarrêtable.

C’est ce que le marketing semble lire pour les entreprises d’intelligence artificielle. Tout le monde semble disposer d’analyses d’intelligence d’affaires basées sur l’IA à l’échelle du cloud à la périphérie. Bien que cela semble impressionnant, nous ne sommes pas convaincus que le charabia marketing signifie quoi que ce soit. Mais à quoi ressemble l’IA sur les appareils périphériques de nos jours ?

Être à la pointe signifie simplement que l’évaluation réelle de l’IA et peut-être même le réglage fin s’exécutent localement sur l’appareil d’un utilisateur plutôt que dans un environnement cloud. C’est un double gain, à la fois pour l’entreprise et pour l’utilisateur. La confidentialité peut être préservée plus facilement car moins d’informations sont transmises à un emplacement central. De plus, l’IA peut fonctionner dans des scénarios où un serveur quelque part peut ne pas être accessible ou fournir une réponse assez rapidement.

Google et Apple ont leurs propres bibliothèques d’IA, ML Kit et Core ML, respectivement. Il existe des outils pour convertir les modèles Tensorflow, PyTorch, XGBoost et LibSVM dans des formats que CoreML et ML Kit comprennent. Mais d’autres solutions tentent de fournir une couche indépendante de la plate-forme pour la formation et l’évaluation. Nous avons également déjà couvert Tensorflow Lite (TFL), une version allégée de Tensorflow, qui a considérablement mûri depuis 2017.

Pour cet article, nous examinerons PyTorch Live (PTL), un cadre allégé permettant d’ajouter des modèles PyTorch aux smartphones. Contrairement à TFL (qui peut fonctionner sur RPi et dans un navigateur), PTL se concentre entièrement sur Android et iOS et offre une intégration étroite. Il utilise un environnement natif réactif, ce qui signifie qu’il est fortement orienté vers le monde node.js.

Aucun nuage requis

En ce moment, PTL est très tôt. Il fonctionne sur macOS (mais pas de support Apple Silicon), mais la compatibilité Windows et Linux est apparemment à venir. Il est livré avec une CLI pratique qui rend le démarrage d’un nouveau projet relativement indolore. Après l’installation et la création d’un nouveau projet, l’expérience est fluide, quelques commandes s’occupant de tout. Le didacticiel était simple, et bientôt nous avons eu une démo qui pouvait reconnaître les nombres.

Il était temps d’aller plus loin dans le tutoriel et de créer un modèle personnalisé. À l’aide de l’ensemble de données EMNIST, nous avons créé un modèle resnet9 entraîné avec l’ensemble de données de lettres à l’aide d’un référentiel GitHub utile. Une fois que nous avions un modèle, il était assez simple d’utiliser les utilitaires PyTorch pour exporter le modèle vers l’environnement lite. Avec quelques ajustements au code (qui se recharge en direct sur le simulateur), il a reconnu les caractères au lieu des chiffres.

Nous soupçonnons que quelqu’un d’un peu plus imprégné du monde de l’apprentissage automatique serait capable d’aller plus loin que nous. PTL a d’autres démonstrations passionnantes, telles que la reconnaissance vocale sur l’appareil et la segmentation et la reconnaissance vidéo en direct. Dans l’ensemble, l’expérience a été facile et les scénarios que nous avons essayés étaient relativement faciles à mettre en œuvre.

Si vous êtes déjà dans un monde réactif pour smartphone, PTL semble simple à intégrer et à utiliser. En dehors de cela, beaucoup de choses ne sont pas prises en charge. Tensorflow Lite était également limité lorsque nous l’avons couvert pour la première fois et a depuis mûri et acquis de nouvelles plates-formes et fonctionnalités, devenant une bibliothèque puissante avec de nombreuses plates-formes prises en charge. En fin de compte, nous verrons ce que devient PyTorch Live. Les GPU et les moteurs neuronaux sont déjà pris en charge dans la branche bêta.