Qwen 3.8 27B interprète les poids bruts d'un réseau de neurones sur un ordinateur portable
Simon Willison démontre que Qwen 3.8 27B peut identifier des politiques de jeu en analysant les poids bruts du modèle, reproduisant ainsi les conclusions récentes de l'article « Sparks of Weight-Space Programming ».
Traduit automatiquement depuis l'original anglais.
Une nouvelle note de recherche intitulée "Sparks of Weight-Space Programming" affirme que les grands modèles de langage peuvent interpréter et modifier les poids bruts des réseaux de neurones sans exécuter de code. Simon Willison a testé ces affirmations à l'aide de Qwen 3.8 27B sur son matériel local, confirmant que le modèle à poids ouverts peut avec succès identifier le comportement d'agents simples d'apprentissage par renforcement simplement en lisant leurs matrices de poids.
Ce qui s'est passé
Les chercheurs Rikiya Takehi, Jayden Teoh, Alex Zhang et Omar Khattab ont publié un document qu'ils décrivent comme un "article de blog", mais qui ressemble davantage à un article technique. Ils ont introduit le concept de Programmation dans l'Espace des Poids (Weight-Space Programming), soutenant que des modèles de pointe comme GPT-6 Astra peuvent analyser les nombres flottants bruts représentant un réseau de neurones pour déterminer sa fonction. Les auteurs ont également affirmé que ces modèles pouvaient éditer les poids pour améliorer les performances ou générer de nouveaux réseaux à partir de zéro, surpassant les méthodes d'entraînement traditionnelles sur certaines tâches à petite échelle.
L'expérience principale impliquait quatre petits réseaux de neurones entraînés via apprentissage par renforcement pour jouer à des versions simplifiées sur grille 10x10 de Breakout, Pong, Pac-Man et Freeway. Les chercheurs ont fourni les poids bruts de ces réseaux à un LLM avec une consigne stricte : identifier le jeu basé uniquement sur les poids, sans accès à l'exécution de code, aux calculateurs ou aux outils externes. L'objectif était de tester si le modèle pouvait comprendre les implications structurelles des valeurs de poids directement.
Willison a reproduit cette expérience en utilisant Qwen 3.8 27B, un modèle qu'il exécute localement sur son ordinateur portable. Il a utilisé l'outil en ligne de commande llm avec le plugin lmstudio pour soumettre les mêmes consignes issues du dépôt GitHub des chercheurs au modèle. Malgré l'intensité computationnelle et les exigences de contexte long, Qwen 3.8 27B a réussi à identifier les jeux pour trois des quatre tests, démontrant que cette capacité n'est pas exclusive aux modèles propriétaires, fermés et de pointe.
Comment cela fonctionne
La Programmation dans l'Espace des Poids repose sur la capacité du LLM à traiter de longues séquences de données numériques comme du texte. Les poids des réseaux de neurones sont essentiellement des tableaux de nombres flottants qui définissent comment les entrées sont transformées en sorties. En traitant ces nombres comme une description textuelle, le LLM analyse les motifs, les magnitudes et les distributions au sein de la matrice. Il tente de rétroconcevoir la logique intégrée dans ces nombres, associant des configurations spécifiques de poids à des comportements informatiques connus ou à des mécaniques de jeu.
Dans le test de Willison, le modèle a reçu un fichier texte contenant des milliers de valeurs flottantes. Il devait corréler ces valeurs avec la structure spatiale d'une grille 10x10. Par exemple, il cherchait des motifs indiquant la position d'un agent, des obstacles mobiles ou des cibles de récompense. Le modèle a généré de nombreuses traces de raisonnement, tentant d'associer des lignes et colonnes spécifiques de la matrice de poids à des éléments physiques de l'environnement de jeu, tels que des raquettes, des balles ou des murs.
Ce processus n'implique pas l'exécution du réseau de neurone ni la simulation du jeu. Il s'agit plutôt d'une tâche d'analyse statique effectuée entièrement dans la fenêtre de contexte du modèle de langage. Le modèle utilise ses connaissances internes sur la façon dont les réseaux de neurones sont généralement structurés et entraînés pour inférer la finalité des poids fournis. Il identifie des amas de valeurs hautes ou basses et les associe à des composants fonctionnels tels que des capteurs d'entrée ou des actionneurs de sortie.
Détails clés
- Qwen 3.8 27B a correctement identifié Pac-Man après 46 minutes et 12 secondes, en traitant 43 506 jetons de raisonnement.
- Le modèle a identifié Pong en 1 heure, 4 minutes et 54 secondes, attribuant un niveau de confiance de 75 % à sa conclusion.
- Breakout a été identifié en 52 minutes et 25 secondes avec un score de confiance de 88 %, décrivant avec précision les mécaniques de la raquette et des briques.
- Qwen a échoué à identifier Freeway, devinant incorrectement qu'il s'agissait d'un jeu similaire à Pac-Man, probablement en raison de l'obscurité du titre Atari de 1981.
- L'expérience nécessitait une grande fenêtre de contexte ; la limite par défaut de 8192 jetons a provoqué des erreurs, nécessitant une configuration plus large dans LM Studio.
- L'article original affirmait également que les modèles pouvaient éditer les poids pour corriger les boucles de raisonnement, améliorant les scores mathématiques de Qwen3.5-0.8B de 7,9 % à 48,1 % sur MATH-500.
Pourquoi c'est important
Pour les ingénieurs logiciels et les praticiens du ML, cette démonstration suggère que les LLM développent une compréhension structurelle plus profonde des modèles d'apprentissage automatique eux-mêmes. Si un modèle peut lire les poids et en inférer le comportement, cela ouvre la porte à des outils automatisés de débogage et d'optimisation qui ne nécessitent pas de réentraînement. Cela pourrait réduire considérablement le coût computationnel de l'affinage des petits modèles, permettant aux développeurs d'ajuster les performances en éditant directement les poids plutôt qu'en lançant des boucles d'entraînement coûteuses basées sur le gradient.
Cependant, les résultats mettent également en évidence des limitations pratiques significatives. Le temps requis par Qwen 3.8 27B pour analyser un minuscule réseau de grille 10x10 était proche d'une heure par jeu. Cette latence rend la programmation dans l'espace des poids en temps réel peu pratique pour la plupart des applications actuelles. De plus, l'échec sur la consigne Freeway indique que le succès du modèle dépend fortement de la familiarité de ses données d'entraînement avec des mécaniques de jeu spécifiques, plutôt que d'une compréhension universelle de toutes les fonctions possibles des réseaux de neurones.
La distinction entre analyse statique et exécution dynamique reste critique. Bien que le modèle puisse interpréter les poids, il ne fait pas "tourner" le modèle au sens traditionnel. Cela signifie que bien qu'il puisse identifier de larges motifs comportementaux, il peut manquer des dynamiques subtiles d'exécution ou des cas limites qui n'apparaissent que lors de l'inférence réelle. Les développeurs devraient considérer cela comme un outil analytique complémentaire plutôt que comme un remplacement des pipelines standard de test et de validation.
Ce que vous pouvez faire
- Installez l'outil en ligne de commande
llmet le pluginllm-lmstudiopour reproduire ces expériences localement. - Téléchargez Qwen 3.8 27B ou un modèle similaire à poids ouverts capable de gérer de grandes fenêtres de contexte.
- Accédez au dépôt
RikiyaT/lm_understand-logssur GitHub pour récupérer les consignes originales et les fichiers de poids. - Configurez votre moteur d'inférence local pour supporter des fenêtres de contexte supérieures à 8192 jetons afin d'éviter les erreurs de troncature.
- Expérimentez avec d'autres petits réseaux de neurones pré-entraînés pour tester si le modèle peut identifier leurs fonctions sans exécution de code.
- Examinez les traces de raisonnement générées par le modèle pour comprendre comment il associe les motifs numériques aux structures logiques.



