Кратко об архитектуре нейроморфных процессоров: взгляд изнутри

Исследователи из IBM опубликовали заявку на патент со структурой нейроморфных чипов TrueNorth. Мы решили взглянуть на этот документ и рассказать, как устроен процессор IBM.

zaosoxwefpnavdi5wyay79ko4w8.jpeg
/ Flickr / IBM Research / CC

О проекте TrueNorth


TrueNorth — это нейроморфный процессор, разработанный в 2014 году компанией IBM при поддержке DARPA. Термин «нейроморфный» обозначает, что архитектура чипа основывается на принципах работы человеческого мозга.

Такое устройство эмулирует работу миллионов нейронов с отростками — дендритами и аксонами. Первые отвечают за восприятие информации, а вторые — за её передачу. При этом все нейроны соединены между собой синапсами — специальными контактами, по которым передаются электрические сигналы (нервные импульсы).

По словам разработчиков из IBM, задачей TrueNorth является ускорение обучения нейросетей. Нейроморфным процессорам, в отличие от классических, не нужно каждый раз обращаться к памяти (или регистрам) и извлекать оттуда данные — вся информация уже хранится в искусственных нейронах.

Как выглядит чип изнутри


TrueNorth изготовлен по 28-нанометровому техпроцессу. Процессор содержит 5,4 млрд транзисторов и 4096 ядер. Каждое ядро снабдили планировщиком задач, SRAM-памятью и маршрутизатором. Такая структура позволила смоделировать работу миллиона нейронов и 256 миллионов синапсов.

В своем патенте компания IBM приводит следующую схему:

6ybbgckcspnxyrhcgnglgecrtse.png


Принципы работы чипа можно представить на примере сверточных нейросетей для распознавания изображений. Процессор — это слой нейронов. Когда нейрон идентифицирует данные, например, контур фигуры, то формируется импульс. Каждый такой импульс, условно, обозначает один пиксель изображения.

Далее, первый слой нейронов передает данные следующему слою (посредством все тех же импульсов). Так, слой за слоем сеть распознает изображение — сперва контуры и детали, а затем — всю картинку.

Обычные языки не подходят для программирования нейросинаптических ядер. Поэтому в IBM разработали специальный язык Corelet. Он обладает базовыми свойствами ООП: инкапсуляция, наследование и полиморфизм и основан на MATLAB. С его помощью ядра определяют как классы, чтобы управлять их работой было проще. Пример кода разработчики привели в своей презентации (стр. 17).

Похожие решения


Над нейроморфными процессорами трудятся не только в IBM. Компания Intel с 2017 года разрабатывает чип Loihi. В его составе 130 тысяч искусственных нейронов и 130 млн синапсов. В этом году ИТ-гигант закончил производство экспериментального образца по 14-нм техпроцессу. По результатам первых тестов, чип распознает 3D-данные под разным углом, за пару секунд усваивает набор данных для обучения.

Еще один похожий проект разрабатывает компания Brainchip. Их система Akida содержит 1,2 млн нейронов и 10 млрд синапсов. Процессор оснастили интерфейсами для распознавания изображений, аудиоданных и аналоговых сигналов. Схема устройства системы представлена на сайте проекта.

Для каких задач подойдут нейрочипы


Подобны технологии призваны ускорить обучение сверточных нейронных сетей, «заточенных» под распознавание изображений. Например, в 2017 году исследователи протестировали TrueNorth и DVS-камеру (Dynamic Vision Sensor), принцип действия которой напоминает работу сетчатки глаза. Нейронная сеть распознала десять жестов с точностью 96,5%.

Кроме того, на базе процессора будут создавать системы киберзащиты. Исследователи из IBM уже предложили концепцию решения True Cyber Security, которое обнаруживает вторжения в компьютерную сеть в 90% случаев (в 80% из них определяет и тип атаки).

По замыслу разработчиков нейропроцессоров, системам МО на базе этой технологии не придется постоянно подключаться к сети для обучения, так как все алгоритмы будут реализовываться локально. Это свойство позволит применять чип в смартфонах, ЦОД и умных устройствах на базе систем ИИ.

Исследователям еще предстоит разработать решения, которые позволили бы легко программировать чип для выполнения конкретных задач. Специализированный ЯП является лишь первым шагом для развития всей экосистемы. Потому о масштабном внедрении технологии в пользовательские устройства говорить не приходится.


P.S. У нас есть Telegram-канал — там мы пишем про технологии виртуализации и IaaS:

© Habrahabr.ru