Nous pouvons désormais former de grands réseaux neuronaux sur de petits appareils
Nous pouvons désormais former de grands réseaux neuronaux sur de petits appareils

Une nouvelle méthode pourrait permettre de conserver vos données privées au niveau local
Ce dessin d’artiste illustre la façon dont les petits gadgets pourraient bientôt traiter à bord les données qui leur permettent de découvrir le monde.
Les gadgets qui nous entourent en apprennent constamment sur nos vies. Les montres intelligentes captent nos signes vitaux pour suivre notre santé. Les enceintes domestiques écoutent nos conversations pour reconnaître nos voix. Les smartphones jouent les grammairiens en observant ce que nous écrivons afin de corriger nos fautes de frappe idiosyncratiques. Nous apprécions ces commodités, mais les informations que nous partageons avec nos gadgets ne restent pas toujours entre nous et nos gardiens électroniques. L’apprentissage automatique (Machine Learning) peut nécessiter du matériel lourd, de sorte que les appareils « périphériques » comme les téléphones envoient souvent des données brutes à des serveurs centraux, qui renvoient ensuite des algorithmes entrainés. Certaines personnes aimeraient que l’apprentissage se fasse localement. Une nouvelle méthode d’apprentissage de l’IA étend les capacités d’apprentissage des petits appareils, ce qui pourrait contribuer à préserver la vie privée.
Les systèmes d’apprentissage automatique les plus puissants utilisent des réseaux neuronaux, des fonctions complexes remplies de paramètres réglables. Au cours de l’entrainement, un réseau reçoit une entrée (comme un ensemble de pixels), génère une sortie (comme l’étiquette « chat »), compare sa sortie à la bonne réponse et ajuste ses paramètres pour faire mieux la prochaine fois. Pour savoir comment régler chacun de ces boutons internes, le réseau doit se souvenir de l’effet de chacun d’entre eux, mais ils se comptent régulièrement par millions, voire par milliards.
Cela nécessite beaucoup de mémoire. L’entraînement d’un réseau neuronal peut nécessiter des centaines de fois la mémoire sollicitée lors de sa simple utilisation (également appelée « inférence »). Dans ce dernier cas, la mémoire est autorisée à oublier ce que chaque couche du réseau a fait dès qu’elle transmet des informations à la couche suivante.
Pour réduire la mémoire sollicitée pendant la phase d’apprentissage, les chercheurs ont eu recours à quelques astuces. Dans l’une d’elles, appelée paging ou offloading, la machine déplace ces activations de la mémoire à court terme vers un type de mémoire plus lent mais plus abondant, tel que la mémoire flash ou une carte SD, puis les ramène en cas de besoin. Dans un autre cas, appelé rematérialisation, la machine supprime les activations, puis les calcule à nouveau plus tard.
Auparavant, les systèmes de réduction de la mémoire utilisaient l’une de ces deux astuces ou, selon Shishir Patil, informaticien à l’université de Californie à Berkeley et auteur principal de l’article décrivant l’innovation, elles étaient combinées à l’aide d' »heuristiques » qui sont « sous-optimales » et nécessitent souvent beaucoup d’énergie. L’innovation rapportée par Shishir Patil et ses collaborateurs formalise la combinaison de la pagination et de la rematérialisation.
« Prendre ces deux techniques, les combiner dans ce problème d’optimisation, puis le résoudre, c’est vraiment bien », déclare Jiasi Chen, informaticien à l’université de Californie à Riverside, qui travaille sur l’informatique périphérique mais n’a pas participé aux travaux.
En juillet, Shishir Patil a présenté son système, appelé POET (private optimal energy training), à la Conférence internationale sur l’apprentissage automatique, à Baltimore. Il donne d’abord à POET les détails techniques d’un appareil et des informations sur l’architecture d’un réseau neuronal qu’il veut qu’il entraîne. Il spécifie un budget mémoire et un budget temps. Il lui demande ensuite de créer un processus d’apprentissage qui minimise la consommation d’énergie. Le processus peut décider de mettre en page certaines activations qui seraient inefficaces à recalculer, mais d’en rematérialiser d’autres qui sont simples à refaire mais dont le stockage nécessite beaucoup de mémoire.
L’une des clés de la percée a été de définir le problème comme un puzzle de programmation linéaire à nombres entiers mixtes (MILP), un ensemble de contraintes et de relations entre les variables. Pour chaque appareil et chaque architecture de réseau, POET introduit ses variables dans le programme MILP élaboré par Shishi Patil, puis trouve la solution optimale. « L’un des principaux défis consiste à formuler le problème de manière à pouvoir l’introduire dans un solveur », explique Jiasi Chen. « Ainsi, vous capturez toute la dynamique réaliste du système, comme l’énergie, la latence et la mémoire. »
L’équipe a testé POET sur quatre processeurs différents, dont la mémoire vive allait de 32 Ko à 8 Go. Sur chacun d’entre eux, les chercheurs ont entraîné trois architectures de réseaux neuronaux différentes : deux types de réseaux populaires dans la reconnaissance d’images (VGG16 et ResNet-18), plus un réseau populaire de traitement des langues (BERT). Dans de nombreux tests, le système a pu réduire l’utilisation de la mémoire d’environ 80 %, sans que cela n’entraîne une forte augmentation de la consommation d’énergie. Les méthodes comparables ne pouvaient pas faire les deux en même temps. Selon Shishir Patil, l’étude a montré que BERT peut désormais être entraîné sur les plus petits appareils, ce qui était auparavant impossible.
« Lorsque nous avons commencé, POET était surtout une idée mignonne », souligne Shishir Patil. Aujourd’hui, plusieurs entreprises nous ont contactés pour l’utiliser, et au moins une grande entreprise l’a essayé dans son enceinte intelligente. Une chose qu’ils apprécient, précise Shishir Patil, est que POET ne réduit pas la précision du réseau en « quantifiant », ou en abrégeant, les activations pour économiser de la mémoire.
Shishir Patil note d’autres raisons d’utiliser le POET, en plus des problèmes de confidentialité. Certains appareils doivent former des réseaux localement parce qu’ils ne disposent que d’une faible ou d’aucune connexion Internet. Il s’agit notamment des appareils utilisés dans les fermes, dans les sous-marins ou dans l’espace. D’autres configurations peuvent bénéficier de l’innovation car la transmission de données nécessite trop d’énergie. POET pourrait également rendre les grands appareils – les serveurs Internet – plus efficaces en termes de mémoire et d’énergie. Mais pour ce qui est de la confidentialité des données, Shishir Patil déclare : « Je suppose que cela tombe à point nommé, n’est-ce pas ? »