La startup qui rend possible le deep learning sans matériel spécialisé

Magie Neurale





La découverte qui a conduit Nir Shavit à créer une entreprise s'est produite comme la plupart des découvertes : par accident. Le professeur du MIT travaillait sur un projet visant à reconstruire une carte du cerveau d'une souris et avait besoin de l'aide d'un apprentissage en profondeur. Ne sachant pas comment programmer des cartes graphiques ou des GPU, le choix matériel le plus courant pour les modèles d'apprentissage en profondeur, il a plutôt opté pour une unité centrale de traitement, ou CPU, la puce informatique la plus générique que l'on trouve dans n'importe quel ordinateur portable moyen.

Et voilà, se souvient Shavit, j'ai réalisé qu'un CPU peut faire ce qu'un GPU fait - s'il est programmé de la bonne manière.

Cette idée est maintenant à la base de sa startup, Neural Magic, qui a lancé sa première suite de produits aujourd'hui. L'idée est de permettre à n'importe quelle entreprise de déployer un modèle d'apprentissage en profondeur sans avoir besoin de matériel spécialisé. Cela réduirait non seulement les coûts de l'apprentissage en profondeur, mais rendrait également l'IA plus largement accessible.



Cela signifierait que vous pourriez utiliser des réseaux de neurones sur beaucoup plus de machines et bien d'autres existant machines, explique Neil Thompson, chercheur au laboratoire d'informatique et d'intelligence artificielle du MIT, qui n'est pas impliqué dans la magie neurale. Vous n'auriez pas besoin de passer à quelque chose de spécial.

Les GPU sont devenus le matériel de choix pour l'apprentissage en profondeur en grande partie par coïncidence. Les puces ont été initialement conçues pour restituer rapidement des graphiques dans des applications telles que les jeux vidéo. Contrairement aux processeurs, qui ont quatre à huit cœurs complexes pour effectuer une variété de calculs, les GPU ont des centaines de cœurs simples qui ne peuvent effectuer que des opérations spécifiques, mais les cœurs peuvent s'attaquer à leurs opérations en même temps plutôt que l'un après l'autre, ce qui réduit le temps. il faut pour effectuer un calcul intensif.

Il n'a pas fallu longtemps à la communauté de recherche sur l'IA pour se rendre compte que cette parallélisation massive rend également les GPU parfaits pour l'apprentissage en profondeur. Comme le rendu graphique, l'apprentissage en profondeur implique des calculs mathématiques simples effectués des centaines de milliers de fois. En 2011, en collaboration avec le fabricant de puces Nvidia, Google trouvé qu'un modèle de vision par ordinateur qu'il avait formé sur 2 000 processeurs pour distinguer les chats des humains pouvait atteindre les mêmes performances lorsqu'il était formé sur seulement 12 GPU. Les GPU sont devenus la puce de facto pour la formation et l'inférence de modèles - le processus de calcul qui se produit lorsqu'un modèle formé est utilisé pour les tâches pour lesquelles il a été formé.



Mais les GPU ne sont pas non plus parfaits pour l'apprentissage en profondeur. D'une part, ils ne peuvent pas fonctionner comme une puce autonome. Parce qu'ils sont limités dans les types d'opérations qu'ils peuvent effectuer, ils doivent être attachés aux processeurs pour gérer tout le reste. Les GPU ont également une quantité limitée de mémoire cache, la zone de stockage de données la plus proche des processeurs d'une puce. Cela signifie que la majeure partie des données est stockée hors puce et doit être récupérée au moment du traitement. Le flux de données aller-retour finit par constituer un goulot d'étranglement pour le calcul, limitant la vitesse à laquelle les GPU peuvent exécuter des algorithmes d'apprentissage en profondeur.

Magie Neurale

Bureau de Neural Magic.

MAGIE NEURONE

Au cours des dernières années, des dizaines d'entreprises ont surgi pour concevoir des puces IA qui contournent ces problèmes. Le problème est que plus le matériel est spécialisé, plus il devient cher.



Neural Magic a donc l'intention de contrer cette tendance. Au lieu de bricoler le matériel, la société a modifié le logiciel. Il a repensé les algorithmes d'apprentissage en profondeur pour fonctionner plus efficacement sur un processeur en utilisant la grande mémoire disponible et les cœurs complexes des puces. Alors que l'approche perd la vitesse obtenue grâce à la parallélisation d'un GPU, elle gagnerait à peu près le même temps en éliminant le besoin de transporter des données sur et hors de la puce. Les algorithmes peuvent fonctionner sur des processeurs à des vitesses GPU, selon la société, mais à une fraction du coût. Il semble que ce qu'ils ont fait est de trouver un moyen de tirer parti de la mémoire du processeur d'une manière que les gens n'ont jamais fait auparavant, dit Thompson.

Neural Magic pense qu'il peut y avoir plusieurs raisons pour lesquelles personne n'a adopté cette approche auparavant. D'abord, c'est contre-intuitif. L'idée que l'apprentissage en profondeur nécessite du matériel spécialisé est tellement ancrée que d'autres approches peuvent facilement être négligées. Deuxièmement, l'application de l'IA dans l'industrie est encore relativement nouvelle et les entreprises commencent tout juste à chercher des moyens plus simples de déployer des algorithmes d'apprentissage en profondeur. Mais on ne sait toujours pas si la demande est suffisamment profonde pour que Neural Magic décolle. L'entreprise a testé son produit en version bêta avec une dizaine d'entreprises, ce qui n'est qu'une partie de l'industrie de l'IA au sens large.

Nous voulons améliorer non seulement les réseaux de neurones, mais également l'informatique dans son ensemble.



Neil Thompson

Neural Magic propose actuellement sa technique d'inférence de tâches en vision par ordinateur. Les clients doivent toujours former leurs modèles sur du matériel spécialisé, mais peuvent ensuite utiliser le logiciel de Neural Magic pour convertir le modèle formé dans un format compatible avec le processeur. Un client, un grand fabricant d'équipements de microscopie, teste actuellement cette approche pour ajouter des capacités d'IA sur l'appareil à ses microscopes, explique Shavit. Étant donné que les microscopes sont déjà équipés d'un processeur, ils n'auront pas besoin de matériel supplémentaire. En revanche, l'utilisation d'un modèle d'apprentissage en profondeur basé sur GPU nécessiterait que l'équipement soit plus volumineux et plus gourmand en énergie.

Un autre client souhaite utiliser Neural Magic pour traiter les images des caméras de sécurité. Cela lui permettrait de surveiller le trafic entrant et sortant d'un bâtiment à l'aide d'ordinateurs déjà disponibles sur place ; sinon, il pourrait devoir envoyer les images dans le cloud, ce qui pourrait introduire des problèmes de confidentialité, ou acquérir du matériel spécial pour chaque bâtiment qu'il surveille.

Shavit dit que l'inférence n'est également que le début. Neural Magic prévoit d'étendre ses offres à l'avenir pour aider les entreprises former leurs modèles d'IA sur les processeurs également. Nous pensons que d'ici 10 à 20 ans, les processeurs seront le véritable tissu d'exécution des algorithmes d'apprentissage automatique, dit-il.

Thompson n'en est pas si sûr. L'économie a vraiment changé autour de la production de puces, et cela va conduire à beaucoup plus de spécialisation, dit-il. De plus, bien que la technique de Neural Magic tire plus de performances du matériel existant, les avancées matérielles fondamentales resteront le seul moyen de continuer à faire avancer l'informatique. Cela semble être un très bon moyen d'améliorer les performances des réseaux de neurones, dit-il. Mais nous voulons améliorer non seulement les réseaux de neurones, mais aussi l'informatique dans son ensemble.

cacher