В этой статье представлен обзор наиболее популярных архитектур нейронных сетей. Для некоторых из них приведены подходящие сферы применения. В заключении сделаны рекомендации по выбору нейронной сети.
Тема искусственного интеллекта популярна уже не первое десятилетие, но в последнее время изучение этого вопроса находит широкое распространение [1]. Для создания искусственного интеллекта необходимо разработать модель поведения как у живого организма, способного учиться. Такой моделью является искусственная нейронная сеть, некоторые из архитектур которой будут освещены в данной статье.
Составляющие искусственной нейронной сети
Все искусственные нейронные сети состоят из так называемых нейронов — модели, представляющей из себя пороговую величину, и связей между нейронами — синапсами. Принято изображать искусственную нейронную в виде графа, где нейроны — это узлы, а синапсы — взвешенные связи между узлами.
Модель нейрона показана на рисунке 1.
Рис. 1. Модель искусственного нейрона
Из этого рисунка можно получить общее представление о работе искусственного нейрона. На вход поступает некоторое количество сигналов, которое заранее определено архитектором нейронной сети по критериям отбора, связанными с типом решаемой задачи. Эти сигналы умножаются на вес W и суммируются. После, функция активации преобразует полученные данные в своего рода ответ. Обычно этот ответ находится в диапазоне [0;1] или [-1;1]. Функции активации бывают различными, чаще всего встречается:
– линейная функция:
– сигмоид:
– гиперболический тангенс:
В искусственных нейронных сетях присутствует разнообразный набор таких активационных функций.
Путём объединения нескольких нейронов создаётся искусственная нейронная сеть.
Персептроны
Персептрон — система из сенсоров разных типов: сенсоры (S), ассоциативные (A) и реагирующие (R) [2]. Общий вид персептрона представлен на рисунке 2.
Рис. 2. архитектура персептрона
С учётом того, что каждый нейрон имеет вид, представленный на рисунке 1, можно сказать, что слой элементов S никак не преобразует данные, а лишь передаёт их на следующий слой, таким образом его можно исключить [4]. Даже такая модель может решить задачу классификации и сформировать базовый логический элемент, например, исключающее ИЛИ.
Сеть Хопфилда
Сеть Хопфилда — этот вид сети представляет из себя полносвязный граф представленный на рисунке 3.
Рис. 3. архитектура сети Хопфилда
В этой сети каждый нейрон выступает во всех трёх ипостасях. До обучения каждый нейрон является сенсорным, пока идёт обучение, все они ассоциативные, после обучения — реагирующие.
Эта сеть выдаёт ответ после принятия устойчивого состояния. Система стабилизируется не до конца, так как общая энергия сети уменьшается с каждой итерацией обучения. Нейроны, как правило, обучаются последовательно, хотя возможен и параллельный процесс.
Эти сети используются как ассоциативная память, их использование оправдано в случае «дорисовки» картины событий имея её существенную часть.
Свёрточная нейронная сеть
Это вид сети сильно отличается от остальных, в основном используется для работы с графической и аудио информацией. Модель такой сети представлена на рисунке 4. Эта архитектура обрабатывает данные не целиком, а фрагментами, но при этом данные не дробятся на части, а осуществляется своего рода последовательный прогон. Затем данные передаются дальше по слоям. Кроме свёрточных слоёв (С) используются также слои объединения (P — pooling). Например, из аудиодорожки выбираются только ключевые моменты: пики амплитуд и паузы. Слои объединения сжимаются с глубиной (обычно степенью двойки). К конечным слоям добавляются несколько персептронов (сеть прямого распространения), для последующей обработке данных.
Рис. 4. архитектура свёрточной нейронной сети
Эта архитектура является наиболее подходящей для распознавания изображений и их классификации. С её помощью возможно распараллеливание вычислений, и, как следствие, использование графических процессоров. Однако эта архитектура нуждается в настройке большого количества варьируемых параметров, таких как количество слоёв, количество ядер в каждом слое, функции активации каждого нейрона и многие другие.
Рекуррентная нейронная сеть
Эта архитектура похожа на сеть прямого распространения, но со смещением во времени. Информация к нейронам приходит не только с предыдущих слоёв, но и от самих себя с предыдущей итерации. Эта сеть показана на рисунке 5.
Рис. 5. архитектура рекуррентной нейронной сети
К сожалению информация в этих сетях со временем теряется со скоростью, зависящей от активационных функций. Эту архитектуру можно использовать в самых различных случаях, ведь любые данные можно представить в виде последовательности.
Выводы
В заключении можно сказать, что выбор нейронной сети основывается главным образом на типе решаемой задачи (аппроксимация, прогнозирование, кластеризация) и входных данных (размерности, ключевых факторах). Так же не стоит выбирать сложную нейронную сеть для обработки больших данных, следует преобразовывать данные по стандартным алгоритмам для уже существующих решений.
Литература:
- Электронный ресурс: Динамика популярности по запросу «Искусственный интеллект» Google.com https://www.google.ru/trends/explore?date=all_2008&gprop=news&q= %2Fm %2F0mkz&hl=ru
- Фрэнк Розенблатт. Принципы нейродинамики. Перцептроны и теория механизмов мозга. Издательство «Мир», 1965г — стр. 82
- Электронный ресурс: Зоопарк архитектур нейронных сетей / Хабрахабр https://m.habrahabr.ru/company/wunderfund/blog/313696/
- Электронный ресурс: Учебник по нейронным сетям / Neuralnet http://neuralnet.info/глава-3-персептроны/#история-персептрона