IBM адаптировала сверточную нейронную сеть для работы на нейроморфном чипе

IBM адаптировала сверточную нейронную сеть для работы на нейроморфном чипе

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

Мозг человека содержит около 86 миллиардов нейронов — клеток, которые соединяются с тысячами других нейронов с помощью отростков — синапсов. Нейрон получает сигналы от многих других, и когда стимуляция достигает определенного порога, он «активируется», посылая свой собственный сигнал окружающим нейронам. Мозг учится, в частности, путем корректировки крепких связей. Когда последовательность действий повторяется, например, посредством практики, сопутствующие синапсы становятся сильнее, а полученный урок или умение «вписывается» в сеть.

В 1940-х годах ученые начали моделировать нейроны математически, а в 50-х — создавать сети из нейронов и компьютеров. Искусственные нейроны и синапсы намного проще, чем в мозге, но действуют по тем же принципам. Множество простых единиц — нейронов — соединяются с другими через «синапсы» с их числовыми значениями в зависимости от значений единиц.

Сверточные нейронные сети (convolutional neural network, CNN) — это особый тип сетей, который приобрел популярность в последние несколько лет. CNN извлекают важные функции из стимулов — как правило, фотографий. Возьмем, к примеру, фотографию собаки. Ее можно представить в виде слоя нейронов, где активация одного нейрона представляет один пиксель в изображении. На следующем слое каждый нейрон будет принимать входные данные из набора первого слоя и активироваться, если обнаруживает определенный паттерн в этом наборе, действуя своего рода как фильтр.

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

Сейчас такие вычисления обходятся дорого. Учитывая, что в человеческом мозге миллиарды нейронов и триллионы синапсов, имитация каждого пока невозможна. Даже симуляция небольшой части мозга потребует миллионы вычислений для каждого элемента ввода, на что нужны огромные вычислительные мощности. В крупнейших современных CNN могут быть миллионы нейронов и миллиарды синапсов, но не более.

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

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

В 1980-х годах инженер Карвер Мид (Carver Mead) придумал термин «нейроморфные процессоры», чтобы описать компьютерные чипы, которые работают в некотором смысле подобно мозгу. Его работа заложила основу для этой области. И хотя термин «нейроморфный» теперь применяют к большому спектру решений, все они пытаются повторить механизм работы нейронных сетей на аппаратном уровне, избегая узких мест, с которыми сталкиваются традиционные процессоры.

Увидев необходимость в быстром и эффективном машинном обучении, Управление перспективных проектов Министерства обороны США (больше известное по аббревиатуре DARPA) с 2008 года активно финансирует корпоративную лабораторию IBM HRL Laboratories, чтобы та разрабатывала нейроморфные машины, которые можно легко масштабировать.

TrueNorth

В 2014 году IBM представила свой чип TrueNorth на обложке журнала Science. С тех пор компания разрабатывает системы на базе TrueNorth при финансовой поддержке Министерства энергетики США, ВВС и армии. Один такой чип содержит миллион «нейронов», каждый из которых представлен группой цифровых транзисторов, и 256 миллионов «синапсов» — проводных соединений между чипами.

Более эффективными по сравнению с обычными чипами нейроморфные архитектуры становятся благодаря двум функциям. Во-первых, такой чип, подобно мозгу, общается через «вспышки» — одномерные пакеты информации, отправленные из одного нейрона в нисходящие нейроны. Сигналы просты (есть вспышка или нет ее) и передаются только изредка, когда нейрон передает пакет. Во-вторых, так же как и в мозге, обработка и память расположены в нейронах и синапсах. На традиционном компьютере блок обработки данных постоянно извлекает информацию из отдельных областей памяти, выполняет операции, а затем возвращает новую информацию в память. Это приводит к множеству медленных и энергозатратных действий.

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

Ключевой частью проекта IBM было создание не только чипа, но и программного обеспечения. Компания создала симулятор, новый язык программирования и библиотеку алгоритмов и приложений. Затем компания предоставила эти инструменты более чем 160 исследователям в академических, национальных и корпоративных лабораториях. Дизайн TrueNorth был завершен в 2011 году, а революция сверточных нейронных сетей произошла в 2012 году в рамках соревнований ImageNet Challenge. Поэтому некоторые люди стали задаваться вопросом, смогут ли чипы TrueNorth обрабатывать эти сети.

В CNN используется метод обратного распространения ошибки. Каждый раз, когда сеть ошибается, вычисляется разница между ее предположением и правильным ответом. Алгоритм обратного распространения ошибки рассматривает каждый нейрон в конечном слое и вычисляет, насколько изменение в выходе этого нейрона уменьшит общую ошибку. Затем он возвращается к предыдущим нейронам и вычисляет, насколько изменение в силе каждого входящего синапса уменьшит общую ошибку.

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

Изначально TrueNorth считался несовместимым с алгоритмом обратного распространения ошибки, поскольку градиентный спуск требует внесения крошечных корректировок в веса и видения крошечных улучшений. TrueNorth максимизирует свою эффективность, используя только три разных значения веса: -1, 0 и 1, а выход из нейрона равен 0 или 1. Градиентов нет, только дискретные шаги.

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

Другой ключевой разработкой было сопоставление CNN с множеством соединений с нейронами на чипе, который предполагает только 256 подключений на один нейрон. Этого удалось достигнуть путем назначения определенных пар нейронов, срабатывающих одновременно, которые объединили в один нейрон через входы и выходы.

Несмотря на достаточно высокую производительность TrueNorth, он был создан без учета особенностей глубоких нейросетей и CNN, поэтому по сравнению с другими системами у него есть недостатки. Например, чтобы сеть из 30 тысяч нейронов работала, потребуется 8 чипов (8 миллионов нейронов). Кроме того, TrueNorth — полностью цифровой чип, когда как некоторые имеют аналоговые компоненты. Их работа более непредсказуемая, но все-таки более эффективная. И хотя каждый чип TrueNorth делится на 4096 «ядер», которые работают параллельно, 256 нейронов в каждом ядре обновляются только последовательно и по одному за раз.

Последовательная обработка нейронов в ядре TrueNorth может создать узкое место, но она же обеспечивает регулярность. А это значит, что поведение чипа можно моделировать с высокой точностью на настольных компьютерах. При этом чип универсален — может поддерживать множество различных типов сетей, а текущая цель команды создателей чипа под руководством главного научного сотрудника IBM по мозгоподобным вычислениям Дхармендра Модха (Dharmendra Modha) заключается в том, чтобы развернуть несколько разных сетей, работающих вместе — достигнуть композиционности.

Планы на будущее

В дополнение к достижению композиционности команда Модха стремится исследовать различные методы обучения. Также ученые отмечают, что методы, описанные в их работе, могут применяться к нейроморфным чипам, отличным от TrueNorth. Более того, помимо новых методов обучения, команда задумывается и о более радикальных достижениях. Согласно отчету Департамента энергетики США от 2015 года о нейроморфных вычислениях, в настоящее время около 5-15% мировой энергии расходуется в той или иной форме обработки и передачи данных. Вместе с этим Департамент хочет повысить скорость, эффективность и отказоустойчивость сетей. Этот отчет подтолкнул команду IBM к мысли о разработке материалов с новыми физическими свойствами.

Глобальная цель — заменить гигантские центры обработки данных чипами в смартфонах, домах и автомобилях, которые могут «думать» сами за себя: вести разговоры, делать научные и медицинские открытия, управлять автомобилями, роботами или протезами конечностей. В идеале эти чипы могут достигнуть еще больших успехов, например, решить проблему голода в мире.

Несколько исследовательских лабораторий уже активно используют TrueNorth. В августе 2016 года Samsung продемонстрировала систему, которая использует видеопоток для создания 3D-карты окружающей среды в трех измерениях со скоростью 2000 кадров в секунду, потребляя треть ватта. Компания применила эту систему для управления телевидением жестами рук.

В Национальной лаборатории Лоуренса Ливермора есть плата из 16 чипов TrueNorth, которая применяется для повышения кибербезопасности и обеспечения безопасности ядерных вооружений США. Исследовательская лаборатория ВВС, которая использует TrueNorth для обеспечения автономной навигации беспилотных летательных аппаратов, недавно объявила о планах опробовать массив из 64 чипов.

 
Источник

cnn, IBM, truenorth, нейронные сети

Читайте также