Выпуск #9/2020
Н. Андреева, В. Лучинин, Е. Рындин
МУЛЬТИМОДАЛЬНЫЕ НЕЙРОМОРФНЫЕ МОДУЛИ НА ОСНОВЕ МНОГОУРОВНЕВОЙ МЕМРИСТОРНОЙ ЛОГИКИ
МУЛЬТИМОДАЛЬНЫЕ НЕЙРОМОРФНЫЕ МОДУЛИ НА ОСНОВЕ МНОГОУРОВНЕВОЙ МЕМРИСТОРНОЙ ЛОГИКИ
Просмотры: 1666
DOI: 10.22184/1992-4178.2020.200.9.72.82
Рассматриваются вопросы адаптации мемристивных устройств с многоуровневым переключением сопротивления для использования в искусственных нейронных сетях в качестве электронных эквивалентов синапсов.
Рассматриваются вопросы адаптации мемристивных устройств с многоуровневым переключением сопротивления для использования в искусственных нейронных сетях в качестве электронных эквивалентов синапсов.
Теги: memristor structures neural networks neural network simulation neuromorphic systems мемристорные структуры моделирование нейронных сетей нейроморфные системы нейронные сети
Мультимодальные нейроморфные модули на основе многоуровневой
мемристорной логики
Н. Андреева, к. ф.‑ м. н., В. Лучинин, д. т. н., Е. Рындин, д. т. н.
Рассматриваются вопросы адаптации мемристивных устройств с многоуровневым переключением сопротивления для использования в искусственных нейронных сетях в качестве электронных эквивалентов синапсов. Представлен программно-аппаратный подход к интеграции разработанных синаптических мемристивных структур в базовые нейроморфные модули.
Формирование ключевых подходов нейроморфных систем подразумевает синтез концептуальных представлений о функционировании биологических нейронных сетей, программных алгоритмов их реализации [1–4], протоколов передачи асинхронных потоков физиологических данных [5, 6], современной технологии мемристорных структур [7–10]; интеграцию многоуровневой мемристорной логики в схемотехнические решения базовых нейроморфных модулей [11–12], а также изучение основных закономерностей их последующей самоорганизации и синхронизации с биологическими подсистемами [13–16].
Интерес к развитию нейроморфных систем стимулируется необходимостью перехода к массивным параллельным аналоговым вычислениям при организации искусственных нейронных сетей [17]. Использование классической архитектуры нейронных сетей с алгоритмами глубокого машинного обучения на существующей компьютерной архитектуре при распараллеливании потока входных данных приводит к увеличению времени обучения, проблемам маршрутизации данных, становится крайне неэффективным при работе с большими асинхронными потоками данных и требует большого энергопотребления [18, 19].
Применение новой электронной компонентной базы и архитектуры нейронных сетей третьего поколения, способных к самообучению, позволяет рассчитывать на повышение скорости обработки параллельного потока нейронных сигналов в режиме реального времени, при снижении общего энергопотребления и миниатюризации самих устройств.
В настоящее время, мемристор рассматривается в качестве наиболее перспективного кандидата на роль электронного эквивалента синапса в архитектуре нейроморфных систем.
Несомненным преимуществом мемристивных структур на основе тонких слоев оксидов металлов является их хорошая масштабируемость (наномасштабная топология до ~2 нм), плотность записи >0,7 Тб / см 2 [20]), обеспечивающая возможность интеграции в СБИС, совместимых с КМОП-технологией, при использовании в структуре активных и пассивных кроссбар (crossbar) массивов [12, 21]. Более того, использование мемристоров в качестве новой электронной компонентной базы обладает рядом преимуществ: более высокие скорости переключения между высокоомным и низкоомным состояниями (85 пс для мемристоров на основе нитридов [22]), бóльшая устойчивость к циклической деградации, меньшее энергопотребление (<10 фДж / операцию [23]).
Следует отметить, что главной трудностью при попытках использования мемристоров на основе металлооксидных структур в качестве резистивной памяти с низким энергопотреблением для рынка Интернета вещей является вариабельность основных рабочих характеристик структур, обусловленная влиянием флуктуаций микроскопических параметров. Более того, в настоящее время не существует «универсального» мемристора, сочетающего в себе весь спектр заявленных преимуществ [24].
Тем не менее, при интеграции в нейроморфные модули в качестве синаптического элемента, мемристивные структуры на основе тонких металлооксидных слоев обладают исключительным преимуществом перед остальными элементами электронной компонентной базы, а именно, возможностью создания многоуровневых состояний. Такая возможность обеспечивает аналоговую перестройку веса синаптической связи и позволяет имплементировать основные модели синаптической пластичности на аппаратном уровне [25–26], включая модель пластичности, зависимую от времени импульса [27–28], долговременную потенциацию и депрессию [29, 30]. В этом случае веса связей между нейронами изменяются физически (за счет аналоговой перестройки резистивного состояния мемристора), а не на программном уровне, что значительно повышает эффективность обработки асинхронных потоков входных данных.
Необходимо подчеркнуть, что использование коммерчески доступных технологий для эмуляции работы одного синапса требует десятки устройств, что делает саму идею аппаратной реализации нейронных сетей с использованием традиционной электронной компонентной базы бесперспективной.
В то же время конвергенция перспективных подходов к созданию мемристивных гетероструктур позволяет создавать мемристоры с уникальными адаптивными свойствами в широком диапазоне по сопротивлению [24, 31]. Под адаптивными свойствами в данном случае подразумевается возможность аналогового многоуровневого изменения электрического сопротивления структуры под действием приложенного напряжения и запоминание полученного таким образом резистивного состояния. Таким образом, можно сказать, что с позиций материаловедения, в качестве основного тренда при аппаратной реализации нейронных сетей выступает разработка дизайна многоуровневых мемристивных систем с возможностью аналоговой перестройки между энергонезависимыми состояниями по сопротивлению в широком диапазоне величин.
Ранее нами были разработаны мемристивные системы с многоуровневым резистивным переключением на основе тонкопленочных гетерогенных структур Pt / TiO2 / Al2O3 / Pt, в которых за счет сочетания особенностей электронного характера биполярного переключения с изменением концентрации кислородных вакансий в активном слое достигалась аналоговая (многоуровневая) перестройка резистивного состояния в диапазоне семи порядков по величине (рис. 1) [32–34].
В статье освещены вопросы адаптации мемристивных устройств с многоуровневым переключением сопротивления для использования в искусственных нейронных сетях в качестве электронных эквивалентов синапсов. Представлен программно-аппаратный подход к интеграции разработанных синаптических мемристивных структур в базовые нейроморфные модули.
Изложение материала организовано следующим образом: в первой части статьи описывается идеология построения спайковой нейронной сети прямого распространения на базе разработанных мемристивных структур с многоуровневым переключением сопротивления, приводятся результаты компьютерного моделирования работы такой сети для решения задач классификации видео- и аудиосигналов. Во второй части приводятся схемотехнические решения для основных блоков нейронной сети, а также результаты SPICE-моделирования их работы. В третьей части представлены возможные варианты решений, обеспечивающих мультимодальность работы представленного варианта базового нейроморфного модуля.
Компьютерное моделирование спайковых нейронных сетей на основе многоуровневых мемристивных синапсов для распознавания пространственно-временных корреляций в потоке входных данных
Спайковые нейронные сети прямого распространения рассматриваются в качестве наиболее физиологически реалистичной модели биологических нейронных сетей. В таких сетях модели нейронов обмениваются между собой короткими импульсами, или спайками, распространение которых по сети определяется набором временных задержек. Их наличие является ключевым моментом, поскольку позволяет обрабатывать информацию в соответствии с известными базовыми алгоритмами работы биологических нейронных сетей, а также имплементировать механизмы обучения и памяти. Как правило, для обучения спайковых нейронных сетей используются хеббоподобные правила, определяющие усиление или ослабление синаптической связи между нейронами и являющиеся, по сути, самоорганизующимися алгоритмами, реализующими обучение без учителя. Следует отметить, что реализация самообучающихся спайковых нейронных сетей на существующей компьютерной архитектуре подразумевает распараллеливание потока входных данных (на количество используемых ядер) для повышения скорости обработки и крайне неэффективна при работе с большими потоками данных.
В качестве модели спайковой нейронной сети для аппаратной реализации на базе мемристивных синапсов была выбрана архитектура перцептрона со встроенными механизмами обучения без учителя. Работа спайковой нейронной сети поясняется на рис. 2. На вход сети поступает асинхронный поток импульсов (спайков) с динамического видеодатчика DVS (dynamic vision sensor, используется в протезах сетчатки для отслеживания движения). В данном случае нами был сгенерирован тестовый набор данных для эмуляции траектории движения сферы в восьми направлениях. Таким образом, входные данные представляли собой массив импульсов (28 × 28) с приемной части динамического видеодатчика. Изменению состояния пиксела приемной части видеодатчика соответствует событие, или генерация спайка нейроном входного слоя сети. Каждый выходной нейрон соединен со всеми пикселами входной матрицы синапсами. Выходной нейрон работает по принципу «интегрировать – и – сработать» с утечками. Нейрон генерирует выходной импульс, если за время τleak происходит превышение заданного уровня (ITH) сигнала на его входе u. Между двумя входными импульсами (спайками) значение сигнала u на входе нейрона получается решением уравнения:
.
Обновление (апдейт) состояния нейрона происходит только в моменты поступления на его вход импульсов tspike. Уровень сигнала на входе нейрона в момент поступления импульса определяется:
,
где ω – изменяющийся вес связи (синапса) входного пиксела с нейроном (правила изменения веса связи изложены ниже).
После того как уровень входного сигнала u нейрона превысит пороговый, генерируется выходной импульс, который поступает на все связи (синапсы) сети. Значение сигнала u обнуляется и не изменяется в течение времени TREF (рефрактерный период).
Для интеграции механизмов обучения без учителя в рассматриваемую модель нейронной сети использовались два правила. Первое правило – это модифицированная «модель пластичности, зависимой от времени импульса» (STDP), суть которой состоит в том, что в момент генерации выходного импульса (post-spike) нейроном веса всех связей (синапсов) сети уменьшаются на величину Δω– (т. н. антихеббовское правило), за исключением тех связей (синапсов), на которые был подан входной импульс (pre-spike) в течение промежутка времени TLTP до момента генерации выходного импульса. Вес связей (синапсов), на которые поступил входной импульс в промежуток времени t < TLTP, увеличивается на величину Δω+. Обновление (апдейт) весов связей происходит в момент генерации выходного импульса по правилам:
,
,
– параметры связи, обеспечивающие оптимальную работы нейронной сети. и – максимально и минимально возможные значения веса связи.
Второе правило обучения – это «латеральное торможение» (или латеральное ингибирование) нейронов, заключающееся в том, что в момент генерации выходного импульса каким-либо нейроном дезактивируются (ингибируются) все оставшиеся нейроны сети на время Tinhibit (время ингибирования). В течение этого промежутка времени нейроны перестают интегрировать входной сигнал u. Время ингибирования складывается с периодом рефрактерности нейрона TREF, если . Предполагается, что в начальный момент времени веса связей равномерно распределены.
Для оптимизации параметров связей и характеристических временных периодов нейронной сети с целью их дальнейшего использования при схемотехническом моделировании, было проведено компьютерное моделирование ее работы при решении задач по определению наличия пространственно-временной корреляции во входном потоке данных.
Пространственно-временная корреляция – это, фактически, наличие определенных существенных черт во входном сигнале, которые нейронная сеть «учится» распознавать.
Следует отметить, что для этого сеть должна обладать «рабочей памятью», временной масштаб которой сравним с характерным временем пространственно-временного образа входного сигнала, и, как правило, составляет сотни миллисекунд при миллисекундных длительностях спайков и времен их распространения [35]. Этот вид памяти является своего рода оперативной памятью, в отличие от долговременной памяти, реализуемой в процессе обучения и обусловленной медленными изменениями синаптических весов.
При компьютерном моделировании спайковой нейронной сети использовался объектно-ориентированный подход, в рамках которого нейронная связь (или синапс) рассматривается в качестве объекта низкого уровня (low level object), ее параметры содержат информацию о текущем весе и времени наступления события (генерации спайка) на входе сети.
Нейронные связи являются составной частью объектов более высокого уровня – нейронов сети (интеграторов с утечкой и адаптивным порогом). Каждый нейрон обладает своим массивом связей, а также соответствующим набором постоянных признаков: порогом срабатывания, периодом рефрактерности, временем ингибирования, и переменным признаком – временем последнего срабатывания (для последующей реализации алгоритмов латерального ингибирования и периода рефрактерности). Событие на входе нейрона приводит к перерасчету уровня сигнала, при превышении порога производится перераспределение текущих весов его связей в соответствии с моделью синаптической пластичности, зависимой от времени импульса. Таким образом, веса связей нейрона, для которых время между входным событием и превышением порога на постнейроне (т. е. генерацией выходного спайка) находится в пределах STDP окна, увеличиваются, в то время как веса остальных связей уменьшаются (рис. 2). Каждый постнейрон сети обрабатывается независимо от других нейронов, за исключением тех случаев, когда используются алгоритмы латерального ингибирования.
Изложенный выше подход к моделированию был применен при разработке программного комплекса реализации спайковой нейронной сети для распознавания пространственно-временных корреляций в аудио- и визуальном потоках входных данных с использованием среды исполнения Java Virtual Machine (Oracle). В качестве языка программирования использовался объектно-ориентированный язык Kotlin. Был написан эмулятор входных данных с динамического видеодатчика, сгенерированы обучающие наборы данных, первый содержал различные траектории движения сферы в поле зрения виртуального DVS-датчика.
Второй набор данных был скомпилирован из 10 тыс. звуковых паттернов сирен, криков и бьющихся стекол. Предполагалось, что в качестве синапсов используются мемристивные устройства, которые обеспечивают модуляцию силы синаптической связи путем изменения проводимости в широком диапазоне весов (в нашем случае в диапазоне трех-четырех порядков величины). Разработанная модель спайковой нейронной сети с алгоритмами самообучения демонстрировала устойчивость к воздействию шума и позволяла определять наличие пространственно-временных корреляций в аудио- и визуальных данных.
В качестве примера на рис. 3. приведена блок-схема сети и представлены характерные паттерны, формирующиеся на выходном слое сети в ответ на различные траектории движения сферы. Моделирование спайковой нейронной сети с алгоритмами самообучения позволило оценить значения рефрактерного периода TREF, характерных времен латерального торможения TINH и окна пластичности при заданном диапазоне изменения синаптических весов (выбранном в середине рабочего диапазона структур и составляющем три порядка по величине сопротивления). Характерные значения основных рабочих параметров сети при классификации аудио- и видеосигналов из представленных наборов данных приведены в табл. 1.
Как следует из результатов компьютерного моделирования, несмотря на то, что выбранная архитектура спайковой нейронной сети является универсальной, то есть позволяет успешно решать задачи по определению наличия пространственно-временных корреляций в потоках входных данных разной природы, характерные времена пространственно-временных образов, определяющие, в конечном счете, рабочие параметры сети, существенно отличаются для разных типов сигналов. Таким образом, для обеспечения опции мультимодальности нейроморфного модуля на базе мемристорной логики требуется поиск и разработка решений по адаптивной самонастройке основных рабочих параметров сети.
Схемотехническое моделирование спайковых нейронных сетей на основе многоуровневых мемристивных синапсов для распознавания пространственно-временных корреляций в потоке входных данных
С использованием результатов компьютерного моделирования были предложены схемотехнические решения аппаратной реализации нейроморфных модулей с пространственно-распределенной архитектурой «коммутатор – мемристор», исключающих использование промежуточных программных звеньев и устойчивых к вариации параметров и наличию шума в потоке входных данных [36].
В предлагаемой концепции схема пренейрона по каждому событию (любое изменение входного уровня) формирует одиночный импульс с коротким передним фронтом и экспоненциально затухающим задним фронтом, обеспечивающим возможность определения по текущему уровню экспоненциально спадающего напряжения интервала времени, прошедшего с момента наступления события до текущего момента. Это позволяет интегрировать сигналы на входах постнейронов с учетом данных о моментах наступления событий, а также задавать временной интервал, определяющий алгоритм реализации синаптической пластичности, зависимой от времени спайка. Электронный аналог синапса образован мемристорным элементом и элементом коммутации (электронный ключ), который осуществляет подачу на мемристор экспоненциально спадающего спайка пренейрона в режиме интегрирования или сигнала обратной связи при срабатывании постсинаптического нейрона.
Для обеспечения мультимодальности нейроморфных модулей было разработано решение для схем постнейронов, позволяющее настраивать периоды рефрактерности и ингибирования, а также порог их срабатывания, в соответствии с характерными временами пространственно-временных корреляций во входном потоке данных. В случае сигналов с динамического видеодатчика, логично предположить, что характерные времена будут определяться скоростью движения объектов [37]. Для аудиосигналов, в первом приближении, можно отталкиваться от длины анализируемого фрейма, то есть скользящего «окна», разбивающего поток входных аудиоданных на заданные промежутки времени.
Постнейрон, принципиальная схема которого приведена на рис. 4, включает аналоговый сумматор на основе операционного усилителя DA1, компаратор DA2, определяющий порог срабатывания постнейрона VTH, и формирователи импульсов, задающие длительности периода рефрактерности VREF, латерального ингибирования VINH и импульса системы обратной связи VOUT.
Важной отличительной особенностью данной схемы постнейрона является «блок управления» на элементах VT3 – VT5, R3 – R6, обеспечивающий адаптивную настройку периодов рефрактерности и ингибирования в соответствии с частотой сэмплирования VSMP входного сигнала нейросети.
Следует отметить, что введение частоты сэмплирования входного сигнала для асинхронной событийно-управляемой нейронной сети рассматривается нами в качестве одного из потенциальных вариантов схемотехнического решения, обеспечивающего мультимодальность нейроморфных модулей (то есть возможность использования одного и того же модуля для решения разного рода задач). Очевидно, что для аудиосигналов частота сэмплирования входного сигнала определяется длиной фрейма.
Уровень управляющего сигнала VTD на входе блока управления определяет сопротивления каналов транзисторов VT4, VT5, включенных в RC-цепи C2, R5 и C3, R6 формирователей импульсов, задающие длительности импульсов периодов рефрактерности VREF и латерального ингибирования VINH. Входное напряжение VTD задается «формирователем управляющего напряжения» (см. рис. 4), общим для всех нейронов сети, и подается параллельно на блоки управления всех постнейронов. В состав формирователя управляющего напряжения VTD входят:
Результаты схемотехнического моделирования формирователя управляющего напряжения представлены на рис. 5, в качестве вариантов рассматриваются характерные для распознавания речи длины фреймов (периодов сэмплирования входного сигнала): 64 мс (рис. 5а) и 32 мс (рис. 5б). Формирователь на элементах VD1, C4, R7, DA3 по каждому импульсу сэмплирования (синие графики на рис. 5) синтезирует измерительный импульс с коротким передним и экспоненциально спадающим задним фронтом (зеленые графики на рис. 5). При этом по заднему фронту импульса сэмплирования формирователь на элементах DD8 – DD11 вырабатывает короткий импульс записи управляющего уровня, открывающий транзисторный ключ VT 7, через который конденсатор С5 пикового детектора DA4 заряжается до текущего напряжения заднего фронта измерительного импульса, определяемого длительностью импульса сэмплирования. По окончании импульса записи транзисторный ключ VT 7 закрывается, предотвращая разряд конденсатора С5, а управляющее напряжение VTD с выхода пикового детектора DA4 поступает на блоки управления периодами рефрактерности и латерального ингибирования всех постнейронов сети. Таким образом, изменение во времени управляющего напряжения VTD представляет собой нижнюю огибающую измерительных импульсов и пропорционально частоте сэмплирования.
Блок-схема одного из возможных алгоритмов адаптивной итерационной самонастройки VTH приведена на рис. 6. После установки исходных значений параметров (блок 1), предусматривающей в качестве начального максимальное значение порога VTH = VTHmax, на каждой итерации выполняется цикл обучения нейросети (блок 2) с последующим анализом результатов обучения тестовыми сигналами (блоки 3, 4) с использованием в качестве критерия качества обучения числа сработавших постнейронов Nj в выходных паттернах тестовой последовательности.
Если число сработавших постнейронов Nj хотя бы в одном выходном паттерне тестовой последовательности не удовлетворяет заданному условию (блок 4), текущая тестовая последовательность прерывается, значение порога VTH уменьшается на заданный шаг ΔVTH с последующим переходом к новой итерации цикла обучения сети. Данный итерационный процесс повторяется до тех пор, пока заданное в блоке 4 условие не выполнится для всех сигналов тестовой последовательности. При наступлении данного события текущее значение порога VTH сохраняется в памяти, а нейросеть переключается из режима обучения и тестирования в рабочий режим с помощью бинарного сигнала F (F = 0 – режим обучения, F = 1 – рабочий режим).
Алгоритм, представленный на рис. 6, не гарантирует глобального оптимума самонастройки порога срабатывания нейронов, но благодаря использованию простого критерия в блоке 4 обеспечивает сходимость итерационного процесса за конечное число итераций. При этом эффективность самонастройки порога и число итераций в значительной степени определяются используемыми последовательностями обучающих и тестовых сигналов.
Функциональная схема аппаратной реализации рассмотренного алгоритма адаптивной самонастройки порога срабатывания нейронов приведена на рис. 7.
Выходные сигналы всех постнейронов нейроморфного модуля VOUT подаются на аналоговый сумматор R1 – R6, DA1, выходное напряжение которого в текущий момент времени равно числу сработавших постнейронов, умноженному на амплитуду выходного импульса нейрона. Компаратор DA2 осуществляет сравнение выходного напряжения сумматора с опорным напряжением V0, реализуя условный блок 4 алгоритма на рис. 6.
Логический блок DD3 – DD5 формирует счетные импульсы и импульсы сброса счетчика тестовых сигналов DD8 на основе выходного сигнала компаратора DA2 по импульсам сопровождения тестовых сигналов, вырабатываемых источником тестовых сигналов. Состояние счетчика DD8 увеличивается на единицу только при выполнении заданного условия (блок 4 на рис. 6) для текущего тестового сигнала. Если условие для очередного тестового сигнала не выполняется, счетчик DD8 сбрасывается в нулевое состояние. При выполнении заданного условия для всех тестовых сигналов схема совпадения DD9 идентифицирует данное событие, выдавая импульс, переключающий защелку DD10, устанавливающую сигнал режима работы нейросети F в состояние F = 1, соответствующее рабочему режиму. До наступления данного события F = 0 и нейросеть функционирует в режиме обучения и тестирования.
Схема предусматривает три источника входных сигналов нейросети:
Источники обучающих и тестовых сигналов, помимо основных выходных шин, имеют управляющий вход запуска и выход окончания обучающей или тестовой последовательности. На очередной итерации запуск обучающей последовательности осуществляется импульсом VLS, формируемым либо импульсом сброса счетчика тестовых последовательностей DD8 при невыполнении заданного условия (блок 4 на рис. 6), либо импульсом, формируемым блоком R7, C1, DD1 при включении напряжения питания (или принудительном перезапуске системы кнопкой S1). По окончании обучающей последовательности источник обучающих сигналов выдает импульс VLF, поступающий на управляющий вход источника тестовых сигналов и запускающий тестовую последовательность.
Переключение входной шины нейроморфного модуля между тремя источниками входных сигналов выполняется мультиплексором DD6 с помощью управляющих сигналов режима работы F и сигнала окончания обучающей последовательности VLF в соответствии с табл. 2.
Автонастройка порога срабатывания нейронов VTH осуществляется реверсивным счетчиком DD7 и цифро-аналоговым преобразователем (ЦАП) DA3. В исходный момент времени (при включении питания или принудительном сбросе) блок R7, C1, DD1 выдает импульс на вход S реверсивного счетчика DD7, устанавливающий на выходе счетчика максимальное значение, соответствующее максимальному напряжению порога VTH на выходе ЦАП DA3.
При невыполнении заданного условия в режиме тестирования формируемый элементом DD5 импульс сброса счетчика тестовых сигналов DD8 параллельно поступает на счетный вход реверсивного счетчика, уменьшая его состояние на единицу и приводя к уменьшению порога VTH на выходе ЦАП на ΔVTH. Напряжение порога срабатывания нейронов VTH в процессе самонастройки подается на соответствующие входы компараторов всех постнейронов сети.
Важно отметить, что один формирователь управляющего напряжения (см. рис. 4) и один блок адаптивной самонастройки (см. рис. 6, 7) управляют порогом срабатывания и длительностью периодов рефрактерности и латерального ингибирования нейронов всей сети. При этом данные управляющие узлы являются асинхронными аналого-цифровыми устройствами, вследствие чего их использование в реальных нейросетях с достаточно большим числом нейронов обеспечит повышение функциональности, не приводя к заметному росту общего энергопотребления.
В перспективе предлагаемый подход может быть положен в основу интегральной реализации спайковых нейронных сетей прямого распространения с использованием принципа равномерного пространственного распределения на кристалле многоуровневых мемристивных элементов и нейроморфных схем управления ими, в том числе позволит повысить регулярность топологии и сократить затраты на проектирование.
Литература
Basheer I., Hajmeer M. Artificial Neural Networks: Fundamentals, Computing, Design, and Application // J. Microbiol. Methods. 43. PP. 3–31 (2000).
Gokmen T., Vlasov Y. Acceleration of Deep Neural Network Training with Resistive Cross-Point Devices: Design Considerations // Front. Neurosci. 10:333 (2016).
Kiselev M. Rate Coding vs. Temporal Coding-Is Optimum Between? // Proc. of IJCNN-2016. PP. 1355–1359 (2016).
Kiselev M., Lavrentyev A. Preprocessing Layer in Spiking Neural Networks-Structure, Parameters, Performance Criteria // Proc. of IJCNN-2019 (2019).
Kornijcuk V., Jeong D. Recent Progress in Real-Time Adaptable Digital Neuromorphic Hardware // Advanced Intelligent Systems. 1:6 (2019).
Potok T., Schuman C., Young S., Patton R., Spedalieri F., Liu J., Yao K. A Study of Complex Deep Learning Networks on High-Performance, Neuromorphic, and Quantum Computers // ACM Journal on Emerging Technologies in Computing Systems (JETC). 14:2 (2018).
Jeong D., Hwang C. Nonvolatile Memory Materials for Neuromorphic Intelligent Machines // Adv. Mater. 30.1704729 (2018).
Kim C.-H., Lim S., Woo S., Kang W., Seo Y., Lee S., Lee S., Kwon D., Oh S., Noh Y., Kim H., Kim J., Bae J., Lee J. Emerging Memory Technologies for Neuromorphic Computing // Nanotechnology. 18:30, 032001 (2019).
Yang J., Strukov D., Stewart D. Memristive Devices for Computing // Nat. Nanotechnol. 8. PP. 13–24 (2013).
Burr G., Shelby R., Sebastian A., Kim S., Kim S., Sidler S., Virwani K., Ishii M., Narayanan P., Fumarola A., Sanches L., Boybat I., Le Gallo M., Moon K., Woo J., Hwang H., Leblebici Y. Neuromorphic Computing Using Nonvolatile Memory // Adv. Phys. X. 2:89 (2017).
Kuzum D., Yu S., Philip Wong H. Synaptic Electronics: Materials, Devices and Applications // Nanotechnology. 24. 382001 (2013).
Xia Q., Yang J. Memristive Crossbar Arrays for Brain-Inspired Computing // Nat. Mater. 18. РP. 309–323 (2019).
Gupta I., Serb A., Khiat A., Trapatselia M., Prodromakis T. Spike Sorting Using Non-Volatile Metal-Oxide Memristors // Faraday Discussions.5225 120202013. 511 (2019).
Wang W., Wang W., Pedretti G., Milo V., Carboni R., Calderoni A., Ramaswamy N., Spinelli A., Ielmini D. Learning of Spatiotemporal Patterns in a Spiking Neural Network with Resistive Switching Synapses // Sci. Adv. 4 : 9 (2018).
Pedretti G., Milo V., Ambrogio S., Carboni R., Bianchi S., Calderoni A., Ramaswamy N., Spinelli A., Ielmini D. Memristive Neural Network for On-Line Learning and Tracking with Brain-Inspired Spike Timing Dependent Plasticity // Sci. Rep. 7. 5288 (2017).
Gibson S., Judy J., Marković D. Technology-Aware Algorithm Design for Neural Spike Detection, Feature Extraction, and Dimensionality Reduction // IEEE Trans. Neural. Syst. Rehabil. Eng. 18:5 (2010).
Fernandes C. Embedded Platform for Neural Recording and Real-Time Template Matching // Diss. (2015).
Gupta I., Serb A., Khiat A., Zeitler R., Vassanelli S., Prodromakis T. Sub 100 nW Volatile Nano-Metal-Oxide Memristor as Synaptic-Like Encoder of Neuronal Spikes // IEEE Trans. on Biomedical Circuits and Systems. 12:2 РP. 351–359 (2018).
Ielmini D. Resistive Switching Models by Ion Migration in Metal Oxides. Korkin A., Lockwood D. Nanoscale Applications for Information and Energy Systems // Nanostructure Science and Technology. Springer (2013).
Pi S. et al. Memristor crossbar arrays with 6-nm half-pitch and 2-nm critical dimension // Nature Nanotechnology. https://doi.org/10.1038/s41565-018-0302-0, 2018.
Hansen M., Kohlstedt H., Ziegler M. Unsupervised Hebbian learning experimentally realized with analogue memrisistive crossbar arrays // Scientific reports. 8 (1). Р. 8914 (2018).
Choi B. J. et al. High-speed and low-energy nitride memristors // Adv. Funct. Mater. 26. PP. 5290–5296 (2016).
Goux L. et al. Ultralow sub-500nA operating current high-performance TiN/Al2O3 / HfO2 / Hf / TiN bipolar RRAM achieved through understanding-based stack-engineering // In 2012 Symposium on VLSI Technology (VLSIT). РP. 159–160 (IEEE, Honolulu, HI, USA, 2012).
Gina C. Adam, Khiat A., Prodromakis T. Challenges hindering memristive neuromorphic hardware from going mainstream // Nature communications. 9:5267 (2018). https://doi.org/10.1038/s41467-018-07565-4.
Guo Y., Wu H., Gao B., Qian H. Unsupervised Learning on Resistive Memory Array Based Spiking Neural Networks // Front. Neurosci. 13:812 (2019).
Li H., Li K.-S., Lin C.-H., Hsu J.-L., Chiu W.-C., Chen M.-C., Wu T.-T., Sohn J., Eryilmaz S., Shieh J.-M., Yeh W.-K., Wong H.-S. IEEE Symp. VLSI Technol. // IEEE, Piscataway, NJ. РP. 1–2 (2016).
Chicca E., Stefanini F., Bartolozzi C., Indiveri G. Neuromorphic Electronic Circuits for Building Autonomous Cognitive Systems // Proc. IEEE 102. PР. 1367–1388 (2014).
Bi G., Poo M. Synaptic Modifications in Cultured Hippocampal Neurons: Dependence on Spike Timing, Synaptic Strength, and Postsynaptic Cell Type // J. Neurosci. 18. 10464 (1998).
Markram H., Lubke J., Frotscher M., Sakmann B. Regulation of Synaptic Efficacy by Coincidence of Postsynaptic APs and EPSPs // Science 275. РP. 213–215 (1997).
Malenka R., Bear M. Neurobiological Bases of Learning and Their Role for the Paradigm Shift in Education // Neuron. PР. 5–21 (2004).
Xiao Di Huang, Yi Li, Hao Yang Li, Yi Fan Lu, Kan Hao Xue, Xiang Shui Miao. Enhancement of DC / AC resistive switching performance in AlOx memristor by two-technique bilayer approach // Appl. Phys. Lett. 116. 173504 (2020).
Andreeva N., Ivanov A., Petrov A. Multilevel resistive switching in TiO2/Al2O3 bilayers at low temperature // AIP Advances. 8. 025208 (2018).
Alekseeva L., Nabatame T., Chikyow T., Petrov A. // Jpn. J. Appl. Phys. 55. 08PB02 (2016).
Петров А., Алексеева Л., Иванов А., Лучинин В., Романов А., Чикев T., Набатамэ Т. На пути к нейроморфной мемристорной компьютерной платформе // НАНОИНДУСТРИЯ. 2016. № 1(63).
Киселев М. В. Исследование двухнейронных ячеек памяти в импульсных нейронных сетях // Компьютерные исследования и моделирование. 2020. Т. 12 (2). С. 401–416.
Andreeva N. V., Ryndin E. A., Gerasimova M. I. Memristive logic design of multifunctional spiking neural network with unsupervised learning. https://doi.org/10.1007/s12668-020-00778-2. BioNanoScience (2020).
Bichler O., Querlioz D., Thorpe S. J., Bourgoin J. P., Gamrat C. Extraction of temporally correlated features from dynamic sensors with spike-timing-dependent plasticity. Neural Networks. 32:339-348 (2012).
мемристорной логики
Н. Андреева, к. ф.‑ м. н., В. Лучинин, д. т. н., Е. Рындин, д. т. н.
Рассматриваются вопросы адаптации мемристивных устройств с многоуровневым переключением сопротивления для использования в искусственных нейронных сетях в качестве электронных эквивалентов синапсов. Представлен программно-аппаратный подход к интеграции разработанных синаптических мемристивных структур в базовые нейроморфные модули.
Формирование ключевых подходов нейроморфных систем подразумевает синтез концептуальных представлений о функционировании биологических нейронных сетей, программных алгоритмов их реализации [1–4], протоколов передачи асинхронных потоков физиологических данных [5, 6], современной технологии мемристорных структур [7–10]; интеграцию многоуровневой мемристорной логики в схемотехнические решения базовых нейроморфных модулей [11–12], а также изучение основных закономерностей их последующей самоорганизации и синхронизации с биологическими подсистемами [13–16].
Интерес к развитию нейроморфных систем стимулируется необходимостью перехода к массивным параллельным аналоговым вычислениям при организации искусственных нейронных сетей [17]. Использование классической архитектуры нейронных сетей с алгоритмами глубокого машинного обучения на существующей компьютерной архитектуре при распараллеливании потока входных данных приводит к увеличению времени обучения, проблемам маршрутизации данных, становится крайне неэффективным при работе с большими асинхронными потоками данных и требует большого энергопотребления [18, 19].
Применение новой электронной компонентной базы и архитектуры нейронных сетей третьего поколения, способных к самообучению, позволяет рассчитывать на повышение скорости обработки параллельного потока нейронных сигналов в режиме реального времени, при снижении общего энергопотребления и миниатюризации самих устройств.
В настоящее время, мемристор рассматривается в качестве наиболее перспективного кандидата на роль электронного эквивалента синапса в архитектуре нейроморфных систем.
Несомненным преимуществом мемристивных структур на основе тонких слоев оксидов металлов является их хорошая масштабируемость (наномасштабная топология до ~2 нм), плотность записи >0,7 Тб / см 2 [20]), обеспечивающая возможность интеграции в СБИС, совместимых с КМОП-технологией, при использовании в структуре активных и пассивных кроссбар (crossbar) массивов [12, 21]. Более того, использование мемристоров в качестве новой электронной компонентной базы обладает рядом преимуществ: более высокие скорости переключения между высокоомным и низкоомным состояниями (85 пс для мемристоров на основе нитридов [22]), бóльшая устойчивость к циклической деградации, меньшее энергопотребление (<10 фДж / операцию [23]).
Следует отметить, что главной трудностью при попытках использования мемристоров на основе металлооксидных структур в качестве резистивной памяти с низким энергопотреблением для рынка Интернета вещей является вариабельность основных рабочих характеристик структур, обусловленная влиянием флуктуаций микроскопических параметров. Более того, в настоящее время не существует «универсального» мемристора, сочетающего в себе весь спектр заявленных преимуществ [24].
Тем не менее, при интеграции в нейроморфные модули в качестве синаптического элемента, мемристивные структуры на основе тонких металлооксидных слоев обладают исключительным преимуществом перед остальными элементами электронной компонентной базы, а именно, возможностью создания многоуровневых состояний. Такая возможность обеспечивает аналоговую перестройку веса синаптической связи и позволяет имплементировать основные модели синаптической пластичности на аппаратном уровне [25–26], включая модель пластичности, зависимую от времени импульса [27–28], долговременную потенциацию и депрессию [29, 30]. В этом случае веса связей между нейронами изменяются физически (за счет аналоговой перестройки резистивного состояния мемристора), а не на программном уровне, что значительно повышает эффективность обработки асинхронных потоков входных данных.
Необходимо подчеркнуть, что использование коммерчески доступных технологий для эмуляции работы одного синапса требует десятки устройств, что делает саму идею аппаратной реализации нейронных сетей с использованием традиционной электронной компонентной базы бесперспективной.
В то же время конвергенция перспективных подходов к созданию мемристивных гетероструктур позволяет создавать мемристоры с уникальными адаптивными свойствами в широком диапазоне по сопротивлению [24, 31]. Под адаптивными свойствами в данном случае подразумевается возможность аналогового многоуровневого изменения электрического сопротивления структуры под действием приложенного напряжения и запоминание полученного таким образом резистивного состояния. Таким образом, можно сказать, что с позиций материаловедения, в качестве основного тренда при аппаратной реализации нейронных сетей выступает разработка дизайна многоуровневых мемристивных систем с возможностью аналоговой перестройки между энергонезависимыми состояниями по сопротивлению в широком диапазоне величин.
Ранее нами были разработаны мемристивные системы с многоуровневым резистивным переключением на основе тонкопленочных гетерогенных структур Pt / TiO2 / Al2O3 / Pt, в которых за счет сочетания особенностей электронного характера биполярного переключения с изменением концентрации кислородных вакансий в активном слое достигалась аналоговая (многоуровневая) перестройка резистивного состояния в диапазоне семи порядков по величине (рис. 1) [32–34].
В статье освещены вопросы адаптации мемристивных устройств с многоуровневым переключением сопротивления для использования в искусственных нейронных сетях в качестве электронных эквивалентов синапсов. Представлен программно-аппаратный подход к интеграции разработанных синаптических мемристивных структур в базовые нейроморфные модули.
Изложение материала организовано следующим образом: в первой части статьи описывается идеология построения спайковой нейронной сети прямого распространения на базе разработанных мемристивных структур с многоуровневым переключением сопротивления, приводятся результаты компьютерного моделирования работы такой сети для решения задач классификации видео- и аудиосигналов. Во второй части приводятся схемотехнические решения для основных блоков нейронной сети, а также результаты SPICE-моделирования их работы. В третьей части представлены возможные варианты решений, обеспечивающих мультимодальность работы представленного варианта базового нейроморфного модуля.
Компьютерное моделирование спайковых нейронных сетей на основе многоуровневых мемристивных синапсов для распознавания пространственно-временных корреляций в потоке входных данных
Спайковые нейронные сети прямого распространения рассматриваются в качестве наиболее физиологически реалистичной модели биологических нейронных сетей. В таких сетях модели нейронов обмениваются между собой короткими импульсами, или спайками, распространение которых по сети определяется набором временных задержек. Их наличие является ключевым моментом, поскольку позволяет обрабатывать информацию в соответствии с известными базовыми алгоритмами работы биологических нейронных сетей, а также имплементировать механизмы обучения и памяти. Как правило, для обучения спайковых нейронных сетей используются хеббоподобные правила, определяющие усиление или ослабление синаптической связи между нейронами и являющиеся, по сути, самоорганизующимися алгоритмами, реализующими обучение без учителя. Следует отметить, что реализация самообучающихся спайковых нейронных сетей на существующей компьютерной архитектуре подразумевает распараллеливание потока входных данных (на количество используемых ядер) для повышения скорости обработки и крайне неэффективна при работе с большими потоками данных.
В качестве модели спайковой нейронной сети для аппаратной реализации на базе мемристивных синапсов была выбрана архитектура перцептрона со встроенными механизмами обучения без учителя. Работа спайковой нейронной сети поясняется на рис. 2. На вход сети поступает асинхронный поток импульсов (спайков) с динамического видеодатчика DVS (dynamic vision sensor, используется в протезах сетчатки для отслеживания движения). В данном случае нами был сгенерирован тестовый набор данных для эмуляции траектории движения сферы в восьми направлениях. Таким образом, входные данные представляли собой массив импульсов (28 × 28) с приемной части динамического видеодатчика. Изменению состояния пиксела приемной части видеодатчика соответствует событие, или генерация спайка нейроном входного слоя сети. Каждый выходной нейрон соединен со всеми пикселами входной матрицы синапсами. Выходной нейрон работает по принципу «интегрировать – и – сработать» с утечками. Нейрон генерирует выходной импульс, если за время τleak происходит превышение заданного уровня (ITH) сигнала на его входе u. Между двумя входными импульсами (спайками) значение сигнала u на входе нейрона получается решением уравнения:
.
Обновление (апдейт) состояния нейрона происходит только в моменты поступления на его вход импульсов tspike. Уровень сигнала на входе нейрона в момент поступления импульса определяется:
,
где ω – изменяющийся вес связи (синапса) входного пиксела с нейроном (правила изменения веса связи изложены ниже).
После того как уровень входного сигнала u нейрона превысит пороговый, генерируется выходной импульс, который поступает на все связи (синапсы) сети. Значение сигнала u обнуляется и не изменяется в течение времени TREF (рефрактерный период).
Для интеграции механизмов обучения без учителя в рассматриваемую модель нейронной сети использовались два правила. Первое правило – это модифицированная «модель пластичности, зависимой от времени импульса» (STDP), суть которой состоит в том, что в момент генерации выходного импульса (post-spike) нейроном веса всех связей (синапсов) сети уменьшаются на величину Δω– (т. н. антихеббовское правило), за исключением тех связей (синапсов), на которые был подан входной импульс (pre-spike) в течение промежутка времени TLTP до момента генерации выходного импульса. Вес связей (синапсов), на которые поступил входной импульс в промежуток времени t < TLTP, увеличивается на величину Δω+. Обновление (апдейт) весов связей происходит в момент генерации выходного импульса по правилам:
,
,
– параметры связи, обеспечивающие оптимальную работы нейронной сети. и – максимально и минимально возможные значения веса связи.
Второе правило обучения – это «латеральное торможение» (или латеральное ингибирование) нейронов, заключающееся в том, что в момент генерации выходного импульса каким-либо нейроном дезактивируются (ингибируются) все оставшиеся нейроны сети на время Tinhibit (время ингибирования). В течение этого промежутка времени нейроны перестают интегрировать входной сигнал u. Время ингибирования складывается с периодом рефрактерности нейрона TREF, если . Предполагается, что в начальный момент времени веса связей равномерно распределены.
Для оптимизации параметров связей и характеристических временных периодов нейронной сети с целью их дальнейшего использования при схемотехническом моделировании, было проведено компьютерное моделирование ее работы при решении задач по определению наличия пространственно-временной корреляции во входном потоке данных.
Пространственно-временная корреляция – это, фактически, наличие определенных существенных черт во входном сигнале, которые нейронная сеть «учится» распознавать.
Следует отметить, что для этого сеть должна обладать «рабочей памятью», временной масштаб которой сравним с характерным временем пространственно-временного образа входного сигнала, и, как правило, составляет сотни миллисекунд при миллисекундных длительностях спайков и времен их распространения [35]. Этот вид памяти является своего рода оперативной памятью, в отличие от долговременной памяти, реализуемой в процессе обучения и обусловленной медленными изменениями синаптических весов.
При компьютерном моделировании спайковой нейронной сети использовался объектно-ориентированный подход, в рамках которого нейронная связь (или синапс) рассматривается в качестве объекта низкого уровня (low level object), ее параметры содержат информацию о текущем весе и времени наступления события (генерации спайка) на входе сети.
Нейронные связи являются составной частью объектов более высокого уровня – нейронов сети (интеграторов с утечкой и адаптивным порогом). Каждый нейрон обладает своим массивом связей, а также соответствующим набором постоянных признаков: порогом срабатывания, периодом рефрактерности, временем ингибирования, и переменным признаком – временем последнего срабатывания (для последующей реализации алгоритмов латерального ингибирования и периода рефрактерности). Событие на входе нейрона приводит к перерасчету уровня сигнала, при превышении порога производится перераспределение текущих весов его связей в соответствии с моделью синаптической пластичности, зависимой от времени импульса. Таким образом, веса связей нейрона, для которых время между входным событием и превышением порога на постнейроне (т. е. генерацией выходного спайка) находится в пределах STDP окна, увеличиваются, в то время как веса остальных связей уменьшаются (рис. 2). Каждый постнейрон сети обрабатывается независимо от других нейронов, за исключением тех случаев, когда используются алгоритмы латерального ингибирования.
Изложенный выше подход к моделированию был применен при разработке программного комплекса реализации спайковой нейронной сети для распознавания пространственно-временных корреляций в аудио- и визуальном потоках входных данных с использованием среды исполнения Java Virtual Machine (Oracle). В качестве языка программирования использовался объектно-ориентированный язык Kotlin. Был написан эмулятор входных данных с динамического видеодатчика, сгенерированы обучающие наборы данных, первый содержал различные траектории движения сферы в поле зрения виртуального DVS-датчика.
Второй набор данных был скомпилирован из 10 тыс. звуковых паттернов сирен, криков и бьющихся стекол. Предполагалось, что в качестве синапсов используются мемристивные устройства, которые обеспечивают модуляцию силы синаптической связи путем изменения проводимости в широком диапазоне весов (в нашем случае в диапазоне трех-четырех порядков величины). Разработанная модель спайковой нейронной сети с алгоритмами самообучения демонстрировала устойчивость к воздействию шума и позволяла определять наличие пространственно-временных корреляций в аудио- и визуальных данных.
В качестве примера на рис. 3. приведена блок-схема сети и представлены характерные паттерны, формирующиеся на выходном слое сети в ответ на различные траектории движения сферы. Моделирование спайковой нейронной сети с алгоритмами самообучения позволило оценить значения рефрактерного периода TREF, характерных времен латерального торможения TINH и окна пластичности при заданном диапазоне изменения синаптических весов (выбранном в середине рабочего диапазона структур и составляющем три порядка по величине сопротивления). Характерные значения основных рабочих параметров сети при классификации аудио- и видеосигналов из представленных наборов данных приведены в табл. 1.
Как следует из результатов компьютерного моделирования, несмотря на то, что выбранная архитектура спайковой нейронной сети является универсальной, то есть позволяет успешно решать задачи по определению наличия пространственно-временных корреляций в потоках входных данных разной природы, характерные времена пространственно-временных образов, определяющие, в конечном счете, рабочие параметры сети, существенно отличаются для разных типов сигналов. Таким образом, для обеспечения опции мультимодальности нейроморфного модуля на базе мемристорной логики требуется поиск и разработка решений по адаптивной самонастройке основных рабочих параметров сети.
Схемотехническое моделирование спайковых нейронных сетей на основе многоуровневых мемристивных синапсов для распознавания пространственно-временных корреляций в потоке входных данных
С использованием результатов компьютерного моделирования были предложены схемотехнические решения аппаратной реализации нейроморфных модулей с пространственно-распределенной архитектурой «коммутатор – мемристор», исключающих использование промежуточных программных звеньев и устойчивых к вариации параметров и наличию шума в потоке входных данных [36].
В предлагаемой концепции схема пренейрона по каждому событию (любое изменение входного уровня) формирует одиночный импульс с коротким передним фронтом и экспоненциально затухающим задним фронтом, обеспечивающим возможность определения по текущему уровню экспоненциально спадающего напряжения интервала времени, прошедшего с момента наступления события до текущего момента. Это позволяет интегрировать сигналы на входах постнейронов с учетом данных о моментах наступления событий, а также задавать временной интервал, определяющий алгоритм реализации синаптической пластичности, зависимой от времени спайка. Электронный аналог синапса образован мемристорным элементом и элементом коммутации (электронный ключ), который осуществляет подачу на мемристор экспоненциально спадающего спайка пренейрона в режиме интегрирования или сигнала обратной связи при срабатывании постсинаптического нейрона.
Для обеспечения мультимодальности нейроморфных модулей было разработано решение для схем постнейронов, позволяющее настраивать периоды рефрактерности и ингибирования, а также порог их срабатывания, в соответствии с характерными временами пространственно-временных корреляций во входном потоке данных. В случае сигналов с динамического видеодатчика, логично предположить, что характерные времена будут определяться скоростью движения объектов [37]. Для аудиосигналов, в первом приближении, можно отталкиваться от длины анализируемого фрейма, то есть скользящего «окна», разбивающего поток входных аудиоданных на заданные промежутки времени.
Постнейрон, принципиальная схема которого приведена на рис. 4, включает аналоговый сумматор на основе операционного усилителя DA1, компаратор DA2, определяющий порог срабатывания постнейрона VTH, и формирователи импульсов, задающие длительности периода рефрактерности VREF, латерального ингибирования VINH и импульса системы обратной связи VOUT.
Важной отличительной особенностью данной схемы постнейрона является «блок управления» на элементах VT3 – VT5, R3 – R6, обеспечивающий адаптивную настройку периодов рефрактерности и ингибирования в соответствии с частотой сэмплирования VSMP входного сигнала нейросети.
Следует отметить, что введение частоты сэмплирования входного сигнала для асинхронной событийно-управляемой нейронной сети рассматривается нами в качестве одного из потенциальных вариантов схемотехнического решения, обеспечивающего мультимодальность нейроморфных модулей (то есть возможность использования одного и того же модуля для решения разного рода задач). Очевидно, что для аудиосигналов частота сэмплирования входного сигнала определяется длиной фрейма.
Уровень управляющего сигнала VTD на входе блока управления определяет сопротивления каналов транзисторов VT4, VT5, включенных в RC-цепи C2, R5 и C3, R6 формирователей импульсов, задающие длительности импульсов периодов рефрактерности VREF и латерального ингибирования VINH. Входное напряжение VTD задается «формирователем управляющего напряжения» (см. рис. 4), общим для всех нейронов сети, и подается параллельно на блоки управления всех постнейронов. В состав формирователя управляющего напряжения VTD входят:
- формирователь импульсов записи управляющего уровня;
- формирователь измерительных импульсов;
- пиковый детектор.
Результаты схемотехнического моделирования формирователя управляющего напряжения представлены на рис. 5, в качестве вариантов рассматриваются характерные для распознавания речи длины фреймов (периодов сэмплирования входного сигнала): 64 мс (рис. 5а) и 32 мс (рис. 5б). Формирователь на элементах VD1, C4, R7, DA3 по каждому импульсу сэмплирования (синие графики на рис. 5) синтезирует измерительный импульс с коротким передним и экспоненциально спадающим задним фронтом (зеленые графики на рис. 5). При этом по заднему фронту импульса сэмплирования формирователь на элементах DD8 – DD11 вырабатывает короткий импульс записи управляющего уровня, открывающий транзисторный ключ VT 7, через который конденсатор С5 пикового детектора DA4 заряжается до текущего напряжения заднего фронта измерительного импульса, определяемого длительностью импульса сэмплирования. По окончании импульса записи транзисторный ключ VT 7 закрывается, предотвращая разряд конденсатора С5, а управляющее напряжение VTD с выхода пикового детектора DA4 поступает на блоки управления периодами рефрактерности и латерального ингибирования всех постнейронов сети. Таким образом, изменение во времени управляющего напряжения VTD представляет собой нижнюю огибающую измерительных импульсов и пропорционально частоте сэмплирования.
Блок-схема одного из возможных алгоритмов адаптивной итерационной самонастройки VTH приведена на рис. 6. После установки исходных значений параметров (блок 1), предусматривающей в качестве начального максимальное значение порога VTH = VTHmax, на каждой итерации выполняется цикл обучения нейросети (блок 2) с последующим анализом результатов обучения тестовыми сигналами (блоки 3, 4) с использованием в качестве критерия качества обучения числа сработавших постнейронов Nj в выходных паттернах тестовой последовательности.
Если число сработавших постнейронов Nj хотя бы в одном выходном паттерне тестовой последовательности не удовлетворяет заданному условию (блок 4), текущая тестовая последовательность прерывается, значение порога VTH уменьшается на заданный шаг ΔVTH с последующим переходом к новой итерации цикла обучения сети. Данный итерационный процесс повторяется до тех пор, пока заданное в блоке 4 условие не выполнится для всех сигналов тестовой последовательности. При наступлении данного события текущее значение порога VTH сохраняется в памяти, а нейросеть переключается из режима обучения и тестирования в рабочий режим с помощью бинарного сигнала F (F = 0 – режим обучения, F = 1 – рабочий режим).
Алгоритм, представленный на рис. 6, не гарантирует глобального оптимума самонастройки порога срабатывания нейронов, но благодаря использованию простого критерия в блоке 4 обеспечивает сходимость итерационного процесса за конечное число итераций. При этом эффективность самонастройки порога и число итераций в значительной степени определяются используемыми последовательностями обучающих и тестовых сигналов.
Функциональная схема аппаратной реализации рассмотренного алгоритма адаптивной самонастройки порога срабатывания нейронов приведена на рис. 7.
Выходные сигналы всех постнейронов нейроморфного модуля VOUT подаются на аналоговый сумматор R1 – R6, DA1, выходное напряжение которого в текущий момент времени равно числу сработавших постнейронов, умноженному на амплитуду выходного импульса нейрона. Компаратор DA2 осуществляет сравнение выходного напряжения сумматора с опорным напряжением V0, реализуя условный блок 4 алгоритма на рис. 6.
Логический блок DD3 – DD5 формирует счетные импульсы и импульсы сброса счетчика тестовых сигналов DD8 на основе выходного сигнала компаратора DA2 по импульсам сопровождения тестовых сигналов, вырабатываемых источником тестовых сигналов. Состояние счетчика DD8 увеличивается на единицу только при выполнении заданного условия (блок 4 на рис. 6) для текущего тестового сигнала. Если условие для очередного тестового сигнала не выполняется, счетчик DD8 сбрасывается в нулевое состояние. При выполнении заданного условия для всех тестовых сигналов схема совпадения DD9 идентифицирует данное событие, выдавая импульс, переключающий защелку DD10, устанавливающую сигнал режима работы нейросети F в состояние F = 1, соответствующее рабочему режиму. До наступления данного события F = 0 и нейросеть функционирует в режиме обучения и тестирования.
Схема предусматривает три источника входных сигналов нейросети:
- источник обучающих сигналов;
- источник тестовых сигналов;
- рабочий входной сигнал VIN.
Источники обучающих и тестовых сигналов, помимо основных выходных шин, имеют управляющий вход запуска и выход окончания обучающей или тестовой последовательности. На очередной итерации запуск обучающей последовательности осуществляется импульсом VLS, формируемым либо импульсом сброса счетчика тестовых последовательностей DD8 при невыполнении заданного условия (блок 4 на рис. 6), либо импульсом, формируемым блоком R7, C1, DD1 при включении напряжения питания (или принудительном перезапуске системы кнопкой S1). По окончании обучающей последовательности источник обучающих сигналов выдает импульс VLF, поступающий на управляющий вход источника тестовых сигналов и запускающий тестовую последовательность.
Переключение входной шины нейроморфного модуля между тремя источниками входных сигналов выполняется мультиплексором DD6 с помощью управляющих сигналов режима работы F и сигнала окончания обучающей последовательности VLF в соответствии с табл. 2.
Автонастройка порога срабатывания нейронов VTH осуществляется реверсивным счетчиком DD7 и цифро-аналоговым преобразователем (ЦАП) DA3. В исходный момент времени (при включении питания или принудительном сбросе) блок R7, C1, DD1 выдает импульс на вход S реверсивного счетчика DD7, устанавливающий на выходе счетчика максимальное значение, соответствующее максимальному напряжению порога VTH на выходе ЦАП DA3.
При невыполнении заданного условия в режиме тестирования формируемый элементом DD5 импульс сброса счетчика тестовых сигналов DD8 параллельно поступает на счетный вход реверсивного счетчика, уменьшая его состояние на единицу и приводя к уменьшению порога VTH на выходе ЦАП на ΔVTH. Напряжение порога срабатывания нейронов VTH в процессе самонастройки подается на соответствующие входы компараторов всех постнейронов сети.
Важно отметить, что один формирователь управляющего напряжения (см. рис. 4) и один блок адаптивной самонастройки (см. рис. 6, 7) управляют порогом срабатывания и длительностью периодов рефрактерности и латерального ингибирования нейронов всей сети. При этом данные управляющие узлы являются асинхронными аналого-цифровыми устройствами, вследствие чего их использование в реальных нейросетях с достаточно большим числом нейронов обеспечит повышение функциональности, не приводя к заметному росту общего энергопотребления.
В перспективе предлагаемый подход может быть положен в основу интегральной реализации спайковых нейронных сетей прямого распространения с использованием принципа равномерного пространственного распределения на кристалле многоуровневых мемристивных элементов и нейроморфных схем управления ими, в том числе позволит повысить регулярность топологии и сократить затраты на проектирование.
Литература
Basheer I., Hajmeer M. Artificial Neural Networks: Fundamentals, Computing, Design, and Application // J. Microbiol. Methods. 43. PP. 3–31 (2000).
Gokmen T., Vlasov Y. Acceleration of Deep Neural Network Training with Resistive Cross-Point Devices: Design Considerations // Front. Neurosci. 10:333 (2016).
Kiselev M. Rate Coding vs. Temporal Coding-Is Optimum Between? // Proc. of IJCNN-2016. PP. 1355–1359 (2016).
Kiselev M., Lavrentyev A. Preprocessing Layer in Spiking Neural Networks-Structure, Parameters, Performance Criteria // Proc. of IJCNN-2019 (2019).
Kornijcuk V., Jeong D. Recent Progress in Real-Time Adaptable Digital Neuromorphic Hardware // Advanced Intelligent Systems. 1:6 (2019).
Potok T., Schuman C., Young S., Patton R., Spedalieri F., Liu J., Yao K. A Study of Complex Deep Learning Networks on High-Performance, Neuromorphic, and Quantum Computers // ACM Journal on Emerging Technologies in Computing Systems (JETC). 14:2 (2018).
Jeong D., Hwang C. Nonvolatile Memory Materials for Neuromorphic Intelligent Machines // Adv. Mater. 30.1704729 (2018).
Kim C.-H., Lim S., Woo S., Kang W., Seo Y., Lee S., Lee S., Kwon D., Oh S., Noh Y., Kim H., Kim J., Bae J., Lee J. Emerging Memory Technologies for Neuromorphic Computing // Nanotechnology. 18:30, 032001 (2019).
Yang J., Strukov D., Stewart D. Memristive Devices for Computing // Nat. Nanotechnol. 8. PP. 13–24 (2013).
Burr G., Shelby R., Sebastian A., Kim S., Kim S., Sidler S., Virwani K., Ishii M., Narayanan P., Fumarola A., Sanches L., Boybat I., Le Gallo M., Moon K., Woo J., Hwang H., Leblebici Y. Neuromorphic Computing Using Nonvolatile Memory // Adv. Phys. X. 2:89 (2017).
Kuzum D., Yu S., Philip Wong H. Synaptic Electronics: Materials, Devices and Applications // Nanotechnology. 24. 382001 (2013).
Xia Q., Yang J. Memristive Crossbar Arrays for Brain-Inspired Computing // Nat. Mater. 18. РP. 309–323 (2019).
Gupta I., Serb A., Khiat A., Trapatselia M., Prodromakis T. Spike Sorting Using Non-Volatile Metal-Oxide Memristors // Faraday Discussions.5225 120202013. 511 (2019).
Wang W., Wang W., Pedretti G., Milo V., Carboni R., Calderoni A., Ramaswamy N., Spinelli A., Ielmini D. Learning of Spatiotemporal Patterns in a Spiking Neural Network with Resistive Switching Synapses // Sci. Adv. 4 : 9 (2018).
Pedretti G., Milo V., Ambrogio S., Carboni R., Bianchi S., Calderoni A., Ramaswamy N., Spinelli A., Ielmini D. Memristive Neural Network for On-Line Learning and Tracking with Brain-Inspired Spike Timing Dependent Plasticity // Sci. Rep. 7. 5288 (2017).
Gibson S., Judy J., Marković D. Technology-Aware Algorithm Design for Neural Spike Detection, Feature Extraction, and Dimensionality Reduction // IEEE Trans. Neural. Syst. Rehabil. Eng. 18:5 (2010).
Fernandes C. Embedded Platform for Neural Recording and Real-Time Template Matching // Diss. (2015).
Gupta I., Serb A., Khiat A., Zeitler R., Vassanelli S., Prodromakis T. Sub 100 nW Volatile Nano-Metal-Oxide Memristor as Synaptic-Like Encoder of Neuronal Spikes // IEEE Trans. on Biomedical Circuits and Systems. 12:2 РP. 351–359 (2018).
Ielmini D. Resistive Switching Models by Ion Migration in Metal Oxides. Korkin A., Lockwood D. Nanoscale Applications for Information and Energy Systems // Nanostructure Science and Technology. Springer (2013).
Pi S. et al. Memristor crossbar arrays with 6-nm half-pitch and 2-nm critical dimension // Nature Nanotechnology. https://doi.org/10.1038/s41565-018-0302-0, 2018.
Hansen M., Kohlstedt H., Ziegler M. Unsupervised Hebbian learning experimentally realized with analogue memrisistive crossbar arrays // Scientific reports. 8 (1). Р. 8914 (2018).
Choi B. J. et al. High-speed and low-energy nitride memristors // Adv. Funct. Mater. 26. PP. 5290–5296 (2016).
Goux L. et al. Ultralow sub-500nA operating current high-performance TiN/Al2O3 / HfO2 / Hf / TiN bipolar RRAM achieved through understanding-based stack-engineering // In 2012 Symposium on VLSI Technology (VLSIT). РP. 159–160 (IEEE, Honolulu, HI, USA, 2012).
Gina C. Adam, Khiat A., Prodromakis T. Challenges hindering memristive neuromorphic hardware from going mainstream // Nature communications. 9:5267 (2018). https://doi.org/10.1038/s41467-018-07565-4.
Guo Y., Wu H., Gao B., Qian H. Unsupervised Learning on Resistive Memory Array Based Spiking Neural Networks // Front. Neurosci. 13:812 (2019).
Li H., Li K.-S., Lin C.-H., Hsu J.-L., Chiu W.-C., Chen M.-C., Wu T.-T., Sohn J., Eryilmaz S., Shieh J.-M., Yeh W.-K., Wong H.-S. IEEE Symp. VLSI Technol. // IEEE, Piscataway, NJ. РP. 1–2 (2016).
Chicca E., Stefanini F., Bartolozzi C., Indiveri G. Neuromorphic Electronic Circuits for Building Autonomous Cognitive Systems // Proc. IEEE 102. PР. 1367–1388 (2014).
Bi G., Poo M. Synaptic Modifications in Cultured Hippocampal Neurons: Dependence on Spike Timing, Synaptic Strength, and Postsynaptic Cell Type // J. Neurosci. 18. 10464 (1998).
Markram H., Lubke J., Frotscher M., Sakmann B. Regulation of Synaptic Efficacy by Coincidence of Postsynaptic APs and EPSPs // Science 275. РP. 213–215 (1997).
Malenka R., Bear M. Neurobiological Bases of Learning and Their Role for the Paradigm Shift in Education // Neuron. PР. 5–21 (2004).
Xiao Di Huang, Yi Li, Hao Yang Li, Yi Fan Lu, Kan Hao Xue, Xiang Shui Miao. Enhancement of DC / AC resistive switching performance in AlOx memristor by two-technique bilayer approach // Appl. Phys. Lett. 116. 173504 (2020).
Andreeva N., Ivanov A., Petrov A. Multilevel resistive switching in TiO2/Al2O3 bilayers at low temperature // AIP Advances. 8. 025208 (2018).
Alekseeva L., Nabatame T., Chikyow T., Petrov A. // Jpn. J. Appl. Phys. 55. 08PB02 (2016).
Петров А., Алексеева Л., Иванов А., Лучинин В., Романов А., Чикев T., Набатамэ Т. На пути к нейроморфной мемристорной компьютерной платформе // НАНОИНДУСТРИЯ. 2016. № 1(63).
Киселев М. В. Исследование двухнейронных ячеек памяти в импульсных нейронных сетях // Компьютерные исследования и моделирование. 2020. Т. 12 (2). С. 401–416.
Andreeva N. V., Ryndin E. A., Gerasimova M. I. Memristive logic design of multifunctional spiking neural network with unsupervised learning. https://doi.org/10.1007/s12668-020-00778-2. BioNanoScience (2020).
Bichler O., Querlioz D., Thorpe S. J., Bourgoin J. P., Gamrat C. Extraction of temporally correlated features from dynamic sensors with spike-timing-dependent plasticity. Neural Networks. 32:339-348 (2012).
Отзывы читателей