Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Industrial Internet of Things >> Embarqué

La puce Edge AI renonce à la matrice de multiplication-accumulation pour atteindre 55 TOPS/W

Une startup de la Silicon Valley affirme avoir réinventé les mathématiques des réseaux de neurones et produit une puce d'IA de bord complémentaire, déjà échantillonnée, qui n'utilise pas le large éventail habituel d'unités de multiplication et d'accumulation. La puce peut exécuter l'équivalent de 4 TOPS, avec une consommation électrique impressionnante de 55 TOPS/W, et selon la société, réalise une inférence de classe de centre de données en moins de 20 mW (YOLOv3 à 30fps).

Perceive, basée à San Jose, était jusqu'à présent en mode super furtif – en tant que spin-out de Xperi, elle a été entièrement financée par sa société mère depuis sa création officielle il y a deux ans. L'équipe compte 41 personnes, avec un nombre similaire au sein de Xperi travaillant sur des applications pour la puce. Le PDG fondateur, Steve Teig, est également CTO de Xperi; il était auparavant fondateur et CTO de Tabula, la startup de logique programmable 3D qui a fermé ses portes il y a cinq ans, et avant cela, CTO de Cadence.

Teig a expliqué que l'idée initiale était de combiner les connaissances classiques de Xperi en matière de traitement de l'image et de l'audio avec l'apprentissage automatique. Xperi possède des marques telles que DTS, IMAX Enhanced et HD Radio - son portefeuille de technologies comprend un logiciel de traitement d'image pour des fonctionnalités telles que la photo yeux rouges et la stabilisation d'image qui sont largement utilisées dans les appareils photo numériques, ainsi qu'un logiciel de traitement audio pour les lecteurs de disques Blu-Ray.


Steve Teig (Image :Percevoir)

« Nous avons commencé avec une feuille de papier vierge et avons utilisé la théorie de l'information pour demander :quels calculs les réseaux de neurones font-ils réellement ? Et y a-t-il une manière différente d'aborder ce calcul qui pourrait changer ce qui est possible [à la périphérie] ? » dit Teig. "Après quelques années de travail, nous avons découvert que c'était le cas, puis nous avons décidé… que nous devions fabriquer une puce qui incarne ces idées."

L'idée que Teig a présentée au conseil d'administration Xperi était de créer une entreprise pour créer une puce capable de faire des inférences significatives dans les appareils de périphérie avec un budget de puissance de 20 mW. Le résultat, une puce de 7x7 mm nommée Ergo, peut exécuter 4 TOPS sans RAM externe (en fait, elle exécute l'équivalent de ce qu'un GPU évalué à 4 TOPS peut réaliser, a expliqué Teig). Ergo prend en charge de nombreux styles de réseaux de neurones, y compris les réseaux convolutifs (CNN) et les réseaux récurrents (RNN), contrairement à de nombreuses solutions sur le marché qui sont adaptées aux CNN. Ergo peut même faire fonctionner plusieurs réseaux hétérogènes simultanément.

"La seule chose qui limite le nombre de réseaux que nous pouvons exécuter est la mémoire totale requise pour la combinaison", a déclaré Teig, ajoutant que Perceive a démontré l'exécution simultanée de YOLOv3 ou M2Det - avec 60 ou 70 millions de paramètres - plus ResNet 28 avec plusieurs millions paramètres, plus un LSTM ou RNN pour effectuer le traitement vocal et audio. Dans une application, cela peut correspondre à la fois à l'imagerie et à l'inférence audio.

Perceive affirme également que sa puce Ergo est extrêmement économe en énergie, atteignant 55 TOPS/W. Ce chiffre est un ordre de grandeur supérieur à ce que prétendent certains concurrents. Les chiffres de Perceive indiquent qu'il exécute YOLOv3, un grand réseau avec 64 millions de paramètres, à 30 images par seconde tout en ne consommant que 20 mW.


Perceive affirme que l'efficacité de sa puce Ergo est jusqu'à 55 TOPS/W, exécutant YOLOv3 à 30fps avec seulement 20mW (Image :Perceive)

Cette efficacité énergétique est due à certaines techniques agressives de synchronisation de puissance et de synchronisation d'horloge, qui exploitent la nature déterministe du traitement du réseau neuronal. Cela permet à Perceive d'être précis sur ce qui doit être allumé et quand.

"Dans un environnement alimenté par batterie, [la puce] peut être littéralement éteinte - zéro milliwatt - et avoir une sorte de capteur de mouvement microwatt ou un microphone analogique pour détecter quelque chose qui pourrait être intéressant", a déclaré Teig. « Nous pouvons nous réveiller, charger un réseau de neurones géant de classe centre de données et l'exécuter en environ 50 millisecondes, y compris le décryptage. Nous ne laissons donc que deux images environ de la vidéo au sol. »

Mais une conception matérielle soignée n'est qu'une partie de l'image.

Théorie de l'information

"Nous avons trouvé une manière différente de représenter le calcul sous-jacent lui-même et l'arithmétique qui l'accompagne", a déclaré Teig. "Nous représentons le réseau lui-même d'une nouvelle manière, et c'est de là que vient notre avantage."

Perceive a commencé avec la théorie de l'information - une branche de la science qui comprend des moyens mathématiques de distinguer le signal du bruit - et a utilisé ses concepts pour examiner la quantité de calcul nécessaire pour extraire le signal du bruit. Teig utilise un réseau de détection d'objets à titre d'exemple.

« Vous donnez au réseau des millions de pixels et tout ce que vous voulez savoir, c'est s'il y a un chien sur cette photo ou non ? » il a dit. « Tout le reste dans l'image est du bruit, à l'exception du chien [le signal]. La théorie de l'information le rend quantifiable - combien devez-vous savoir [pour dire s'il y a un chien sur la photo] ? Vous pouvez en fait le rendre précis, mathématiquement. »

Comme Teig le décrit, les réseaux de neurones traditionnels sont capables de généraliser en voyant de nombreuses images de chiens parce qu'ils ont trouvé au moins une partie du signal dans le bruit, mais cela a été fait de manière empirique plutôt qu'avec une approche mathématiquement rigoureuse. Cela signifie que le bruit est transporté avec le signal, ce qui rend les réseaux de neurones traditionnels très volumineux et les rend vulnérables aux exemples contradictoires et à d'autres astuces.

"Plus vous pouvez être mathématique pour déterminer quelles parties doivent être conservées et quelles parties ne sont que du bruit, mieux vous pouvez faire de généralisation et moins vous avez d'autres frais généraux à emporter avec vous", a déclaré Teig. « Je dirais que même les réseaux de neurones actuels extraient le signal du bruit, ils ne le font tout simplement pas de manière aussi rigoureuse et, par conséquent, ils ont un poids supplémentaire avec eux. »

Ce point de vue de la théorie de l'information est à la base de la stratégie d'apprentissage automatique de Perceive, qui représente les réseaux de neurones d'une nouvelle manière.

"C'est vraiment un mariage entre une perspective théorique de l'information sur la façon de faire de l'apprentissage automatique et une puce qui incarne ces idées", a déclaré Teig.

Architecture des puces

Avec l'expérience de Teig en tant que CTO de Tabula, vous pourriez vous attendre à du matériel basé sur une logique programmable, mais ce n'est pas le cas ici.

« J'ai été fortement influencé par la réflexion sur la logique programmable pendant une décennie et sur la façon de créer des architectures d'interconnexion riches pour permettre un calcul hautes performances et très parallèle, car une grande partie de ce qui se passe sur un FPGA est également massivement parallèle et très intensif dans son interaction entre le calcul et la mémoire », a déclaré Teig. « Ce travail a certainement influencé mon travail chez Perceive, mais ce que nous avons n'est pas une logique programmable en soi . Il a été influencé par cette façon de penser, mais l'architecture elle-même s'articule autour de réseaux de neurones. »

La structure de réseau neuronal de Perceive est évolutive, la puce initiale Ergo ayant quatre clusters de calcul, chacun avec sa propre mémoire. Bien que les détails exacts soient encore secrets, Teig a déclaré que ces clusters sont très différents de tout ce que l'on trouve dans d'autres accélérateurs d'IA, qui utilisent généralement des tableaux d'unités de multiplication-accumulation (MAC) pour calculer les produits scalaires de vecteurs et de matrices.


La technologie de Perceive est basée sur la réinvention des mathématiques des réseaux neuronaux à l'aide de techniques issues de la théorie de l'information (Image :Perceive)

"Nous ne faisons pas cela", a déclaré Teig. « Nous n'avons pas de gamme de MAC. En conséquence… nous sommes 20 à 100 fois plus écoénergétiques que tout autre produit sur le marché, la raison en est que tout le monde fait la même chose et pas nous. Notre représentation des réseaux est assez récente, et c'est ce qui nous a permis d'atteindre une si grande efficacité. Cela, plus la technologie d'apprentissage automatique qui est capable de trouver cette représentation des réseaux et de former les réseaux d'une manière qui les rend compatibles avec ce que la puce veut voir."

Image et audio

Ergo peut prendre en charge deux caméras et comprend une unité de traitement d'image qui fonctionne comme un préprocesseur, gérant des choses comme la déformation des images avec objectif fisheye, la correction gamma, l'équilibrage des blancs et le recadrage.

"Ce n'est pas fantaisiste, mais le pré-traitement qu'il est évidemment utile de faire dans le matériel, nous le faisons dans le matériel", a déclaré Teig. "Et nous avons aussi l'équivalent audio - nous pouvons prendre plusieurs microphones stéréo et former des faisceaux, par exemple."

Il existe également un microprocesseur Synopsis ARC avec un bloc DSP qui peut également être utilisé pour le pré-traitement, ainsi qu'un bloc de sécurité, également de Synopsis.

« L'une des choses que nous avons faites est de crypter absolument tout afin de maintenir un niveau de sécurité dans un environnement IoT. Nous chiffrons les réseaux, chiffrons le code qui s'exécute sur le microprocesseur, chiffrons les interfaces, chiffrons tout », a déclaré Teig.

La puce dispose d'E/S appropriées pour les capteurs en dehors de l'image et de l'audio, et elle prend en charge une mémoire Flash externe et/ou un microprocesseur qui permet des mises à jour sans fil. Cela pourrait être utilisé pour mettre à jour les réseaux de neurones chargés sur la puce, ou charger différents réseaux selon les besoins.

Ergo échantillonne maintenant avec un tableau de référence qui l'accompagne. La production de masse est prévue au deuxième trimestre 2020.


Embarqué

  1. Concevoir avec Bluetooth Mesh :puce ou module ?
  2. L'architecture de la puce IA cible le traitement des graphes
  3. Petit module Bluetooth 5.0 intégrant une antenne à puce
  4. Petit module d'IA basé sur Google Edge TPU
  5. Les chercheurs créent une petite étiquette d'identification d'authentification
  6. Débuts du processeur radar d'imagerie automobile à 30 ips
  7. La puce radar de faible puissance utilise des réseaux de neurones à pointes
  8. La carte de capteur intelligent accélère le développement de l'IA de pointe
  9. La caméra intelligente offre une IA de pointe en vision industrielle clé en main