Железо

Аналоговая память IBM ускорит глубокое машинное обучение

Чтобы было хорошо, компьютер по структуре и методу работы должен быть похож на мозг человека. Как уже не раз было заявлено, современные микропроцессорные архитектуры и процессоры плохо подходят на роль аппаратных платформ для машинного обучения и, собственно, для платформ с искусственным интеллектом. С другой стороны, эволюция сотни тысяч лет работала над проектом «человек» и в этом деле может считаться экспертом. «Венец природы» не лишён самолюбия, да.

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

А раз высокая точность не нужна (для этого достаточно точности работы программной модели), то платформу для запуска задач на DNN (deep neural network) можно выполнить без использования сложных, но классических логических цепей с использованием многочисленных блоков для исполнения операций умножения и накопления. Исследователи IBM расценили, что работа нейронных сетей для глубокого обучения не обязательна должна обладать такой же точностью, как исполнение двоичного кода.

Иначе говоря, данные в ячейках памяти хранятся не в виде 0 или 1, а в виде некоего весового значения, которое вычисляется с приблизительной точностью и может иметь значительный разброс в значениях, включая выход далеко за пределы 1. Упрощённая платформа IBM для сетей с глубоким обучением предполагает использование аналоговой памяти. В качестве примера аналоговой памяти можно привести магнитофонную магнитную плёнку или современные её виды — это резистивная память и память с ячейкой из вещества с изменяемым фазовым состоянием (phase-change memory, PCM).

Условная структура аналоговй памяти IBM (IBM)

Условная структура аналоговой памяти IBM (IBM)

Вместо больших цепей для умножения и сложения цифровых значений друг с другом, мы просто пропускаем небольшой ток через сопротивление в проводнике и затем просто соединяем множество таких проводников вместе, позволяя току нарастать. Компания IBM так описывает работу аналоговой памяти: «Эта память позволяет выполнять операции умножения-накопления через распараллеливание с помещением в аналоговые домены весовых значений [данных], используя соответствующую физику [процесса]. Это позволяет совершать множество вычислений одновременно, вместо выполнения последовательных операций».

Но на опытах IBM показала, что точность работы определённых моделей нейронных сетей на аналоговой памяти достаточная для выполнения многих задач. Понятно, что с  точностью у вычислений «проводок плюс проводок» будет не так хорошо, как в случае работы триггера. Это будет в разы больше, чем при запуске нейронных сетей на графических процессорах с одинаковой точностью в вычислениях. По прикидкам, на основе разработки можно создать ускоритель работы DDN с энергетической эффективностью 28 065 Гигаопераций/с/Вт или с пропускной способностью 3,6 Тераопераций/с/мм2. К тому же, расчёт весовых значений и их изменение происходят непосредственно в запоминающем элементе, что устраняет необходимость в энергоёмкой передаче данных из памяти в процессор и обратно.

Теги
Показать больше

Похожие статьи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Кнопка «Наверх»
Закрыть