Теория и практика распознавания инженерных сооружений, промышленных предприятий и объектов железнодорожного транспорта при дешифрировании аэроснимков
Шрифт:
Важной характеристикой процесса обучения является обобщающая способность, характеризующая способность индивида интегрировать частные данные для определения закономерностей и пролонгации результатов. К этому относится способность после обучения на одних данных применять полученные знания для других данных или рассуждения от частного к общему. Обобщающая способность – важная черта нейронной организации мозга.
2.5. Искусственные нейронные сети
Искусственная нейронная сеть (ИНС) – математическая модель, а также ее программное или аппаратное воплощение, построенные по принципу организации и функционирования биологических
Основой ИНС является искусственный нейрон, который является отдаленным подобием биологического нейрона (рисунок 2.3).
Рисунок 2.3 – Упрощение от биологического нейрона к искусственному нейрону
Искусственный нейрон имеет несколько входов (аналоги синапсов в биологическом нейроне) и один выход (аналог аксона).
Математически нейрон выполняет функцию суммирования S входных сигналов Х с учетом их весов W, и затем результат обрабатывается функцией активации F. Результат на выходе Y зависит от входных сигналов X и их весов W, а также от функции активации. Коэффициенты W являются элементами памяти нейрона и основными элементами обучения нейронной сети.
Функция активации ограничивает амплитуду выходного сигнала нейрона. Обычно нормализованный диапазон амплитуд выходного сигнала нейрона лежит в интервале [0, 1] или [-1, 1].
На вход функции активации подается сумма всех произведений сигналов и весов этих сигналов.
Наиболее часто используемыми функциями (рисунок 2.4) активации являются:
1. Пороговая функция. Это простая кусочно-линейная функция. Если входное значение меньше порогового, то значение функции активации равно минимальному допустимому, иначе – максимально допустимому.
2. Линейный порог. Это несложная кусочно-линейная функция. Имеет два линейных участка, где функция активации тождественно равна минимально допустимому и максимально допустимому значению и есть участок, на котором функция строго монотонно возрастает.
Рисунок 2.4 – Типы функции активации нейрона: а) функция единичного скачка; б) функция единичного скачка с линейным порогом; в) гиперболический тангенс у=th(x); г) функция сигмоида у=1/(1+exp(-ax))
3. Сигмоидальная функция, или сигмоида. Это монотонно возрастающая дифференцируемая S-образная нелинейная функция. Сигмоида позволяет усиливать слабые сигналы и не насыщаться от сильных сигналов.
4. Гиперболический тангенс. Эта функция принимает на входе произвольное вещественное число, а на выходе дает вещественное число в интервале от –1 до 1. Подобно сигмоиде, гиперболический тангенс может насыщаться. Однако, в отличие от сигмоиды, выход данной функции центрирован относительно нуля.
Объединение искусственных нейронов в группу формирует нейронную сеть (рисунок 2.5).
Рисунок 2.5 – Схема формирования нейронной сети
Слой нейронной сети – это множество нейронных элементов, на которые в каждый такт времени параллельно поступает информация от других нейронных элементов сети.
Простая нейронная сеть состоит из входного слоя, скрытого слоя и выходного слоя. Сети, содержащие много скрытых слоев, часто называют глубинными нейронными сетями.
2.6. Топология искусственных нейронных сетей
Среди основных топологий нейронных сетей можно выделить полносвязные, сверточные и рекуррентные нейронные сети.
Полносвязные нейронные сети имеют несколько слоев, которые связаны между собой таким образом, что каждый нейрон последующего слоя имеет связь со всеми нейронами предыдущего слоя. Сложность сети резко возрастает от увеличения размерности входных данных и от количества скрытых слоев. Так, для анализа изображения форматом 28x28 элементов потребуется 784 нейрона в скрытом слое, и каждый из них должен иметь 784 входа для соединения с предыдущим слоем. Другая проблема заключается в том, что в полносвязной сети изображения представляют собой одномерные последовательности и при этом не учитываются особенности изображений как структуры данных. Тем не менее, для изображений небольших форматов можно использовать и полносвязную сеть.
Сверточные нейронные сети предназначены для обработки двумерных структур данных, прежде всего изображений. Сверточная сеть представляет собой комбинацию трех типов слоев:
– слои, которые выполняют функцию свертки над двумерными массивами данных (сверточные слои),
– слои, выполняющие функцию уменьшения формата данных (слой субдискретизации),
– полносвязные слои, завершающие процесс обработки данных.
Структура сверточных нейронных сетей принципиально многослойная. Работа сверточной нейронной сети обычно интерпретируется как переход от конкретных особенностей изображения к более абстрактным деталям и далее к еще более абстрактным деталям вплоть до выделения понятий высокого уровня. При этом сеть самонастраивается и вырабатывает необходимую иерархию абстрактных признаков (последовательности карт признаков), фильтруя маловажные детали и выделяя существенное. Примером классической сверточной нейронной сети является сеть VGG16 (рисунок 2.6).
Рисунок 2.6 – Структура классической сети VGG16
Сеть VGG-16 имеет 16 слоев и способна работать с изображениями достаточно большого формата 224x224 пикселя. В своей стандартной топологии эта сеть способна работать с датасетом изображений ImageNet, содержащим более 15 млн изображений, разбитых на 22000 категорий.
Рекуррентные нейронные сети отличаются от многослойных сетей тем, что могут использовать свою внутреннюю память для обработки последовательностей произвольной длины. Благодаря направленной последовательности связей между элементами рекуррентных сетей они применимы в таких задачах, где нечто целостное разбито на сегменты, например, распознавание рукописного текста или распознавание речи.