Объединение обоих полей в общий обзор

Пиковые нейронные сети зарекомендовали себя как один из наиболее успешных подходов к моделированию поведения и обучающего потенциала мозга и их использованию для решения практических задач онлайн-обучения [1].

Потоковое обучение

В Stream Learning (SL), также известном как интеллектуальный анализ потоков данных или машинное обучение для потоков данных, приложения (например, мобильные телефоны, сенсорные сети, средства управления производственными процессами и интеллектуальные пользовательские интерфейсы, среди прочего) генерируют огромные объемы данных в виде быстрых потоков. , приобретая особую актуальность с приходом эпохи больших данных и IoT. В этих сценариях алгоритмы не могут явно получить доступ ко всем историческим данным, потому что емкость хранилища, необходимая для этой цели, становится неуправляемой. Действительно, потоки данных бывают быстрыми и большими (потенциально бесконечными), поэтому информацию из них нужно извлекать в режиме реального времени, поэтому ее необходимо изучать в интерактивном режиме [2].

Кроме того, некоторые из этих сценариев создают нестационарные потоки данных, которые становятся все более распространенными, и где процесс создания данных может меняться со временем, вызывая изменения в моделируемых шаблонах (дрейф концепции). Это приводит к тому, что модели прогнозирования, обученные на основе этих потоковых данных, устаревают и не могут адаптироваться к новому распределению. Следовательно, существует острая потребность в новых алгоритмах, которые обнаруживают и / или адаптируются к этим изменениям как можно быстрее, сохраняя при этом хорошие показатели производительности [3].

Пик нейронных сетей

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

SNN содержат набор вычислительных единиц (нейронов), связанных между собой направленными ребрами (синапсами между нейронами), которые обрабатывают информацию в соответствии с заданным набором правил и уравнений (модель информации обработка в нейронных схемах). Различные варианты их взаимодействия или динамики привели к появлению большого количества различных типов моделей (таких как модели Ижикевича, Ходжкина – Хаксли или модели Leaky Integrate-and-Fire), которые были тщательно изучены в компьютерные науки в последние десятилетия, и в последние годы к ним возродился интерес благодаря успеху
Deep Learning [5].

Перед тем, как представить входные данные в SNN, они должны быть закодированы в spike поезда, чтобы применить модель нейрона. Часть кодирования направлена ​​на создание паттернов пиков, которые представляют входные стимулы, и это все еще остается открытым вопросом в нейробиологии (какая информация содержится в таком пространственно-временном паттерне пиков? Какой код используется нейронами для передачи этого сигнала? информации? или как другие нейроны могут расшифровать сигнал?). Становится критически важным генерировать последовательности всплесков, чтобы сохранялось релевантное для задачи информационное содержание входных стимулов. Таким образом, решение о том, какая информация потеряна, что сохраняется и насколько эффективным было кодирование, нетривиально [6].

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

Увеличение количества нейронных сетей для целей потокового обучения

Некоторые SNN особенно хорошо известны в исследовательском сообществе SL своей способностью к непрерывному и постепенному обучению, что объясняет их постоянную адаптируемость к нестационарным и развивающимся средам. Кроме того, они продемонстрировали способность фиксировать временные ассоциации между временными переменными в потоковых данных. Кроме того, SNN имеют оптимальные характеристики для аппаратной реализации, что является интересной темой, поскольку может быть обеспечена работа в режиме онлайн и встроенные аппаратные системы, что увеличивает количество приложений, в которых могут применяться SNN (например, заказной чип VLSI).

Потоки данных могут демонстрировать временные зависимости между метками классов, которые могут помочь определить, как входные функции соотносятся друг с другом с течением времени. SNN используют представление информации о пиках для построения правил обучения с периодом пиков, которые продемонстрировали способность фиксировать временные ассоциации
между временными переменными в потоковых данных. Использование некоторых SNN (например, развивающихся SNN [7]) в SL [8] позволяет очень быстро в реальном времени и снизить вычислительную сложность процесса обучения, учитывая его локальность, которая хорошо подходит для параллельной реализации. Что касается адаптации к дрейфу, большинство стандартных моделей классификации необходимо переобучать, если они используются в меняющихся условиях и не могут правильно масштабироваться. Некоторые SNN могут преодолеть этот недостаток, например эволюционирующий характер eSNN (основанный на процессе слияния похожих нейронов) делает возможным накопление знаний по мере того, как данные становятся доступными, без необходимости хранения и
повторного обучения модели на прошлых выборках.

Инструменты

Для SL:

  • MOA: наверное, самый популярный Java-фреймворк с открытым исходным кодом для этих целей.
  • Scikit-Multiflow: вдохновленный MOA и реализованный на Python, он содержит набор алгоритмов машинного обучения, наборов данных, инструментов и показателей для оценки SL.
  • Scikit-Learn: хотя он в основном ориентирован на пакетное обучение, этот фреймворк также предоставляет исследователям некоторые методы SL (полиномиальный наивный байесовский метод, персептрон, классификатор стохастического градиентного спуска, пассивно-агрессивный классификатор и другие).
  • Spark streaming: проект Apache, направленный на создание масштабируемых отказоустойчивых потоковых приложений.
  • Другие интересы: Flink, Storm, Beam, Samza, SAMOA и др.

Для SNN:

  • Brian: это симулятор Python с открытым исходным кодом для сетей SNN.
  • Cypress: ut - это среда моделирования C ++, которая может выполнять эффективное
    моделирование дискретных событий SNN. Особенно рекомендуется для
    моделирования, в котором задействованы клетки со сложными анатомическими и
    биофизическими свойствами.
  • Nest: это среда моделирования (C ++, Python, Cython), которая лучше всего подходит для моделей, которые фокусируются на динамике, размере и структуре нейронных систем, а не на подробных морфологических и биофизических
    свойствах отдельных нейронов.
  • PyNN: это для независимой от симулятора спецификации нейронных
    сетевых моделей. Реализация Python.
  • Другие интересы: Neuron, NeuCube, PCSIM, ANNarchy. Мы также можем найти технические характеристики оборудования в SpiNNaker и BrainScaleS.

Заключение

SL - очень горячая тема в исследовательском сообществе из-за большого количества реальных приложений, основанных на потоковых данных, особенно в тех сценариях, где на данные влияют нестационарные события, вызывающие так называемый дрейф концепций. SNN считаются третьим поколением нейронных сетей и зарекомендовали себя как один из наиболее успешных подходов к моделированию поведения и обучающего потенциала мозга, позволяющий очень быстро моделировать большие сети в реальном времени и с низкими вычислительными затратами. Они также показали очень хорошее поведение в ситуациях обнаружения дрейфа [9] и адаптации дрейфа [8], часто присутствующих в сценариях SL. Все это заставляет нас рассматривать обе области на невероятно интересном пересечении. Тем не менее, необходимо добиться большого прогресса в обеих областях для решения соответствующих открытых проблем, но мы должны осознавать важность слияния SL и SNN для решения реальных проблем с вычислительной мощностью этих биологических систем.

Благодарности

Я хотел бы поблагодарить остальную часть исследовательской группы (Хавьера Дель Сер из TECNALIA, Альберта Бифета из Télécom Paris и Университета Вайкато и Николы Касабова из Оклендского технологического университета).

использованная литература

[1] Лобо, Дж. Л., Дель Сер, Дж., Бифет, А., и Касабов, Н. (2020). Расширение нейронных сетей и онлайн-обучение: обзор и перспективы. Нейронные сети, 121, 88–100.

[2] Лозинг В., Хаммер Б. и Версинг Х. (2018). Пошаговое онлайн-обучение: обзор и сравнение современных алгоритмов. Neurocomputing, 275, 1261–1274.

[3] Лу, Дж., Лю, А., Донг, Ф., Гу, Ф., Гама, Дж., И Чжан, Г. (2018). Обучение в рамках дрейфа понятий: обзор. IEEE Transactions по разработке знаний и данных.

[4] Герстнер В. и Кистлер В. М. (2002). Модели нейронов с импульсами: одиночные нейроны, популяции, пластичность. Издательство Кембриджского университета.

[5] Таванаи, А., Годрати, М., Керадпишех, С. Р., Маскелье, Т., и Майда, А. (2018). Глубокое обучение в нейронных сетях. Нейронные сети.

[6] Петро Б., Касабов Н. и Кисс Р. М. (2019). Выбор и оптимизация методов кодирования временных пиков для нейронных сетей с пиками. Транзакции IEEE в нейронных сетях и обучающих системах.

[7] Шлибс, С., Касабов, Н. (2013). Развивающаяся пиковая нейронная сеть - исследование. Evolving Systems, 4 (2), 87–98.

[8] Лобо, Дж. Л., Ланья, И., Дель Сер, Дж., Бильбао, М. Н., и Касабов, Н. (2018). Развивающиеся нейронные сети для онлайн-обучения через дрейфующие потоки данных. Нейронные сети, 108, 1–19.

[9] Лобо, Дж. Л., Дель Сер, Дж., Ланья, И., Бильбао, М. Н., и Касабов, Н. (2018, октябрь). Обнаружение дрейфа нестационарных потоков данных с использованием развивающихся нейронных сетей с пиками. В Международном симпозиуме по интеллектуальным и распределенным вычислениям (стр. 82–94). Спрингер, Чам.

Примечание

* Эта статья основана на научной рукописи, опубликованной в журнале Neural Networks в 2020 году. Доступно по адресу https://www.sciencedirect.com/science/article/pii/S0893608019302655.