Мы представляем спайковую нейронную сеть (SNN) для распознавания визуальных образов с обучением на кристалле в нейроморфном оборудовании. Мы показываем, как эта сеть может обучаться простым визуальным шаблонам, состоящим из горизонтальных и вертикальных линий, регистрируемых динамическим визуальным сенсором (DVS), используя локальное правило пластичности на основе спайков. В процессе распознавания сеть классифицирует идентичность шаблона, одновременно оценивая его местоположение и масштаб. Мы развиваем предыдущие работы, в которых использовалось обучение с нейроморфным оборудованием в контуре, и демонстрируем, что предложенная сеть может корректно функционировать с обучением на кристалле, представляя собой законченную нейроморфную систему обучения и распознавания образов. Наши результаты показывают, что сеть устойчива к шуму на входе (без снижения точности при добавлении 130% шума) и к до 20% шуму в параметрах нейронов.
Введение
Сверточные нейронные сети (CNN) являются современным подходом для распознавания изображений. Обученные на соответствующих наборах данных, они позволяют распознавать сотни классов объектов с высокой точностью [1]. Однако в приложениях динамического распознавания образов, использующих событийные камеры, такие как динамический визуальный сенсор (DVS) [2], традиционный подход на основе CNN нивелирует преимущества DVS: низкую задержку и энергопотребление [3]. Поскольку спайковые нейронные сети (SNN) соответствуют событийной природе выхода DVS, они являются естественным выбором для обработки событийного визуального выхода. Эти сети могут эффективно работать на нейроморфном оборудовании — вычислительных платформах, реализующих SNN на кристалле [4]–[7], но их нельзя легко обучить с помощью правил обучения обратного распространения ошибки, как в обычных CNN.
Существует несколько способов настройки SNN для решения задачи распознавания образов. Можно использовать инструмент преобразования CNN-to-SNN [8] для конвертации обученной CNN в SNN, которую затем можно донастроить для оборудования. Альтернативно, исследуются несколько методов локального обучения, аппроксимирующих обратное распространение для спайковых сетей, которые показывают обнадеживающие результаты [9]–[11]. Однако эти методы имеют те же проблемы, что и обратное распространение, поскольку требуют большого объема данных для обучения и необходимости переобучения на всем наборе данных для изучения новых образов.
Другие подходы предлагают изучать иерархию детекторов признаков с использованием так называемых временных поверхностей для обнаружения пространственно-временных событийных паттернов [12], [13]. Также было показано, что обучение без учителя демонстрирует promising результаты в неглубоких SNN [14], [15].
В этой линии работ [16] был предложен метод обучения SNN для распознавания образов с использованием локальных правил обучения — хеббовского обучения на основе спайков, — которые обычно доступны в нейроморфном оборудовании. Эта работа использовала аналого-цифровое нейроморфное устройство DYNAP [17], которое не поддерживало обучение на кристалле. Алгоритм обучения запускался на компьютере с чипом DYNAP в контуре [16]. В той работе авторы продемонстрировали свойства сети, выходящие за рамки стандартных CNN: обучение за один предъявление, инвариантное к масштабу и местоположению распознавание с одновременной оценкой масштаба и местоположения образов, автономное арбитрирование фаз обучения и распознавания с детектированием новизны предъявленного образа. Эти свойства являются привлекательными особенностями для нейроморфных поведенческих систем и для приложений сенсорной обработки, требующих онлайн-обучения.
Здесь мы расширяем эту работу, предлагая улучшенный механизм арбитража между обучением и распознаванием, механизм масштабирования, требующий меньшего количества нейронов и синапсов, а также правило спайкового хеббовского обучения, которое реализовано непосредственно на платформе нейроморфного оборудования без необходимости наличия компьютера в контуре.
Мы реализовали архитектуру SNN для распознавания образов на нейроморфном исследовательском чипе Intel Loihi [7] и воспроизвели результаты [16] с онлайн-обучением непосредственно на аппаратном обеспечении. Кроме того, мы проверили устойчивость распознавания образов к шуму на входе и шуму в нейронах, что может наблюдаться в аналого-цифровых нейроморфных устройствах. Наконец, мы оценили ресурсы, необходимые для масштабирования SNN для решения более крупномасштабной задачи распознавания.
Введение
Сверточные нейронные сети (CNN) являются современным подходом для распознавания изображений. Обученные на соответствующих наборах данных, они позволяют распознавать сотни классов объектов с высокой точностью [1]. Однако в приложениях динамического распознавания образов, использующих событийные камеры, такие как динамический визуальный сенсор (DVS) [2], традиционный подход на основе CNN нивелирует преимущества DVS: низкую задержку и энергопотребление [3]. Поскольку спайковые нейронные сети (SNN) соответствуют событийной природе выхода DVS, они являются естественным выбором для обработки событийного визуального выхода. Эти сети могут эффективно работать на нейроморфном оборудовании — вычислительных платформах, реализующих SNN на кристалле [4]–[7], но их нельзя легко обучить с помощью правил обучения обратного распространения ошибки, как в обычных CNN.
Существует несколько способов настройки SNN для решения задачи распознавания образов. Можно использовать инструмент преобразования CNN-to-SNN [8] для конвертации обученной CNN в SNN, которую затем можно донастроить для оборудования. Альтернативно, исследуются несколько методов локального обучения, аппроксимирующих обратное распространение для спайковых сетей, которые показывают обнадеживающие результаты [9]–[11]. Однако эти методы имеют те же проблемы, что и обратное распространение, поскольку требуют большого объема данных для обучения и необходимости переобучения на всем наборе данных для изучения новых образов.
Другие подходы предлагают изучать иерархию детекторов признаков с использованием так называемых временных поверхностей для обнаружения пространственно-временных событийных паттернов [12], [13]. Также было показано, что обучение без учителя демонстрирует promising результаты в неглубоких SNN [14], [15].
В этой линии работ [16] был предложен метод обучения SNN для распознавания образов с использованием локальных правил обучения — хеббовского обучения на основе спайков, — которые обычно доступны в нейроморфном оборудовании. Эта работа использовала аналого-цифровое нейроморфное устройство DYNAP [17], которое не поддерживало обучение на кристалле. Алгоритм обучения запускался на компьютере с чипом DYNAP в контуре [16]. В той работе авторы продемонстрировали свойства сети, выходящие за рамки стандартных CNN: обучение за один предъявление, инвариантное к масштабу и местоположению распознавание с одновременной оценкой масштаба и местоположения образов, автономное арбитрирование фаз обучения и распознавания с детектированием новизны предъявленного образа. Эти свойства являются привлекательными особенностями для нейроморфных поведенческих систем и для приложений сенсорной обработки, требующих онлайн-обучения.
Здесь мы расширяем эту работу, предлагая улучшенный механизм арбитража между обучением и распознаванием, механизм масштабирования, требующий меньшего количества нейронов и синапсов, а также правило спайкового хеббовского обучения, которое реализовано непосредственно на платформе нейроморфного оборудования без необходимости наличия компьютера в контуре.
Мы реализовали архитектуру SNN для распознавания образов на нейроморфном исследовательском чипе Intel Loihi [7] и воспроизвели результаты [16] с онлайн-обучением непосредственно на аппаратном обеспечении. Кроме того, мы проверили устойчивость распознавания образов к шуму на входе и шуму в нейронах, что может наблюдаться в аналого-цифровых нейроморфных устройствах. Наконец, мы оценили ресурсы, необходимые для масштабирования SNN для решения более крупномасштабной задачи распознавания.
*Перевод выполнен с помощью нейросетей
Visual Pattern Recognition with on On-chip Learning: towards a Fully Neuromorphic Approach
We present a spiking neural network (SNN) for visual pattern recognition with on-chip learning on neuromorphic hardware. We show how this network can learn simple visual patterns composed of horizontal and vertical bars sensed by a Dynamic Vision Sensor, using a local spike-based plasticity rule. During recognition, the network classifies the pattern’s identity while at the same time estimating its location and scale. We build on previous work that used learning with neuromorphic hardware in the loop and demonstrate that the proposed network can properly operate with on-chip learning, demonstrating a complete neuromorphic pattern learning and recognition setup. Our results show that the network is robust against noise on the input (no accuracy drop when adding 130% noise) and against up to 20% noise in the neuron parameters. Index Terms—Neuromorphic pattern recognition, Dynamic Vision Sensor, spiking neural networks.
Introduction
Convolutional neural networks (CNNs) are the state of the art approach for image recognition. Trained on suitable datasets, they enable recognition of hundreds of object classes with high precision [1]. However, in dynamic pattern recognition applications that use event-based cameras such as the Dynamic Vision Sensor (DVS) [2], the conventional CNN based approach undermines the DVS’s advantages: the low latency and power consumption [3]. As spiking neural networks (SNNs) match the event-driven nature of the DVS output, they are a natural choice to process the event-based visual output. These networks can run efficiently in neuromorphic hardware – computing hardware that implements SNNs on-chip [4]– [7], but they cannot be easily trained with backpropagation learning rules, as in conventional CNNs. There are several ways of how an SNN can be configured to solve a pattern recognition task. A CNN-to-SNN conversion toolbox [8] can be used to convert a trained CNN to an SNN that one can fine-tune for the hardware. Alternatively, several local learning methods that approximate backpropagation are being explored with spiking networks, which show promising results [9]–[11]. However, these methods share the same problems of backpropagation, as they require a large amount of data for training and need retraining with the whole dataset to learn new patterns. Other approaches propose to learn a hierarchy of feature-detectors using so-called time surfaces to detect spatio-temporal event-patterns [12], [13]. Unsupervised learning has also been demonstrated to show promising results in a shallow SNNs [14], [15]. In this line of work, [16] has proposed a method of learning an SNN for pattern recognition using local learning rules – spike-based Hebbian learning – that are typically available in neuromorphic hardware. This work used a mixed-signal neuromorphic device DYNAP [17] that did not support onchip learning. The learning algorithm was run on a computer with the DYNAP chip in the loop [16]. In that work, the authors demonstrated properties of the network that go beyond standard CNNs: one-shot learning, scale- and location invariant recognition with simultaneous estimation of the scale and location of the patterns, autonomous arbitration of learning and recognition phases with detection of the novelty of the presented pattern. These properties are attractive features for neuromorphic behaving systems and for sensory-processing applications that require online learning. Here we extend that work by proposing an improved arbitration mechanism between learning and recognition, a scaling mechanism that requires fewer neurons and synapses, as well as a spikebased Hebbian learning rule that is implemented directly on a neuromorphic hardware platform without requiring a computer in the loop. We implemented the SNN pattern recognition architecture on Intel’s neuromorphic research chip Loihi [7] and replicated the results of [16] with online learning in hardware. Furthermore, we validated the robustness of pattern recognition against noise on the input and noise in neurons, as can be observed in mixed-signal neuromorphic devices. Finally, we estimated the resources needed to extend the SNN to perform a larger-scale recognition task.
Introduction
Convolutional neural networks (CNNs) are the state of the art approach for image recognition. Trained on suitable datasets, they enable recognition of hundreds of object classes with high precision [1]. However, in dynamic pattern recognition applications that use event-based cameras such as the Dynamic Vision Sensor (DVS) [2], the conventional CNN based approach undermines the DVS’s advantages: the low latency and power consumption [3]. As spiking neural networks (SNNs) match the event-driven nature of the DVS output, they are a natural choice to process the event-based visual output. These networks can run efficiently in neuromorphic hardware – computing hardware that implements SNNs on-chip [4]– [7], but they cannot be easily trained with backpropagation learning rules, as in conventional CNNs. There are several ways of how an SNN can be configured to solve a pattern recognition task. A CNN-to-SNN conversion toolbox [8] can be used to convert a trained CNN to an SNN that one can fine-tune for the hardware. Alternatively, several local learning methods that approximate backpropagation are being explored with spiking networks, which show promising results [9]–[11]. However, these methods share the same problems of backpropagation, as they require a large amount of data for training and need retraining with the whole dataset to learn new patterns. Other approaches propose to learn a hierarchy of feature-detectors using so-called time surfaces to detect spatio-temporal event-patterns [12], [13]. Unsupervised learning has also been demonstrated to show promising results in a shallow SNNs [14], [15]. In this line of work, [16] has proposed a method of learning an SNN for pattern recognition using local learning rules – spike-based Hebbian learning – that are typically available in neuromorphic hardware. This work used a mixed-signal neuromorphic device DYNAP [17] that did not support onchip learning. The learning algorithm was run on a computer with the DYNAP chip in the loop [16]. In that work, the authors demonstrated properties of the network that go beyond standard CNNs: one-shot learning, scale- and location invariant recognition with simultaneous estimation of the scale and location of the patterns, autonomous arbitration of learning and recognition phases with detection of the novelty of the presented pattern. These properties are attractive features for neuromorphic behaving systems and for sensory-processing applications that require online learning. Here we extend that work by proposing an improved arbitration mechanism between learning and recognition, a scaling mechanism that requires fewer neurons and synapses, as well as a spikebased Hebbian learning rule that is implemented directly on a neuromorphic hardware platform without requiring a computer in the loop. We implemented the SNN pattern recognition architecture on Intel’s neuromorphic research chip Loihi [7] and replicated the results of [16] with online learning in hardware. Furthermore, we validated the robustness of pattern recognition against noise on the input and noise in neurons, as can be observed in mixed-signal neuromorphic devices. Finally, we estimated the resources needed to extend the SNN to perform a larger-scale recognition task.