Retour au fil

J'ai entraîné un transformer de détection de langue des signes — et vous pouvez le faire aussi

Nicholas Renotte reconstruit son détecteur de langue des signes autour d'un transformer, l'entraîne sur un jeu de données de trois signes collecté à la main, et le met en production sur un ordinateur portable sans GPU externe — capture des données, annotation dans Label Studio, entraînement DETR et inférence en temps réel en une seule boucle.

Importé dans Nodesdaily : (UTC+03:00)
Voir sur YouTube — o_MGqeFMAGE
Options de lecture

La lecture vocale n’est pas disponible dans ce navigateur.

Loupe à concepts

Choisissez un terme technique de cette vue pour lire sa définition générale, un exemple pédagogique et son usage dans l’article.

Aucun terme de notre glossaire n’a été trouvé dans cette vue. Le glossaire ne couvre pas encore tous les termes.

Nicholas Renotte revient à la détection de langue des signes quatre ans après son premier modèle, en reconstruisant cette fois toute la bibliothèque autour d'un détecteur à transformer. Sa promesse est audacieuse : collecter vos propres données et entraîner un modèle personnel en moins de quarante minutes. Cette refonte répond aussi aux spectateurs qui ont rencontré des problèmes de dépendances avec l'ancienne base de code.

Le cœur du système est un Detection Transformer dans le style de l'article de 2020 : un backbone ResNet-50 extrait les caractéristiques de l'image, des encodages positionnels sont ajoutés, et le résultat passe par des couches d'encodeur et de décodeur transformer. Un affichage torchinfo montre 26,9 millions de paramètres entraînables, avec la profondeur de l'encodeur, celle du décodeur, le nombre de têtes d'attention et la taille cachée configurables. Deux têtes de prédiction sortent à la fin : l'une nomme la classe parmi hello, I love you et thank you, l'autre dessine la boîte sur l'image.

L'entraînement repose sur l'appariement hongrois, une routine d'affectation linéaire qui associe l'ensemble fixe de 25 requêtes d'objets du modèle aux vraies boîtes. Trois termes de perte sont pondérés et sommés : un terme de classification, un terme de régression des coordonnées de boîte et un terme de recouvrement généralisé qui intègre la géométrie dans l'objectif. Un petit exemple commenté dans le dossier utilitaires permet aux curieux de manipuler directement la logique d'appariement.

La victoire la plus rapide arrive dans les cinq premières minutes : cloner le dépôt, l'ouvrir dans VS Code, lancer le script temps réel avec le runner uv, et les poids fournis commencent immédiatement à prédire depuis la webcam. Ces poids fournis proviennent d'un entraînement de 4 426 époques qui a duré environ une journée sur un MacBook sans GPU externe. Un panneau de journalisation personnalisé affiche le nom du modèle, le nombre de classes, le temps d'inférence et les images par seconde, et un index de périphérique règle la plupart des erreurs de caméra.

La collecte de données est volontairement simple : un utilitaire de capture prend trente images par classe pour l'entraînement, puis cinq par classe pour le test. Vous agitez chaque signe dans le cadre pendant que le journalisateur compte, et vous supprimez ensuite les prises floues ou mal cadrées. La vidéo est franche : de mauvaises images en entrée donnent de mauvaises boîtes en sortie.

L'annotation quitte l'outil de bureau abandonné pour Label Studio, qui fonctionne en local et gratuitement. Vous choisissez le modèle de boîtes englobantes, ajoutez les trois étiquettes dans l'ordre exact de la vidéo, et cet ordre compte car l'entraînement et la prédiction en direct s'y alignent. Les raccourcis clavier accélèrent l'annotation, les envois se font par lots sous la limite de cent fichiers, et l'ensemble fini est exporté au format YOLO avec les images pour remplacer les dossiers train et test.

Le module de données est un dataset PyTorch standard à double personnalité : l'entraînement applique des recadrages aléatoires et du jitter de couleur pour étirer davantage le petit jeu de données, tandis que le split de test désactive ces astuces. Exécuter le module en mode test affiche les images normalisées avec leurs boîtes, ce qui sert aussi de vérification avant de dépenser du temps de GPU.

Le script d'entraînement propose deux voies : affiner à partir des poids fournis ou commenter une ligne pour partir d'une initialisation aléatoire. La voie recommandée conserve les poids fournis, avec un taux d'apprentissage et des poids de perte par terme ajustables. L'exécution complète visait dix mille époques et a été arrêtée au-delà de quatre mille ; l'exécution de démonstration écrit un point de contrôle toutes les dix époques. La perte passe de la bande 7-8 à la bande 5-6 avec des creux dans les 4, tandis que la perte de test restant plate est attribuée au minuscule split de test.

Le test charge le fichier de point de contrôle final dans le script de test et l'exécute sur les images mises de côté. Le panneau rapporte les statistiques du jeu de données, les transformations actives, le résumé de l'architecture et, par prédiction, le nom de la classe, la confiance et les coordonnées de la boîte. Cette lecture ligne par ligne est la partie honnête de la démo : vous voyez exactement ce que le modèle a capté et à quel point il en était sûr.

Le final remplace les poids personnels dans le script en direct et le pointe vers la webcam. Un seuil de confiance à quatre-vingts pour cent filtre les 25 requêtes pour ne garder que les bonnes, et abaisser ce seuil lors d'une expérience en direct montre à quel point l'ensemble brut de requêtes peut devenir bruyant. Même les petits incidents en direct, comme un micro bloquant le cadre, sont corrigés avec sang-froid.

Pris ensemble, la vidéo construit une boucle complète en une seule séance : collecter, annoter, entraîner, tester et déployer en direct, le tout sur un ordinateur portable sans matériel de datacenter. Les poids personnels adaptés à vos propres mains sont la récompense discrète. Une plongée plus longue dans l'architecture est proposée si les spectateurs la souhaitent.

Visualization: nodesdaily AI

Commentaire de l’IA

"« Ce qui m'a convaincu, c'est l'honnêteté du dispositif : un jeu de données personnel, un ordinateur portable sans GPU externe, et une boucle complète de la donnée à la prédiction en direct. J'y vois le premier projet de détection idéal, pas un produit fini. »"

Évaluation de l’IA

Pour défendre l'argument opposé : une démo à trois gestes ne prouve pas que DETR est le bon outil. Les praticiens se tourneraient raisonnablement vers un détecteur mono-étape ou un pipeline de pose léger, qui s'entraînent plus vite sur de petits jeux de données et tournent moins cher sur CPU. La vidéo ne fait jamais de comparaison avec ces alternatives, si bien que son choix d'architecture semble pédagogique plutôt que démontré.

Ce qui manque, c'est tout test sérieux de robustesse. Environ quatre-vingt-dix images d'entraînement et une poignée d'images de test proviennent d'une seule personne, d'une seule pièce, d'une seule caméra ; les changements d'éclairage, les tons de peau, les arrière-plans encombrés et les mains occultées ne sont jamais exercés. La perte de test restant plate est écartée comme un artefact de taille de données au lieu d'être investiguée, et la configuration à 25 requêtes et seuil de 80 pour cent n'est jamais ablatée.

Sur la vérifiabilité : les chiffres headline — 4 426 époques en environ 24 heures sur un MacBook, la perte passant de la bande 7-8 à la bande 5-6 — proviennent des propres journaux de l'auteur sans répétition indépendante. Il n'y a ni mAP, ni courbe précision-rappel, ni évaluation sur données tenues à l'écart, seulement des traces de perte et des images évaluées à l'œil. Je réexécuterais les points de contrôle sur mon propre matériel avant de citer l'un de ces chiffres comme un fait.

Mon lecture pratique, à la première personne : je recommanderais ce dépôt comme prouveur de concept et boucle d'enseignement, pas comme technologie d'assistance. La vraie traduction de langue des signes exige de grands vocabulaires, l'indépendance au signeur et une modélisation temporelle, rien de ce qu'un détecteur d'images fixes à trois classes ne prétend offrir. Si je commençais, je construirais ceci d'abord pour la confiance, puis je comparerais avec une baseline basée sur la pose sur des données publiques avant d'écrire la moindre affirmation de production.

Sources

8 liens ; aucun autre article publié ne les cite. Stories sharing a link do not confirm each other; a source's origin is not inferred from how often it is cited.

langue des signes · detr · détection d'objets

Suivre le sujet

Avant cet article

Un court ordre de lecture des articles antérieurs reliés à cet événement par un éditeur.

Preuves et sources

Consultez les passages autorisés, leurs versions et leur origine.

KAYNAKLARLA OKU

Bu haberi açalım.

Hesap kontrol ediliyor…