Техасский университет разработал нейросети без умножений

Лизи К. Джон, профессор электротехники и вычислительной техники Техасского университета в Остине, пять лет занимается так называемыми безвесовыми нейросетями (weightless neural networks). Обычные нейросети умножают входные данные на веса миллионы или миллиарды раз за один запрос, это и есть основная статья расхода энергии. Безвесовая сеть вместо умножения пропускает бинарные входы через связанные между собой таблицы поиска: по сути, ищет готовый ответ (0 или 1), а не решает арифметическую задачу заново.
Идея не новая: в 1980-х в Великобритании на её основе выпустили коммерческий продукт для распознавания образов, но он исчез с рынка; несколько профессоров Федерального университета Рио-де-Жанейро продолжали тихо развивать подход небольшой исследовательской группой. Джон подключилась к теме несколько лет назад, знакомый пригласил её на еженедельную встречу по этой теме, зная её опыт в разработке аппаратных решений. У неё был аспирант, до этого работавший со спайковыми нейросетями (ещё одной альтернативой обычным сетям), общим знаменателем стала энергоэффективность. Меньше чем за полгода команда запустила прототип на ПЛИС (FPGA), готовой микросхеме, и получила сети, которые не требовали GPU и оказались в 1000 раз компактнее аналогов.
Аргумент Джон: современная архитектура нейросетей опирается на модель нейрона McCulloch-Pitts 1943 года, просто масштабированную до миллионов и миллиардов параметров, но это не значит, что такой объём вычислений действительно нужен. Умножение, дорогая операция что для аппаратуры, что для человеческого мозга (недаром таблицу умножения в детстве учат с трудом), а сам мозг решает задачи, потребляя всего около 20 ватт.
Команда уже показала результаты на конкретных узких задачах. На распознавании активности человека и медицинском мониторинге (ЭКГ, ЭЭГ, давление) безвесовые сети требуют примерно в 1000 раз меньше энергии: там, где лучший компактный аналог занимает 17 мегабайт, модель команды, 14 килобайт, то есть более чем в 1000 раз меньше. Это позволяет обрабатывать данные прямо на сенсоре, не передавая их постоянно на телефон или сервер, экономия энергии и одновременно защита приватности, поскольку данные не покидают устройство. На задаче распознавания командного слова (типа «Алекса») лучшая промышленная модель тратит свыше 5000 наноджоулей на один вывод, сеть команды, от 42 до 79 наноджоулей в зависимости от варианта, то есть в десятки раз меньше. Отдельно команда собрала детектор аритмии на гибкой пластиковой подложке: та вмещает лишь около 10 000 логических элементов против миллиардов на современном чипе техпроцесса 2, 5 нанометров, но обычная нейросеть на такую малую базу не поместится, безвесовая помещается, к тому же производство такой подложки расходует меньше воды, чем стандартное производство чипов.
Первая цель применения, медицинский мониторинг: устройство размером с пластырь, которое человек носит неделю, пока врач следит за показателями удалённо. Вторая, химические эксперименты: студенты сейчас передают данные на обработку с задержкой и потерями точности, а команда хочет разместить ИИ прямо в точке эксперимента, чтобы ответ был мгновенным. Что касается чат-ботов и языковых моделей, трансформер поочерёдно применяет слой внимания (attention) и многослойный перцептрон (MLP); команда Джон уже заменила таблицами поиска часть с многослойным перцептроном, это примерно половина сети, но пока не трогала механизм внимания. Полноценной замены для языковых моделей ещё нет, хотя Джон считает их следующей целью.
Переход не требует менять остальную инфраструктуру: те же данные для обучения подходят, а иногда нужно даже меньше данных. Обучение по-прежнему идёт на GPU, потому что это самые мощные доступные компьютеры, но Джон надеется в будущем перейти на обучение прямо на ПЛИС, у них уже есть встроенные небольшие таблицы поиска, что делает их естественной платформой и для обучения, и для вывода. ПЛИС используют таблицы поиска больше 30 лет, но это не массовый сегмент рынка; отдельные работы по ИИ уже заменяют лишь часть умножений одной большой таблицей поиска, но не сетью из множества маленьких взаимосвязанных таблиц, как у команды Джон.
По словам Джон, над этим направлением работает гораздо меньше людей, чем над трансформерами: пока подход показал успех только на небольших задачах, и у сообщества нет уверенности, что он масштабируется на крупные модели, слишком просто выглядит для этого. На конференциях и в университетах идея впечатляет тех, кто её слышит, но таких пока немного. Джон надеется, что демонстрация успеха на достаточно крупной языковой модели привлечёт больше исследователей в область.
Ключевые факты
- Лизи К. Джон (Техасский университет в Остине) пять лет развивает безвесовые нейросети, они заменяют умножение входов на веса поиском ответа в связанных таблицах.
- На узких задачах (медсенсоры, распознавание активности, командные слова) сети команды на порядки компактнее и экономичнее аналогов: модель весом 14 килобайт против 17 мегабайт у лучшего конкурента.
- Для распознавания командного слова вроде «Алекса» сеть тратит 42, 79 наноджоулей на вывод против свыше 5000 наноджоулей у промышленного эталона.
- Команда уже заменила таблицами поиска многослойный перцептрон в архитектуре трансформера (около половины сети), но не механизм внимания, до языковых моделей подход ещё не дошёл.
- Похожий продукт уже существовал в Великобритании в 1980-х и исчез с рынка; сейчас над темой работает лишь горстка исследователей, заметно меньше, чем над трансформерами.
Почему это важно
Современные нейросети тратят основную часть энергии на умножение входов на веса, миллионы и миллиарды операций на один запрос. Безвесовые нейросети заменяют умножение поиском готового ответа в связанных таблицах и, по демонстрациям команды, могут быть на порядки экономичнее по энергии и памяти на тех же задачах, это прямой ответ на растущий счёт за энергию, который платит индустрия ИИ.
Кому это важно
В первую очередь, разработчикам носимых медицинских сенсоров и встраиваемых/IoT-устройств с ограниченным зарядом батареи, где данные сегодня приходится постоянно гонять на сервер для обработки. В перспективе, командам, ищущим способы удешевить по энергии языковые модели и чат-боты, хотя до этого подходу ещё далеко.
Как это применить
Метод уже проверен на прототипах ПЛИС для узких задач: недельный медицинский пластырь-сенсор без постоянной передачи сырых данных, мгновенный анализ прямо в точке химического эксперимента, чип распознавания командного слова. Инфраструктуру менять не нужно, годятся те же обучающие данные, обучение пока идёт на обычных GPU; для языковых моделей метода в готовом виде ещё нет, заменена только половина архитектуры трансформера (многослойный перцептрон), без механизма внимания.
Можно ли доверять
Материал, интервью IEEE Spectrum с именным профессором, приводящим конкретные измеренные цифры (14 килобайт против 17 мегабайт, 42, 79 наноджоулей против 5000+) по уже выполненным демонстрациям, это внушает доверие к описанным результатам. Но заявления о будущем применении к чат-ботам и большим языковым моделям остаются перспективой, а не показанным результатом: заменена только половина архитектуры трансформера, и подтверждений масштабируемости на крупные модели пока нет.
Риски и подводные камни
Подход подтверждён только на небольших узких задачах (сенсоры, распознавание командных слов), нет доказательств, что он масштабируется на трансформеры с миллиардами параметров. Сообщество исследователей вокруг темы намного меньше, чем вокруг трансформеров, а вся экосистема (GPU, фреймворки, инструменты) заточена под умножение весов, что повышает издержки перехода. Похожая идея уже была коммерциализирована в Великобритании в 1980-х и исчезла с рынка, риск, что и нынешний интерес не переживёт отсутствие успеха на по-настоящему крупной модели, реален.
«Когда вы задаёте мне вопрос, я не совершаю умножений, чтобы на него ответить, я просто думаю: да, нет, сказать это или не сказать. А человеческий мозг тратит на это всего около 20 ватт энергии.»
— Лизи К. Джон, профессор электротехники и вычислительной техники, Техасский университет в Остине