Optimisation d’architecture de réseaux de neurones binaires pour calculs proche mémoire
Publié le : 1 janvier 2023
L’Intelligence Artificielle (IA) et la vision par ordinateur sont désormais massivement déployées au niveau proche capteurs afin d’étendre les capacités des systèmes d’imagerie embarqués intelligents. L’usage de calculs proche capteur permet des gains x1000 en évitant la transmission de données, améliorant de fait la frugalité énergétique au niveau système. Par ailleurs, le paradigme du calcul proche mémoire (In-Memory Computing, IMC) offre l’opportunité d’optimiser les architectures de traitement grâce à l’aide du déploiement de réseaux de neurones binarisés (poids et activations sur 1 bit). L’usage d’une arithmétique réduite impliquant des opérandes binaires (0/1, -1/+1, -1/0/+1) a l’avantage de pouvoir exploiter au mieux l’IMC en combinant des fonctions logiques massivement parallélisées suivies d’un seuillage au titre de « produits scalaires binaires requantifiés ». Des briques matérielles développées au CEA exploitant ce type de co-conception algorithme/architecture permettent un gain énergétique de plusieurs ordres de grandeur (x100). Dans ce contexte, cette thèse de doctorat vise à mettre au point un modèle de programmation innovant (avec son µ-compilateur et une machine virtuelle) dédié à ce type d’architecture matérielle, permettant des reconfigurations du réseau de neurones en fonction des besoins applicatifs spécifiques. Pour tirer parti au mieux de la parallèlisation des calculs et limiter les coûts d’accès mémoire tout en s’appuyant sur le graphe de calculs issu d’outils d’analyse de réseaux compatibles, le compilateur optimisera le séquençage des commandes ainsi que la répartition des calculs par rapport aux mémoires disponibles sur la cible matérielle. La complexité d’exécution estimée par la machine virtuelle alimentera alors un algorithme de recherche automatique de topologie (Neural Architecture Search, NAS). Ce NAS aura pour tâche d’identifier la topologie compatible, offrant le meilleur compromis performance/conso. De cette façon, la polyvalence de futurs accélérateurs d’IA sera alors accrue, permettant de cibler un plus large éventail de cas d’usages impliquant des tâches d’inférence.
Le travail de thèse s’articulera de la manière suivante :
– Etude et familiarisation avec les concepts de réseaux de neurones binaires dans le contexte du traitement d’images.
– Prise en main des outils d’analyse permettant la génération automatique de graphes de calcul liés aux réseaux de neurones.
– Identification des organisations possibles de données et de calculs adaptées aux briques matérielles existantes.
– Programmation du µ-compilateur dédié avec son simulateur hardware associé (machine virtuelle).
– Intégration, adaptation et tests des outils de NAS avec les sorties fournies par la machine virtuelle.