Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Задачи, решаемые с помощью нейронных сетей




Классификация нейронных сетей

Функции активации нейронов

Название Формула Примечание
Ступенчатая пороговая (персептрон)   а – величина порога
Линейная пороговая   а 1, а 2 – величины порогов, k, b – параметры функции
Линейная   k, b – параметры функции
Сигмоидальная униполярная (логистическая)   b – параметр, влияющий на форму функции
    Окончание таблицы
Название Формула Примечание
Сигмоидальная биполярная (гипреболический тангенс) b – параметр, влияющий на форму функции
Гауссиана k, а – параметры функции
Экспоненциальная b – параметр, влияющий на форму функции

Нейронная сеть представляет собой совокупность нейронов, определенным образом соединенных друг с другом и с внешней средой посредством связей, характеризуемых определенными весовыми коэффициентами [6]. В зависимости от функций, выполняемых нейронами в сети, можно выделить три их типа:

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

· выходные нейроны, выходные значения которых представляют выходы нейронной сети. Преобразования в нейронах этого типа происходят в соответствии с (5.8);

· промежуточные нейроны составляют основу нейронных сетей. Преобразования в них также выполняются выражениям (5.8).

В процессе функционирования сети осуществляется преобразование входного вектора в выходной, т.е. переработка информации. Конкретный вид преобразования, выполняемого сетью, обусловливается не только характеристиками составляющих ее нейронов, но и особенностями архитектуры сети, а именно:

· топологией межнейронных связей;

· выбором определенных подмножеств нейронов для ввода и вывода информации;

· способами обучения сети;

· наличием или отсутствием конкуренции между нейронами;

· способами управления и синхронизации процессом информационного обмена между нейронами.

С точки зрения топологии можно выделить три основных типа нейронных сетей (рис. 5.9): полносвязные, многослойные (слоистые) и слабосвязные (с локальными связями).

Рис. 5.9. Варианты архитектуры нейронных сетей:
а - полносвязная сеть, б - многослойная сеть с последовательными связями,
в - слабосвязные сети

В полносвязных нейронных сетях (рис. 5.9, а) каждый нейрон передает свой выходной сигнал остальным нейронам, в том числе и самому себе. Все входные сигналы подаются на входы всех нейронов. Выходными сигналами сети могут быть все или некоторые выходные сигналы нейронов после нескольких тактов функционирования сети.

В многослойных нейронных сетях(рис. 5.9, б) нейроны объединяются в слои. Каждый слой содержит совокупность нейронов с едиными входными сигналами. Число нейронов в слое может быть любым и не зависит от количества нейронов в других слоях. В общем случае сеть состоит из Q слоев, пронумерованных слева направо. Внешние входные сигналы подаются на входы нейронов входного (нулевого) слоя, а выходами сети являются выходные сигналы последнего слоя. Кроме входного и выходного слоев в многослойной нейронной сети есть один или несколько скрытых слоев. Связи от выходов нейронов некоторого слоя q к входам нейронов следующего слоя (q +1) называются последовательными.

В свою очередь, в многослойных нейронных сетях выделяют следующие типы НС.

1. Монотонные НС являются частным случаем слоистых сетей, отличающиеся от последних рядом дополнительных условий, накладываемых на связи и нейроны. Каждый слой кроме последнего (выходного) разбит на два блока: возбуждающий и тормозящий. Связи между блоками также разделены на тормозящие и возбуждающие. Если от нейронов блока А к нейронам блока В ведут только возбуждающие связи, то это означает, что любой выходной сигнал блока является монотонной неубывающей функцией любого выходного сигнала блока А. Если же эти связи только тормозящие, то любой выходной сигнал блока В является невозрастающей функцией любого выходного сигнала блока А. Для нейронов монотонных сетей необходима монотонная зависимость выходного сигнала нейрона от параметров входных сигналов.

2. В сетях без обратных связей нейроны входного слоя получают входные сигналы, преобразуют их и передают нейронам первого скрытого слоя, и так далее вплоть до выходного, который выдает сигналы для интерпретатора и пользователя. Если не оговорено противное, то каждый выходной сигнал q -го слоя подастся на вход всех нейронов (q +1)-го слоя; однако возможен вариант соединения q -го слоя с произвольным (q + p)- m слоем.

Среди многослойных сетей без обратных связей различают полносвязанные (выход каждого нейрона q -го слоя связан с входом каждого нейрона (q +1)-го слоя) и частично полносвязанные. Классическим вариантом слоистых сетей являются полносвязанные сети прямого распространения (рис. 1.5).

Рис. 5.10. Многослойная сеть прямого распространения

3. В сетях с обратными связями информация с последующих слоев может передаваться на предыдущие слои нейронов. Эти сети также могут быть разделены на следующие классы:

· слоисто-циклические – отличающиеся тем, что слои замкнуты в кольцо. Последний слой передает свои выходные сигналы первому, при этом все слои равноправны и могут, как получать входные сигналы, так и выдавать выходные;

· слоисто-полносвязанные – состоящие из слоев, каждый из которых представляет собой полносвязную сеть. Сигналы передаются как от слоя к слою, так и внутри слоя. В каждом слое цикл работы распадается на три этапа: прием сигналов с предыдущего слоя, обмен сигналами внутри слоя, выработка выходного сигнала и передача его последующему слою;

· полносвязанно-слоистые – аналогичные по своей структуре слоисто-полносвязанным, но функционирующие другим образом. В таких НС фазы обмена информацией внутри слоя и передачи ее следующему не разделяются. На каждом такте нейроны всех слоев принимают сигналы от нейронов как своего слоя, так и последующих.

Примером сетей с обратными связями могут послужить частично-рекуррентные сети Элмана и Жордана, представленные на рис. 5.11.

Рис. 5.11. Сети с обратными связями:
а – Элмана, б – Жордана

Наконец, в слабосвязных НС (см. рис. 5.9, в) нейроны располагаются в узлах прямоугольной, гексагональной или октогональной решетки. В таких НС каждый нейрон связан с четырьмя, шестью или восемью своими ближайшими соседями, называемых окрестностями фон Неймана, Голея и Мура соответственно.

По типам структур нейронов известные нейронные сети можно разделить на гомогенные (однородные), состоящие из нейронов одного типа с единой функцией активации, и гетерогенные, типы и функции активации нейронов которой различны.

Существуют бинарные и аналоговые сети. Первые из них оперируют только двоичными сигналами, и выход каждого нейрона может принимать значение либо логического ноля (заторможенное состояние) либо логической единицы (возбужденное состояние).

Еще одна классификация делит нейронные сети на синхронные и асинхронные. В первом случае в каждый момент времени лишь один нейрон меняет свое состояние, во втором – состояние изменяется одновременно у целой группы нейронов, как правило, у всего слоя. Алгоритмически ход времени в нейронных сетях задается итерационным выполнением однотипных действий над нейронами.

Сети можно классифицировать также по числу слоев. Теоретически число слоев и число нейронов в каждом слое может быть произвольным, однако фактически оно ограничено ресурсами компьютера, на котором реализована нейронная сеть. Чем сложнее сеть, тем более сложные задачи она может решать.

Независимо от способа реализации, нейронную сеть можно рассматривать как взвешенный ориентированный граф. Узлы этого графа соответствуют нейронам, а ребра – связям между ними. С каждой связью ассоциирован вес – рациональное число, отображающее оценку возбуждающего или тормозящего сигнала, передаваемого по этой связи на вход нейрона-приемника при возбуждении нейрона-передатчика. Нейронная сеть образуется путем объединения ориентированными взвешенными ребрами выходов нейронов с входами. Граф межнейронных соединений может быть ациклическим, либо произвольным циклическим, что также может служить одним из классификационных признаков нейронной сети.

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

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

В обучаемых сетях графы межнейронных связей и веса входов изменяются при выполнении алгоритма обучения. Алгоритмы обучения сети делятся на наблюдаемые, ненаблюдаемые и смешанные (гибридные). Первые при обучении сравнивают заранее известный выход с получившимся значением. Вторые обучаются, не зная заранее правильных выходных значений, но группируя «близкие» входные векторы так, чтобы они формировали один и тот же выход сети. Ненаблюдаемое обучение используется, в частности, при решении задачи кластеризации. При смешанном алгоритме обучения часть весов определяется при наблюдаемом, а часть – при ненаблюдаемом обучении. Обучение осуществляется путем предъявления примеров, состоящих из наборов входных данных в совокупности с соответствующими результатами при наблюдаемом обучении и без последних – при ненаблюдаемом.

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

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

В сетях связности знания сохраняются не в декларативном виде, поэтому они не могут быть доступны для интерпретации со стороны какого-либо внешнего процесса. Доступ к знаниям и процесс логического вывода могут быть описаны только в терминах активности сети.

Однако, даже в случае, если узлы представляют сущности предметной области, общая картина активности множеств узлов сети может скрывать понятия достаточно высокого уровня, объединяющие определенные аспекты сущностей, представленных узлами. Например, пусть возбуждены узлы представляющие слова «гонки», «машина» и «водитель». Таким способом может быть представлено понятие «водитель гоночной машины», а может – сам факт вождения гоночной машины. В любом случае такое представление может расцениваться как субсимволическое, поскольку составляющие его узлы не могут быть сведены к какой-нибудь синтаксической структуре, имеющей однозначный, явно выраженный смысл. Точно так же нельзя выполнить и семантический анализ состояния множеств узлов с помощью какого-либо внешнего набора правил.

Любая нейронная сеть используется в качестве самостоятельной системы представления знаний, которая в практических приложениях выступает, как правило, в качестве одного из компонентов системы управления либо модуля принятия решений, передающих результирующий сигнал на другие элементы, не связанные непосредственно с искусственной нейронной сетью [11].

Задачи, решаемые нейронными сетями, можно условно разделить на несколько основных групп:

· аппроксимации и интерполяции;

· распознавания и классификации образов;

· сжатия данных;

· прогнозирования;

· идентификации;

· управления;

· ассоциации.

В каждом из указанных приложений нейронная сеть играет роль универсального аппроксиматора функции от нескольких переменных, реализуя нелинейную функцию

Y = f (х), (5.9)

где х − входной вектор,

Y − реализация векторной функции нескольких переменных.

Постановки значительного количества задач моделирования, идентификации и обработки сигналов могут быть сведены именно к аппроксимационному представлению.

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

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

х (k -1), х (k -2),..., x (k - N),

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

(5.10)

и значения этой погрешности в предшествующие моменты времени.

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

В задачах ассоциации нейронная сеть играет роль ассоциативного запоминающего устройства. Можно выделить ЗУ автоассоциативного типа, с помощью которых определяется корреляция между отдельными компонентами одного и того же входного вектора, и ЗУ гетероассоциативного типа, средствами которых устанавливается корреляция между двумя различными векторами. Если на вход сети подается неструктурированный вектор (например, содержащий искаженные шумом компоненты или вообще не содержащий отдельные компоненты), нейронная сеть сможет восстановить оригинальный и очищенный от шумов вектор и сгенерировать при этом полную версию ассоциированного с ним вектора.

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

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

Другое не менее важное свойство нейронной сети состоит в способности к обучению и к обобщению полученных знаний. Сеть обладает чертами так называемого искусственного интеллекта. Натренированная на ограниченном множестве обучающих выборок, она обобщает накопленную информацию и вырабатывает ожидаемую реакцию применительно к данным, не обрабатывавшимся в процессе обучения. Несмотря на значительное количество уже известных практических приложений искусственных нейронных сетей, возможности их дальнейшего использования для обработки сигналов не изучены окончательно, и можно высказать предположение, что нейронные сети еще в течение многих лет будут средством развития информационной техники [11].

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

Приведем названия некоторых из них, предназначенных для использования на персональных компьютерах в различных операционных средах:

· NeuroSolutions фирмы NeuroDimension Inc.;

· NeuralWorks Professional II Plus с модулем UDND фирмы NeuralWare Inc.;

· Process Advisor фирмы AlWare Inc.;

· NeuroShell 2 фирмы Ward Systems Group;

· BrainMaker Pro фирмы California Scientific Software.

Тестирование показывает, что все перечисленные пакеты имеют практически одинаковые результаты, а их отличия связаны в основном с возможностями использования различных нейронных структур, критериев оптимизации и алгоритмов обучения сетей, а также с простотой использования и наглядностью представляемой информации [6].




Поделиться с друзьями:


Дата добавления: 2014-12-29; Просмотров: 6500; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.007 сек.