Топологии искусственных нейронных сетей

5.2. Топология нейронных сетей

Нейронная сеть представляет собой совокупность большого числа нейронов, топология соединения которых зависит от типа сети. Чтобы создать нейронную сеть для решения какой-либо конкретной задачи, необходимо выбрать способ соединения нейронов друг с другом, и соответствующим образом подобрать значения весовых параметров на этих связях, причем возможность влияния одного нейрона на другой определяется установленными соединениями, а степень влияния определяет вес соединения. В искусственной нейронной сети пренебрегают многими известными характеристиками биологического прототипа, которые некоторые исследователи считают критическими. Например, в ней не учитывается пространственно-временная нелинейность суммирования, которая особенно проявляется для сигналов, приходящих по возбуждающим и тормозящим синапсам, различного рода временные задержки, эффекты синхронизации и частотной модуляции и т. п. Несмотря на это нейронные сети, простроенные на основе таких простых элементов, демонстрируют ассоциативные свойства, напоминающие свойства биологических систем. Теоретические основы нейронных сетей были заложены в начале 40-х годов, когда У. Мак-Каллок и У. Питтс сформулировали основные положения теории деятельности головного мозга. Ими была разработана модель нейрона как простейшего процессорного элемента, выполняющего вычисление переходной функции от скалярного произведения вектора входных сигналов и вектора весовых коэффициентов, предложена конструкция сети таких нейронов для выполнения логических и арифметических операций и сделано основополагающее предположение о том, что такая сеть способна обучаться, распознавать образы, обобщать полученную информацию. В модели МакКаллока – Питтса нейроны имеют два состояния – 0 или 1 и бинарную функцию перехода. Каждый нейрон в сети определяет взвешенную сумму состояний всех других нейронов и сравнивает ее с порогом, чтобы определить свое собственное состояние. На рис.18 представлены одиночные нейроны с тремя входами и соответствующими весовыми коэффициентами для вычисления логических функций И и ИЛИ. Пороговое значение – 0, т.е. нейрон «не срабатывает», если уровень возбуждения меньше нуля. Рис.18 – Вычисление логических функций с помощью нейронов Основной недостаток модели МакКаллока – Питтса состоит в том, что бинарная функция перехода не предоставляет нейронной сети достаточную гибкость при обучении и настройке на заданную задачу. Если значение вычисленного скалярного произведения даже незначительно не достигает до заданного порога, то выходной сигнал не формируется вовсе, т.е. нейрон «не срабатывает». В результате теряется интенсивность выходного сигнала данного нейрона и, следовательно, формируется невысокое значение уровня на взвешенных входах в следующем слое нейронов. Дальнейшее развитие теория нейронных сетей получила в 1958 году благодаря Френсису Розенблату, добавившему в модель МакКаллока – Питтса способность связей к модификации, что сделало нейронную сеть обучаемой. Эта модель была названа персептроном. Первоначально персептрон представлял собой однослойную структуру с жесткой пороговой функцией и бинарными или многозначными входами. Персептрон применялся для решения задачи автоматической классификации образов, которая в общем случае состоит в разделении пространства признаков между заданным количеством классов. Значения признаков распознаваемого образа подаются на входы персептрона, а значения выходов обученного персептрона должны соответствовать классу, к которому относится распознаваемый образ. Первые персептроны были способны распознавать некоторые буквы латинского алфавита. Пример однослойной сети с m входами и тремя выходами, позволяющей распознавать соответственно три класса образов, приведен на рис.19. В процессе обучения персептрону последовательно предъявляются образы из обучающего множества, каждый из которых представляет собой вектор активностей входных сигналов X, вместе с желаемым вектором активностей выходных сигналов сети Y. Обучение заключается в таком изменении весовых коэффициентов wij, которое приводит в итоге к максимуму правильного распознавания. Если после предъявления очередного образа из обучающего множества выходы системы срабатывают правильно, то весовые коэффициенты связей не изменяются, а если неправильно, то весовым коэффициентам дается небольшое приращение в сторону улучшения распознавания. В результате такой процедуры, относящейся к классу методов обучения с учителем, получаются значения весов, минимизирующие среднюю ошибку на всем обучающем множестве образов. Рис.19 – Однослойная нейронная сеть Серьезным недостатком персептрона является то, что не всегда существует такая комбинация весовых коэффициентов, при которой имеющееся множество образов будет распознаваться. Например, невозможно подобрать весовые коэффициенты персептрона для реализации логической функции «исключающего ИЛИ» (сложение по модулю два). Причина этого недостатка состоит в том, что однослойный персептрон реализует только линейную разделяющую поверхность в пространстве признаков. Однако лишь небольшое количество задач предполагает линейную разделимость пространства признаков. Выходом из этого положения является использование многослойного персептрона, способного строить ломаную границу между распознаваемыми образами, но в таком случае возникает проблема слабой формализации метода обучения персептрона. На рис. 18 представлен вариант двуслойной сети из трех нейронов, реализующей логическую операцию сложения по модулю два. В 70-е годы интерес к нейронным сетям значительно упал, однако работы по их исследованию продолжались. Был предложен ряд интересных разработок, например, когнитрон, способный хорошо распознавать достаточно сложные образы независимо от поворота и изменения масштаба изображения. Автором когнитрона является японский ученый И. Фукушима. Начало современному математическому моделированию многослойных нейронных сетей было положено в 1982 году работами Хопфилда, в которых была разработана математическая модель ассоциативной памяти на нейронной сети и введена функция вычислительной энергии нейронной сети. Показано, что для однослойной нейронной сети со связями типа «все на всех» характерна сходимость к одной из конечного множества равновесных точек, которые являются локальными минимумами функции энергии, содержащей в себе всю структуру взаимосвязей в сети. Привлекательность подхода Хопфилда состоит в том, что нейронная сеть для конкретной задачи может быть запрограммирована без обучающих итераций, т.к. веса связей вычисляются на основании вида функции энергии, сконструированной для этой задачи. Развитием модели Хопфилда для решения комбинаторных оптимизационных задач и задач искусственного интеллекта является машина Больцмана, предложенная и исследованная Джефери Е. Хинтоном и Р. Земелом. В ней, каждое состояние сети характеризуется определенным значением функции консенсуса, являющейся аналогом функции энергии. Максимум функции консенсуса и соответствует оптимальному решению задачи, однако, следует признать, что проблема представления функции энергии или консенсуса является не менее сложной, чем разработка эффективного алгоритма обучения многослойной нейронной сети. В многослойных нейронных сетях связи между собой имеют только соседние слои, при этом каждый нейрон предыдущего слоя связан со всеми нейронами последующего слоя. Нейроны обычно имеют сигмоидальную функцию возбуждения. Первый слой нейронов называется входным и содержит число нейронов соответствующее двоичному представлению вектора признаков распознаваемых образов. Последний слой нейронов называется выходным и содержит столько нейронов, сколько классов образов распознается. Между входным и выходным слоями располагается один или более скрытых слоев. Определение числа скрытых слоев и числа нейронов в каждом слое для конкретной задачи производится эвристическими методами. Предположим, что необходимо научить нейронную сеть распознавать рукописные цифры. Можно воспользоваться матрицей, из 256 сенсоров, каждый из которых регистрирует присутствие или отсутствие чернильного пятнышка в пределах маленькой площадки – фрагмента одной цифры. В таком случае для сети потребуется 256 входных нейронов, 10 выходных нейронов (по одному на каждую возможную цифру) и некоторое количество скрытых нейронов. Для каждой цифры, регистрируемой сенсорами, сеть должна генерировать высокую активность в соответствующем выходном нейроне и низкую в остальных выходных нейронах. В процессе обучения системы, ей предъявляется изображение цифры и сравнивается действительная активность на 10 выходных нейронах с желаемой активностью, затем подсчитывается ошибка между действительным и желаемым выходом, после чего вес каждой связи изменяется так, чтобы уменьшить ошибку. Описанный цикл повторяется со многими различными написаниями каждой цифры до тех пор, пока сеть не научится правильно распознавать все возможные изображения.

Читайте также:  Что такое протоколы компьютерных сетей и для чего они предназначены

Источник

Оцените статью
Adblock
detector