Ingénierie IAIngénierie IA
Ingénierie IA10 min de lecture

Un amputé avec une main contrôlée par l’IA ! 🦾

Grâce à cette interface nerveuse assistée par l’IA, un amputé peut contrôler une main neuroprosthétique avec une dextérité et une intuitivité proches du naturel.

Mis à jour le 27 avr. 2021
Un amputé avec une main contrôlée par l’IA ! 🦾
Sommaire

(facultatif) Vous pouvez regarder la vidéo sur cet article à la fin !

Dans cet article, je vais parler d’une application des Transformers choisie au hasard parmi les 600 nouveaux articles scientifiques publiés cette semaine, qui n’ajoute pas grand-chose au domaine, mais améliore la précision de 0,01 % sur un benchmark en ajustant quelques paramètres.

J’espère que cette introduction ne vous enthousiasme pas trop, parce que je voulais simplement me moquer de la popularité récente des Transformers. Bien sûr, ils sont incroyables et très utiles dans de nombreux cas, et la plupart des chercheurs se concentrent sur eux. Mais il existe d’autres sujets en IA tout aussi passionnants, sinon plus ! Vous pouvez être certain que je présenterai les avancées intéressantes de l’architecture Transformer appliquée au NLP, à la vision par ordinateur ou à d’autres domaines, puisqu’elle me semble très prometteuse. Cela dit, les nouveaux articles qui ne lui apportent que de petites modifications m’intéressent moins.

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

À titre d’exemple, voici quelques articles publiés en mars qui appliquent les Transformers à la classification d’images. Comme ils sont tous assez semblables et que j’en ai déjà présenté un ci-dessous, je pense qu’un aperçu de l’état actuel des Transformers en vision par ordinateur suffit.

[

Les Transformers remplaceront-ils les CNN en vision par ordinateur ?

Cet article porte sur ce qui sera probablement la prochaine génération de réseaux neuronaux pour toutes les applications de vision par ordinateur : l’architecture Transformer. Vous avez certainement déjà entendu parler de cette architecture…

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

](https://pub.towardsai.net/will-transformers-replace-cnns-in-computer-vision-55657a196833)

Passons maintenant au vrai sujet de cet article ! Il n’a aucun lien avec les Transformers ni même avec les GAN dans ce cas-ci. Aucun mot à la mode, sauf peut-être « Cyberpunk », et pourtant, c’est l’une des applications de l’IA les plus cool que j’ai vues depuis longtemps ! Elle s’attaque à un problème réel et peut changer la vie de nombreuses personnes. Bien sûr, c’est moins glamour que de transformer votre visage en personnage d’anime ou de dessin animé, mais c’est beaucoup plus utile.

Je vous présente « Portable, Self-Contained Neuroprosthetic Hand with Deep Learning-Based Finger Control », de Nguyen, Drealan et coll. Ou, pour reprendre les mots de l’un des auteurs, le bras « Cyberpunk ».

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

Le cyborg en action ! Photo de Nguyen, Drealan et coll. (2021), republiée avec permission.

Avant de plonger dans le sujet, je voulais simplement vous rappeler l’événement gratuit NVIDIA GTC de la semaine prochaine, avec de nombreuses nouvelles passionnantes liées à l’IA, ainsi que le concours du Deep Learning Institute que j’organise si vous vous abonnez à mon infolettre. Si cela vous intéresse, j’ai donné plus de détails sur ce concours dans ma vidéo précédente, ci-dessous.

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

Passons maintenant directement à ce nouvel article scientifique unique et incroyable.
Il applique l’apprentissage profond à une main neuroprosthétique afin de permettre le contrôle en temps réel des mouvements de chaque doigt, le tout directement dans le bras ! Avec une latence de seulement 50 à 120 millisecondes et une précision de 95 à 99 %, un amputé qui a perdu sa main depuis 14 ans peut bouger ses doigts de cyborg comme ceux d’une main normale ! Ces travaux montrent que le déploiement d’applications de réseaux neuronaux profonds directement dans des appareils biomédicaux portables est non seulement possible, mais aussi extrêmement puissant !

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

Le cyborg en action ! Photo de Nguyen, Drealan et coll. (2021), republiée avec permission.

Ici, l’apprentissage profond sert à traiter et à décoder les données nerveuses recueillies auprès de l’amputé afin de produire des mouvements précis des doigts. Le problème est que, pour obtenir une faible latence, ce modèle d’apprentissage profond doit fonctionner sur un appareil portable beaucoup moins puissant que nos GPU. Heureusement, des avancées récentes dans le matériel compact destiné à l’apprentissage profond permettent de résoudre ce problème.

Dans ce cas, les chercheurs ont utilisé le module NVIDIA Jetson Nano, conçu précisément pour déployer l’IA dans des applications autonomes. Il leur a permis d’utiliser des GPU et de puissantes bibliothèques logicielles comme TensorFlow et PyTorch directement dans le bras. Comme ils l’écrivent : « Cela offre le meilleur compromis entre la taille, la consommation d’énergie et la performance pour notre implémentation du décodeur neuronal. » C’était l’objectif de cet article scientifique : relever le défi du déploiement efficace de décodeurs neuronaux fondés sur l’apprentissage profond dans un appareil portable utilisé dans des applications réelles en vue d’un usage clinique à long terme.

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

La main neuroprosthétique. Photo de Nguyen, Drealan et coll. (2021), republiée avec permission.

Bien sûr, je n’entrerai pas dans les nombreux détails techniques puisque je ne suis pas un expert, notamment la connexion entre les fibres nerveuses et la bioélectronique, la conception des micropuces qui permet d’enregistrer et de stimuler les nerfs simultanément, ou l’implémentation logicielle et matérielle nécessaire à ce système de décodage moteur en temps réel. Vous trouverez une excellente explication dans les articles scientifiques associés si vous souhaitez en apprendre davantage. Tous les liens se trouvent dans les références. Mais examinons d’un peu plus près la partie apprentissage profond de cette création complètement folle. Leur innovation consiste ici à optimiser le décodage moteur par apprentissage profond afin de réduire autant que possible la complexité de calcul sur la plateforme Jetson Nano.

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

Le NVIDIA Jetson Nano en détail. Photo de Nguyen, Drealan et coll. (2021), republiée avec permission.

Cette image donne un aperçu du flux de traitement des données sur le Jetson Nano. D’abord, les données, sous forme de signaux des nerfs périphériques provenant du bras de l’amputé, sont envoyées à la plateforme. Elles sont ensuite prétraitées. Cette étape est essentielle pour découper les données neuronales brutes en essais et en extraire les principales caractéristiques temporelles avant de les fournir aux modèles. Ces données prétraitées correspondent aux principales caractéristiques de 1 seconde de données neuronales passées provenant de l’amputé, après avoir retiré les sources de bruit. Elles sont ensuite envoyées au modèle d’apprentissage profond, qui produit une sortie finale contrôlant le mouvement de chaque doigt. Notez qu’il y a cinq sorties, une pour chaque doigt.

Pour présenter rapidement le modèle utilisé, comme vous pouvez le voir, il commence par une couche convolutive. Elle sert à repérer différentes représentations des données en entrée. Ici, vous voyez trois fois le nombre 64, ce qui signifie que 64 convolutions sont réalisées avec différents filtres, donc 64 représentations différentes. Ces filtres sont les paramètres du réseau appris durant l’entraînement afin de bien contrôler la main une fois le modèle déployé. Nous savons ensuite que le temps est très important, puisque nous voulons des mouvements fluides des doigts. Les chercheurs ont donc choisi des unités récurrentes à portes, ou GRU, pour représenter cette dépendance temporelle lors du décodage des données. Les GRU permettent au modèle de comprendre ce que la main faisait durant la dernière seconde, soit ce qui est d’abord encodé, et ce qu’elle doit faire ensuite, soit ce qui est décodé. Pour rester simple, les GRU sont une version améliorée des réseaux neuronaux récurrents, ou RNN. Ils résolvent les problèmes de calcul rencontrés par les RNN avec les longues entrées en ajoutant des portes qui ne conservent que l’information pertinente des entrées précédentes dans le processus récurrent, plutôt que de diluer chaque nouvelle entrée. Le réseau peut essentiellement décider quelle information doit être transmise à la sortie. Comme dans les réseaux neuronaux récurrents, les données d’une seconde, ici sous forme de 512 caractéristiques, sont traitées de façon itérative par les blocs GRU répétés. Chaque bloc GRU reçoit l’entrée de l’étape actuelle et la sortie précédente afin de produire la sortie suivante. Nous pouvons voir les GRU comme une optimisation de l’architecture « de base » des réseaux neuronaux récurrents. Enfin, cette information décodée est envoyée à des couches linéaires, qui propagent essentiellement l’information et la condensent en probabilités pour chaque doigt.

Les chercheurs ont étudié de nombreuses architectures différentes, comme vous pouvez le lire dans leur article scientifique, mais celle-ci est le modèle le plus efficace sur le plan du calcul qu’ils ont pu créer, avec une précision incroyable de plus de 95 %.

Maintenant que nous comprenons bien le fonctionnement du modèle et que nous savons qu’il est précis, il reste quelques questions. Par exemple, qu’en pense la personne qui l’utilise ? La main semble-t-elle réelle ? Fonctionne-t-elle ? Bref, ressemble-t-elle à un vrai bras ?

Comme le patient l’a lui-même expliqué :

[Patient] J’ai l’impression qu’une fois ce système affiné et offert sous forme de produits finis, ses fonctions seront plus naturelles. Je pourrai accomplir les tâches quotidiennes sans penser à la position de la main ni au mode dans lequel je l’ai programmée. C’est comme si je voulais tendre la main et ramasser quelque chose : je tends simplement la main et je le ramasse. […] Savoir qu’elle fonctionne comme ma main valide pour les tâches quotidiennes… Je pense que nous allons y arriver. Je le crois vraiment !

Exemple visuel tiré de Un amputé avec une main contrôlée par l’IA !

Le cyborg en action ! Photo de Nguyen et Drealan et coll. (2021), republiée avec permission.

À mes yeux, ce sont les applications les plus incroyables sur lesquelles nous pouvons travailler avec l’IA.
Elles aident directement de vraies personnes à améliorer leur qualité de vie, et il n’y a rien de mieux que cela ! J’espère que vous avez aimé cette courte lecture. Vous pouvez regarder la version vidéo pour voir d’autres exemples de cette incroyable main de cyborg en mouvement !

Merci de m’avoir lu. Et, comme il le dit dans la vidéo ci-dessus, je dirai la même chose à propos de l’IA en général : « C’est complètement fou et cool » !


Si vous aimez mon travail et souhaitez rester à jour sur l’IA, vous devriez vraiment me suivre sur mes autres réseaux sociaux (LinkedIn, Twitter) et vous abonner à mon infolettre hebdomadaire sur l’IA !

Pour me soutenir :

  • La meilleure façon de me soutenir est de me suivre ici sur Medium ou de vous abonner à ma chaîne YouTube si vous préférez le format vidéo.
  • Soutenez mon travail sur Patreon
  • Rejoignez notre communauté Discord : Learn AI Together et partagez vos projets, articles scientifiques et meilleurs cours, trouvez des coéquipiers pour Kaggle, et bien plus encore !

Références

[1] Nguyen, Drealan et coll. (2021) A Portable, Self-Contained Neuroprosthetic Hand with Deep Learning-Based Finger Control : https://arxiv.org/abs/2103.13452

[2]. Luu, Nguyen et coll. (2021) Deep Learning-Based Approaches for Decoding Motor Intent from Peripheral Nerve Signals : https://www.researchgate.net/publication/349448928_Deep_Learning-Based_Approaches_for_Decoding_Motor_Intent_from_Peripheral_Nerve_Signals

[3]. Nguyen et coll. (2021) Redundant Crossfire: A Technique to Achieve Super-Resolution in Neurostimulator Design by Exploiting Transistor Mismatch : Page de recherche de l’Université du Minnesota

[4]. Nguyen, Xu et coll. (2020) A Bioelectric Neural Interface Towards Intuitive Prosthetic Control for Amputees : https://www.biorxiv.org/content/10.1101/2020.09.17.301663v1.full

Discussion

Commentaires

Chargement

Aucun compte requis. Votre nom et votre commentaire seront publics, alors n'incluez pas de renseignements privés. Consultez la page de confidentialité pour les détails.

Continuez à apprendre

Vous voulez le côté pratique de l'IA, sans le brouillard marketing ?

Je partage ce qui est utile sur YouTube, Substack et dans mes guides d'ingénierie IA.

FAQ

Que permet la main prothétique contrôlée par l’IA à son utilisateur ?

L’interface nerveuse traduit les mouvements voulus en un contrôle naturel et intuitif d’une main neuroprosthétique.

Comment la prothèse reçoit-elle les commandes de mouvement ?

Elle interprète les signaux provenant des nerfs de l’utilisateur et les associe aux mouvements de la main appris par le système.

Pourquoi la précision du modèle est-elle importante dans une neuroprothèse ?

Les mauvaises prédictions de mouvement nuisent directement au contrôle. L’interface doit donc classer les signaux nerveux de façon cohérente.

Quelle précision l’architecture efficace décrite dans l’étude a-t-elle atteinte ?

Le modèle retenu a dépassé 95 % de précision tout en étant l’architecture testée la plus efficace sur le plan du calcul.

Que faut-il évaluer au-delà de la précision annoncée ?

La fiabilité en conditions réelles, le temps de réponse, le confort et la performance pour différents mouvements comptent autant qu’un résultat de laboratoire.

Pourquoi le modèle fonctionne-t-il sur un Jetson Nano dans la prothèse ?

La main a besoin d’une inférence à faible latence sur un appareil portable. Le Jetson Nano offre un équilibre pratique entre taille, consommation d’énergie et performance du GPU.