En associant une structure de prétraitement des données sur FPGA en amont d'un calculateur neuronal, la jeune société française Global Sensing Technologies remet au goût du jour ce type d'approche basée sur des calculs parallèles et des algorithmes d'autoapprentissage. Avec, en ligne de mire, la fabrication en 2016 d'un circuit intégré neuronal en techologie Cmos. Une première en Europe. ...
Imiter le fonctionnement du cerveau et son extraordinaire capacité à apprendre en permanence. Tel est l’objectif d’un processeur dit neuronal qui, par apprentissage, permet de reconnaître grâce à des calculs parallèles un signal beaucoup plus simplement et rapidement que ne le ferait un processeur séquentiel traditionnel. Au fond l’idée, à l’instar du monde vivant, est de réaliser avec ce type d’architecture des classifications puis d'apprendre à les améliorer. Cette approche a fait beaucoup parler d’elle il y a une vingtaine d’années, mais les espoirs suscités par la technologie n’ont pas été à la hauteur des résultats. En créant en 2011 Global Sensing Technologies, Xavier Bruneau, ingénieur centralien, et Michel Paindavoine, professeur à l'université de Bourgogne et spécialiste du traitement du signal et de l'image, relèvent le gant en se lançant dans l’aventure : créer un processeur neuronal adapté aux contraintes des applications embarquées.
Michel Paindavoine, cofondateur de Global Sensing Technologies
« En créant l'entreprise, nous avions la vision qu’il était nécessaire de réaliser des prétraitements sur les données acquises par un système neuronal avant d’utiliser le processeur neuronal lui-même, explique Michel Paindavoine. Car l'une des causes des limitations des premiers processeurs neuronaux était liée au fait qu’ils devaient traiter directement des données multiples brutes, avec l’idée que le réseau neuronal était capable via ses algorithmes de s’auto-organiser. Or cette approche ne fonctionne pas correctement. De notre côté, nous pensons que, pour tirer parti de toute la puissance de traitement d’un processeur neuronal, il faut impérativement lui délivrer des données prétraitées, filtrées avant les phases d’analyse et de recherche. »
Associer FPGA et processeur neuronal
Dans un premier temps, Global Sensing Technologies (GST) a donc associé un FPGA Virtex de Xilinx, sur lequel les algorithmes de prétraitement des données sont installés, avec un processeur neuronal existant, le CM1K, développé aux Etats-Unis par la société CogniMem Technologies (qui intègre 1024 neurones). L’ensemble étant implanté sur un module de petite taille de 5 cm de côté, adapté aux applications embarquées. Ensuite, sur cette base, la start-up a développé ses produits de première génération, comme la carte NeuroFPGA entièrement paramétrable par l’utilisateur en fonction de l’application visée, la carte NeuroPIC, équipée d’un module caméra qui permet la mise en œuvre d’applications d’intelligence artificielle embarquée pour des systèmes de reconnaissance faciale, de forme ou de détection de défauts, ou encore la Smart NeuroCam, une caméra intégrant la carte NeuroFPGA (illustration ci-dessous). La société a également élaboré la plate-forme logicielle GST Neuro Platform, un environnement de programmation du système neuronal qui permet d’exécuter des fonctions de haut niveau pour des applications d’intelligence artificielle, et de créer la base de connaissance d’un système neuronal émulé.
Dans le cas d’applications qui ne réclament pas de rapidité de traitement comme l'analyse de quelques images par seconde, notamment dans le domaine de la domotique et de l’aide aux personnes dépendantes (détection de chutes), GST a ensuite expérimenté l’implantation d’un modèle neuronal sur un processeur ARM. Plus précisément sur la carte open source Olimex, architecturée autour d’un processeur Allwinner A10 basé sur un Cortex-A8.
Développer sa propre technologie
Forte des succès rencontrés avec son approche et de son savoir-faire en traitement de signal et en architectures neuronales, la société a décidé de passer à la vitesse supérieure et de se lancer dans le développement de sa propre technologie sous la forme d’un circuit intégré. Une première en Europe. Grâce en particulier à l’implication de GST dans le projet Neuro-DSP, dans lequel le CEA-List est le laboratoire référent. Retenu dans le cadre du 15e appel à projets collaboratifs du Fonds unique interministériel (FUI), soutenu par Bpifrance et les collectivités locales, et colabellisé par les pôles de compétitivité Arve Industries (usinage complexe et mécanique de précision) et Vitagora (problématiques de santé et de nutrition), ce projet de recherche a pour objectif d'associer les caractéristiques et les capacités d'un processeur neuronal à celles d'un processeur classique et d'intégrer cette architecture hybride dans des applications industrielles (robotique, agronomie, agroalimentaire…). La fonctionnalité de traitement du signal, réalisée par le processeur classique, met en évidence par exemple des caractéristiques physiques d’un objet (couleurs, forme...) alors que le réseau de neurones, en aval, détecte des défauts et fait le lien avec des modèles enregistrés via une phase d’apprentissage.
Des prototypes préindustriels en 2016
« A l’horizon 2016, nous disposerons ainsi de prototypes préindustriels de nos propres processeurs neuronaux, sous la forme d'Asic fabriqués en technologie avancée, notamment en Cmos 40 nm chez STMicroelectronics, s'enthousiasme Michel Paindavoine. Les concepts technologiques sont d’ores et déjà validés, avec un cluster de 32 neurones (ou processeurs élémentaires) associés à un opérateur arithmétique de type MAC (multiply–accumulate operation) et à une mémoire de quelques kilo-octets, pour une fréquence de fonctionnement de 500 MHz et une consommation visée très faible, inférieure à 1 W. » A comparer aux 80 à 10 W des processeurs graphiques GPU qui sont des concurrents directs des DSP neuronaux dans certaines applications. « En parallèle, nous travaillons avec des partenaires, comme le fabricant d’équipements de cuisine Seb et la PME bourguignonne ARDPI, pour intégrer ce circuit dans le cas présent d’une application d’assistance à la cuisson automatique d'aliments », précise Michel Paindavoine.
Car le marché visé par cette puce de nouvelle génération, dont le coût unitaire devrait avoisiner les 10 euros, est bien celui du grand public et/ou celui des applications de volume (en moyenne ou grande séries). Comme l’automobile par exemple. GST est ainsi partenaire au sein du pôle de compétitivité Moveo dans un projet de recherche lié aux systèmes ADAS (Advanced Driver Assistance Systems) embarqués. Parallèlement, GST compte poursuivre le développement de ses solutions à base de FPGA, adaptées aux petites séries dans des applications nécessitant de fortes puissances de calcul.
Quant à la feuille de route de la société, implantée à Dijon et forte d’ores et déjà de 8 collaborateurs dont six en R&D, elle est ambitieuse. GST vise dès 2016 un chiffre d’affaires d'un million d’euros et cible 10 à 20 millions d’euros à l’horizon 2020 pour un effectif compris entre 20 et 30 personnes.