Préprint de recherche · Dépôt académique ouvert
Deux marges, directions opposées
Pourquoi les réseaux impulsionnels entraînés tolèrent la basse précision — alors même que l’entraînement effondre leur marge interne. Les deux constats tiennent ensemble, et comprendre pourquoi change la grandeur qu’il faut mesurer pour juger un réseau embarqué.
Le paradoxe apparent
On observe couramment qu’un réseau impulsionnel entraîné continue de bien fonctionner une fois quantifié en basse précision. On en conclut souvent que l’entraînement rend le réseau robuste à la quantification.
Ce travail montre que c’est l’inverse qui se produit à l’intérieur du réseau — et que les deux constats sont compatibles parce qu’ils ne portent pas sur la même grandeur. L’hypothèse testée est précise : l’entraînement comprime-t-il la marge interne des neurones cachés — celle qui gouverne l’identité exacte des impulsions — tandis que la marge de décision s’élargit dans le même temps ?
Le point de départ est une relation mesurée. Sur 300 configurations de neurones LIF indépendants (6 dynamiques × 10 constantes de temps × 5 graines, de Q4 à Q24 contre float64), la précision minimale qui garde des impulsions identiques au bit près est bien prédite par la marge interne : R² = 0,896 sur des données tenues à l’écart de l’ajustement (constantes de temps et classe de dynamique jamais vues), erreur moyenne de 1,50 bit. La constante de temps de mémoire est statistiquement détectable mais n’ajoute presque rien (R² +0,003) : c’est une relation dominée par la marge, pas une loi à deux facteurs. Appliquée telle quelle aux réseaux entraînés, où la marge interne s’effondre, cette relation prédit une fragilité sévère. Cette prédiction est fausse, et l’article explique pourquoi.
Les deux marges, définies
Marge de décision
L’écart entre la classe gagnante et sa suivante, agrégé sur toute la fenêtre temporelle. Elle grandit avec l’entraînement.
Marge interne
La distance qui sépare chaque neurone caché de son seuil de décharge. Elle s’effondre avec l’entraînement.
La seconde est la grandeur qu’on instrumente naturellement : plus un neurone est proche de son seuil, plus une erreur d’arrondi minuscule suffit à faire basculer sa décharge — et donc à changer, en cascade, les impulsions qui suivent. La première porte sur ce que le réseau décide. Une impulsion qui bascule ne change pas forcément la décision : c’est tout l’enjeu de l’article, qui montre que, dans le cadre testé, c’est la marge de décision qui suit la robustesse fonctionnelle.
Ce que montre la mesure
source : metrics_by_epoch.csv (fichier de données déposé avec l’article) — moyenne de 5 graines, 16 points par graine
Le contraste est frappant. Pendant que le réseau apprend — son exactitude moyenne passe de 4,6 % à 67 % de l’époque 0 à l’époque 15, d’après le même fichier de données — deux choses opposées se produisent sous le capot : le verdict devient de plus en plus tranché, et chaque neurone se rapproche de plus en plus de son seuil. La marge interne finit à 0,0004, essentiellement collée au seuil.
Les corrélations, chiffrées
Ces tendances ne sont pas qualitatives : elles sont mesurées. Voici les corrélations entre l’avancée de l’entraînement et chaque grandeur, puis entre chaque marge et l’exactitude mesurée après quantification en Q8 :
| Relation mesurée | Corrélation | Lecture |
|---|---|---|
| Époque ↔ marge de décision | +0,96 | elle grandit avec l’entraînement |
| Époque ↔ marge interne moyenne | −0,90 | elle s’effondre avec l’entraînement |
| Marge de décision ↔ exactitude Q8 | +0,95 | elles montent ensemble : la marge alignée sur la robustesse fonctionnelle |
| Marge interne moyenne ↔ exactitude Q8 | −0,96 | elle s’effondre pendant que l’exactitude Q8 monte : indicateur trompeur du risque |
Les deux dernières lignes se lisent ensemble. La corrélation de la marge interne avec l’exactitude en Q8 est négative : la marge interne s’effondre pendant que l’exactitude en Q8 progresse avec l’entraînement. Si la marge interne gouvernait la robustesse fonctionnelle, les deux baisseraient ensemble ; elles évoluent en sens inverse. Dans ce cadre, c’est la marge de décision (+0,95) qui suit la robustesse fonctionnelle. Ce classement est une association observée dans le protocole testé ; l’article ne le présente pas comme une loi générale.
La résolution vaut aussi pour la relation de départ : la marge qui compte est celle qui est attachée à la propriété qu’on veut garantir. Pour l’identité exacte des impulsions, c’est la marge interne (d’où le R² = 0,896 sur neurones indépendants) ; pour la décision, c’est la marge de décision. Utiliser la première pour prédire la seconde, c’est exactement ce qui produirait une fausse alarme.
À retenir
Un réseau entraîné qui tolère la basse précision le doit, dans ce cadre, à sa marge de décision, qui s’élargit pendant que la marge interne s’effondre (division par 548). Juger sa robustesse sur la marge interne, la grandeur qu’on instrumente naturellement, aurait prédit une fragilité qui ne se produit pas.
Conséquence concrète, méthodologique : pour juger si un réseau supporte l’embarqué, il faut mesurer la marge qui appartient à la propriété à préserver — la distance au seuil des neurones cachés pour l’identité des impulsions, la marge de décision pour la décision. Que cela tienne pour d’autres tâches et d’autres architectures n’est pas testé.
Le coût réel en basse précision
Combien coûte vraiment la quantification, précision par précision ? J’évalue le même réseau à six niveaux, aux 80 points de contrôle de l’entraînement (5 graines × 16 époques), sans réentraînement. La comparaison entre les points non entraînés et les points entraînés montre où la fragilité apparaît.
Dans les expériences sur le réseau entraîné, « Qk » désigne l’arrondi des seuls poids au multiple de 2−k le plus proche ; le réseau tourne ensuite dans un chemin de données float64 (potentiels de membrane, accumulation, seuils et décisions non quantifiés). C’est une quantification des paramètres après entraînement, pas une arithmétique en virgule fixe. Sur le même jeu SHD, un chemin de données entièrement entier perd 24,6 points d’exactitude (77,3 % en float64 contre 52,74 % en Q16.16, mesure de l’article compagnon D). Les deux mesures ne se contredisent pas, mais aucune précision dite « gratuite » ici ne se lit comme un déploiement en virgule fixe.
source : cross_precision.json — 80 points de contrôle, 5 graines × 16 époques
Voir les données
| Précision | Écart non entraîné | Écart moyen (80 points) | Écart max |
|---|---|---|---|
| Q2 | 0,000 | 0,430 | 0,646 |
| Q4 | 0,000 | 0,119 | 0,268 |
| Q6 | 0,000 | 0,013 | 0,066 |
| Q8 | 0,000 | 0,000 | 0,024 |
| Q12 | 0,000 | −0,001 | 0,013 |
| Q16 | 0,000 | 0,000 | 0,005 |
La lecture prudente : dans ce protocole, l’écart d’exactitude était nul aux points de contrôle non entraînés. C’est une observation sur les points mesurés, pas une démonstration que la quantification serait gratuite en général, ni que la fragilité serait entièrement causée par l’entraînement.
Deux évaluations du même réseau donnent deux chiffres en Q8, et les deux sont à citer. L’évaluation sur cinq graines du modèle final donne un écart de 0,12 % ± 0,61 %, dans la variabilité entre graines ; la réévaluation des 80 points de contrôle donne 1,3 % au dernier point et 2,4 % au pire. Les deux s’accordent : l’écart en Q8 reste sous 3 %.
Un résultat négatif, publié comme tel : la recette d’entraînement conscient de la quantification (QAT) testée n’apporte pas d’amélioration moyenne en Q8 sur cinq graines non appariées (0,34 % ± 0,59 % contre 0,12 % ± 0,61 %, légèrement moins bien). C’est une comparaison descriptive, sans test statistique : elle n’établit ni l’absence d’effet, ni l’inutilité du QAT en général.
Trois profils arithmétiques simulés
Au-delà du réseau entraîné, un balayage de 400 configurations de réseau sous trois profils arithmétiques simulés montre un motif analogue : les impulsions divergent, mais la décision tient. Le mécanisme n’y est pas établi : aucune marge n’est mesurée dans ce balayage, et ce sont d’autres réseaux que le réseau entraîné.
source : hardware_profiles_summary.json — profils arithmétiques simulés, n = 400
Ces trois profils sont simulés en logiciel ; aucune puce n’a été mesurée. Le troisième est une émulation : valeurs Python en virgule flottante arrondies après chaque opération, poids, entrée, décroissance, seuil et état stockés sur une grille à 8 bits fractionnaires, accumulation intermédiaire sur une grille à 24 bits fractionnaires. Ce n’est ni un chemin de données entier signé de 24 bits, ni le modèle d’une puce nommée.
Périmètre et Limitations
- Protocole pilote et réduit, sur CPU seul, un seul jeu de données (SHD), une seule architecture à trois couches, cinq graines, une seule recette QAT. Aucune attribution causale générale — seulement une association mesurée dans ce protocole : les deux marges sont des conséquences du même entraînement, et je n’agis jamais sur l’une en gardant l’autre fixe. L’expérience qui trancherait (réentraînement avec régularisation de la marge) n’existe ici qu’à une graine par réglage : elle reste exploratoire.
- Portée de « Qk » : dans les expériences sur le réseau entraîné, seuls les poids sont arrondis, dans un chemin de données float64. Ces chiffres ne se lisent pas comme un déploiement en virgule fixe, qui coûte 24,6 points sur le même jeu (article D).
- La relation marge–précision (R² = 0,896) est établie sur des neurones indépendants seulement ; elle est compatible avec les résultats sur le réseau entraîné, mais n’y est pas validée. Seule l’identité des impulsions est bien prédite ; les contrats de taux (R² = 0,350) et de décision (R² = 0,251) restent mal expliqués.
- Le seuil de fragilité entre Q4 et Q6 est une observation dans ce domaine, pas une loi : rien ici n’autorise à dire que les réseaux impulsionnels ont besoin d’au moins Q6, ni à extrapoler sous Q6 ce qui est observé de Q8 à Q16.
- Les 80 points de contrôle sont 5 trajectoires répétées, pas 80 observations indépendantes. Corrélations et tendances sont descriptives.
- Une référence d’apprentissage local non supervisé (STDP) était prévue et n’a pas été implémentée : elle exige une boucle d’entraînement radicalement différente. Le contrôle réellement conduit est la comparaison non entraîné / entraîné.
- Aucune mesure matérielle : aucune économie de surface ou d’énergie n’est revendiquée. Les motivations matérielles citées sont conditionnelles.
- L’absence d’écart d’exactitude ne signifie pas identité des prédictions, des impulsions ou des états internes. Chaque affirmation nomme la grandeur mesurée.
- Le profil de stockage Q8 avec accumulateur sur grille à 24 bits fractionnaires n’est pas un chemin de données 24 bits.