кр. Ю. Ю. Громов, О. Г. Иванова, В. В. Алексеев, М. П. Беляев, Д. П. Швец, аи. Елисеев интеллектуальные информационные системы и технологии
Скачать 2.03 Mb.
|
40 Рис. 2.4. Схема рекуррентной нейронной сети Модель Хопфилда. Работы американского биофизика Дж. Хоп- филда положили начало современному математическому моделированию нейронных вычислений [11]. Ему удалось привлечь к анализу нейросетевых моделей мощный математический аппарат статистической физики. В результате была сформулирована математическая модель ассоциативной памяти на нейронной сети с использованием правила Д. Хебба для модификации весовых коэффициентов. Это правило основано на простом предположении если два нейрона возбуждаются вместе, то сила связи между ними возрастает если они возбуждаются порознь, то сила связи между ними уменьшается. Сеть Хопфилда строится с учётом следующих условий все элементы связаны со всеми − w ji = w ij – прямые и обратные связи симметричны − w ii = 0 – диагональные элементы матрицы связей равны нулю, те. исключаются обратные связи с выхода на вход одного нейрона. Для однослойной нейронной сети со связями типа все ко всем характерна сходимость к одной из конечного множества равновесных точек, которые являются локальными минимумами функции энергии, отражающей структуру всех связей в сети. Введённая Хопфилдом функция вычислительной энергии нейронной сети описывает поведение сети через стремление к минимуму энергии, который соответствует заданному набору образов. В связи с этим сети Хопфилда могут выполнять функции ассоциативной памяти, обеспечивая сходимость к Выходной вектор Выходной слой Скрытый слой Входной слой Слой рекуррентных нейронов Вектор входных сигналов 41 тому образу, в область притяжения которого попадает начальный пат- терн (образец) активности нейронов сети. Этот подход привлекателен тем, что нейронная сеть для конкретной задачи может быть запрограммирована без обучающих итераций. Веса связей вычисляются на основе вида функции энергии, сконструированной для решаемой задачи. Развитием модели Хопфилда является машина Больцмана, предложенная и исследованная Дж. Е. Хинтоном и Р. Земелом [5, 7, 12] для решения комбинаторных оптимизационных задачи задач искусственного интеллекта. В ней, как ив других моделях, нейрон имеет состояния, межнейронные связи представлены весовыми коэффициентами, а каждое состояние сети характеризуется определённым значением функции консенсуса (аналог функции энергии. Максимум функции консенсуса соответствует оптимальному решению задачи. Сети Хопфилда получили применение на практике в основном как реализации подсистем более сложных систем. Они имеют опреде- лённые недостатки, ограничивающие возможности их применения предположение о симметрии связей между элементами, без которой нельзя ввести понятие энергии нейронная сеть – это устройство для запоминания и обработки информации, а неустройство минимизации энергии. Экономия энергии играет в этих процессах вспомогательную роль сети Хопфилда поддерживают множество лишних, неэффективных, иногда дублирующих друг друга связей. В реальных нервных системах такие связи не поддерживаются, так каких реализация требует определённых затрат. В биологических нервных системах происходит освобождение от лишних связей за счёт их структуризации. При этом вместо организации связей всех ко всем используется многослойная иерархическая система связей. Самоорганизующиеся сети Т. Кохонена [15]. Идея сетей с самоорганизацией на основе конкуренции между нейронами базируется на применении специальных алгоритмов самообучения ИНС. Сети Кохо- нена обычно содержат один (выходной) слой обрабатывающих элементов с пороговой передаточной функцией. Число нейронов в выходном слое соответствует количеству распознаваемых классов. Настройка параметров межнейронных соединений проводится автоматически на основе меры близости вектора весовых коэффициентов настраиваемых связей к вектору входных сигналов в эвклидовом пространстве. В конкурентной борьбе побеждает нейрон, имеющий значения весов, наиболее близкие к нормализованному вектору входных сигналов. Кроме того, в самоорганизующихся сетях возможна классификация 42 входных образцов (паттернов). На практике идея Кохонена обычно используется в комбинации с другими нейросетевыми парадигмами. 2.3. Построение нейронной сети При построении модели ИНС прежде всего необходимо точно определить задачи, которые будут решаться се помощью. В настоящее время нейросетевые технологии успешно применяются для прогнозирования, распознавания и обобщения. Первым этапом построения нейросетевой модели является тщательный отбор входных данных, влияющих на ожидаемый результат. Из исходной информации необходимо исключить все сведения, не относящиеся к исследуемой проблеме. В тоже время следует располагать достаточным количеством примеров для обучения ИНС. Существует эмпирическое правило, которое устанавливает рекомендуемое соотношение между количеством обучающих примеров, содержащих входные данные и правильные ответы, и числом соединений в нейронной сети X < 10. Для факторов, которые включаются в обучающую выборку, целесообразно предварительно оценить их значимость, проведя корреляционный и регрессионный анализ, и проанализировать диапазоны их возможных изменений. На втором этапе осуществляется преобразование исходных данных с учётом характера и типа проблемы, отображаемой нейросетевой моделью, и выбираются способы представления информации. Эффективность нейросетевой модели повышается, если диапазоны изменения входных и выходных величин приведены к некоторому стандарту, например [0,1] или [–1,1]. Третий этап заключается в конструировании ИНС, те. в проектировании её архитектуры (число слови число нейронов в каждом слое. Структура ИНС формируется до начала обучения, поэтому успешное решение этой проблемы во многом определяется опытом и искусством аналитика, проводящего исследования. Четвёртый этап связан с обучением сети, которое может проводиться на основе конструктивного или деструктивного подхода. В соответствии с первым подходом обучение ИНС начинается на сети небольшого размера, который постепенно увеличивается до достижения требуемой точности по результатам тестирования. Деструктивный подход базируется на принципе прореживания дерева, в соответствии с которым из сети с заведомо избыточным объёмом постепенно удаляют лишние нейроны и примыкающие к ним связи. Этот подход даёт возможность исследовать влияние удалённых связей на точность 43 сети. Процесс обучения нейронной сети представляет собой уточнение значений весовых коэффициентов и для отдельных узлов на основе постепенного увеличения объёма входной и выходной информации. Началу обучения должна предшествовать процедура выбора функции активации нейронов, учитывающая характер решаемой задачи. В частности, в трёхслойных перцептронах на нейронах скрытого слоя применяется в большинстве случаев логистическая функция, а тип передаточной функции нейронов выходного слоя определяется на основе анализа результатов вычислительных экспериментов на сети. Индикатором обучаемости ИНС может служить гистограмма значений меж- нейронных связей [13]. На пятом этапе проводится тестирование полученной модели ИНС на независимой выборке примеров. 2.4. Обучение нейронной сети Важнейшим свойством нейронных сетей является их способность к обучению, что делает нейросетевые модели незаменимыми при решении задач, для которых алгоритмизация является невозможной проблематичной или слишком трудоёмкой. Обучение нейронной сети заключается в изменении внутренних параметров модели таким образом, чтобы на выходе ИНС генерировался вектор значений, совпадающий с результатами примеров обучающей выборки. Изменение параметров нейросете- вой модели может выполняться разными способами в соответствии с различными алгоритмами обучения. Парадигма обучения определяется доступностью необходимой информации. Выделяют три парадигмы обучение с учителем (контролируемое обучение без учителя (неконтролируемое смешанное обучение. При обучении с учителем все примеры обучающей выборки содержат правильные ответы (выходы, соответствующие исходным данным (входам. В процессе контролируемого обучения синаптиче- ские веса настраиваются так, чтобы сеть порождала ответы, наиболее близкие к правильным. Обучение без учителя используется, когда не для всех примеров обучающей выборки известны правильные ответы. В этом случае предпринимаются попытки определения внутренней структуры поступающих в сеть данных с целью распределить образцы по категориям модели Кохонена). При смешанном обучении часть весов определяется посредством обучения с учителем, а другая часть получается с помощью алгоритмов самообучения. 44 Обучение по примерам характеризуется тремя основными свойствами ёмкостью, сложностью образцов и вычислительной сложностью. Ёмкость соответствует количеству образцов, которые может запомнить сеть. Сложность образцов определяет способности нейронной сети к обучению. В частности, при обучении ИНС могут возникать состояния «перетренировки», в которых сеть хорошо функционирует на примерах обучающей выборки, ноне справляется с новыми примерами, утрачивая способность обучаться. Рассмотрим известные правила обучения ИНС. Правило коррекции по ошибке. Процесс обучения ИНС состоит в коррекции исходных значений весовых коэффициентов межнейрон- ных связей, которые обычно задаются случайным образом. При вводе входных данных запоминаемого примера (стимула) появляется реакция, которая передаётся от одного слоя нейронов к другому, достигая последнего слоя, где вычисляется результат. Разность между известным значением результата и реакцией сети соответствует величине ошибки, которая может использоваться для корректировки весов меж- нейронных связей. Корректировка заключается в небольшом (обычно менее 1%) увеличении синаптического веса тех связей, которые усиливают правильные реакции, и уменьшении тех, которые способствуют ошибочным. Это простейшее правило контролируемого обучения (дельта-правило) используется в однослойных сетях с одним уровнем настраиваемых связей между множеством входов и множеством выходов. При этом на каждом м шаге для го нейрона вес й связи вычисляется по формуле ( ) jik k ji jik w w w ∆ + = − 1 , где jik jk jik x w ηδ = ∆ , jk jk jk R T − = δ , jk T – известное (правильное) значение выхода го нейрона jk R – рассчитанное значение выхода го нейрона jik x – величина сигнала нам входе η – коэффициент скорости обучения. Оптимальные значения весов межнейронных соединений можно определить путём минимизации среднеквадратичной ошибки с использованием детерминированных или псевдослучайных алгоритмов поиска экстремума в пространстве весовых коэффициентов. При этом возникает традиционная проблема оптимизации, связанная с попаданием в локальный минимум. Правило Хебба [7]. Оно базируется наследующем нейрофизиологическом наблюдении если нейроны по обе стороны синапса активизируются одновременно и регулярно, то сила их синаптической связи возрастает. При этом изменение веса каждой межнейронной связи зависит только от активности нейронов, образующих синапс. Это существенно упрощает реализацию алгоритмов обучения. 45 Обучение методом соревнования. В отличие отправила Хебба, где множество выходных нейронов может возбуждаться одновременно, в данном случае выходные нейроны соревнуются (конкурируют) между собой за активизацию. В процессе соревновательного обучения осуществляется модификация весов связей выигравшего нейрона и нейронов, расположенных в его окрестности (победитель забирает всё»). Метод обратного распространения ошибки. Он является обобщением процедуры обучения простого перцептрона с использованием дельта-правила на многослойные сети [2, 6, 10]. В данном методе необходимо располагать обучающей выборкой, содержащей правильные ответы, те. выборка должна включать множество пар образцов входных и выходных данных, между которыми нужно установить соответствие. Перед началом обучения межнейронным связям присваиваются небольшие случайные значения. Каждый шаг обучающей процедуры состоит из двух фаз. Вовремя первой фазы входные элементы сети устанавливаются в заданное состояние. Входные сигналы распространяются посети, порождая некоторый выходной вектор. Для работы алгоритма требуется, чтобы характеристика вход–выход нейропо- добных элементов была неубывающей и имела ограниченную производную. Обычно для этого используют сигмоидальные функции. Полученный выходной вектор сравнивается с требуемым (правильным. Если они совпадают, то весовые коэффициенты связей не изменяются. В противном случае вычисляется разница между фактическими и требуемыми выходными значениями, которая передаётся последовательно от выходного слоя к входному. На основе этой информации проводится модификация связей в соответствии с обобщённым дельта- правилом, которое имеет вид ip jp ji p y w ηδ = ∆ , где изменение в силе связи w ji для р-й обучающей пары ji p w ∆ пропорционально произведению сигнала ошибки го нейрона jp δ , получающего входной сигнал по этой связи, и выходного сигнала го нейрона y ip , посылающего сигнал по этой связи. Определение сигнала ошибки является рекурсивным процессом, который начинается с выходных блоков. Для выходного блока сигнал ошибки ( ) jp jp j jp R T y − ′ = δ , где T jp и R jp – соответственно желаемое и действительное значения выходного сигнала го блока j y ′ – производная от выходного сигнала го блока. Сигнал ошибки для скрытого блока определяется рекурсивно через сигнал ошибки блоков, с которым соединён его выходи веса этих связей равны. Для сигмоидальной функции ( ) j j j y y y − = ′ 1 , поэтому на интервале 0 < y j < 1 производная имеет максимальное значение в точке у = 0,5, а в точках у = 0 и у = 1 обращается в ноль. Максимальные изменения весов соответствуют блокам (нейронам, которые ещё не выбрали своё состояние. Кроме того, при конечных значениях весовых коэффициентов выходные сигналы блоков не могут достигать значений 0 или 1. Поэтому за 0 обычно принимают значения y j < 0,1, аза значения y j > 0,9. Модификация весов производится после предъявления каждой пары вход–выход. Однако если коэффициент η , определяющий скорость обучения, мал, то можно показать, что обобщённое дельта- правило достаточно хорошо аппроксимирует минимизацию общей ошибки функционирования сети D методом градиентного спуска в пространстве весов. Общая ошибка функционирования сети определяется по формуле ∑∑ − = p j jp jp R T D 2 ) ( 2 Обучение продолжается до тех пор, пока ошибка не уменьшится до заданной величины. Эмпирические результаты свидетельствуют о том, что при малых значениях η система находит достаточно хороший минимум D. Один из основных недостатков алгоритма обратного распространения ошибки заключается в том, что во многих случаях для сходимости может потребоваться многократное (сотни раз) предъявление всей обучающей выборки. Повышения скорости обучения можно добиться, например, используя информацию о второй производной или путём увеличения Алгоритм обратного распространения ошибки используется также для обучения сетей с обратными связями. При этом используется эквивалентность многослойной сети с прямыми связями и синхронной сети с обратными связями на ограниченном интервале времени (слой соответствует такту времени. В настоящее время предложены алгоритмы обучения, более привлекательные в смысле биологической аналогии. Примером является алгоритм рециркуляции для сетей, в которых скрытые блоки соединены с входными. При обучении веса связей перестраиваются таким образом, чтобы минимизировать частоту смены активности каждого блока. Таким образом, обученная сеть имеет стабильные состояния и может функционировать в режиме ассоциативной памяти. 47 2.5. Способы реализации нейронных сетей Нейронные сети могут быть реализованы программным или аппаратным способом. Вариантами аппаратной реализации являются нейрокомпьютеры, нейроплаты и нейроБИС (большие интегральные схемы. Одна из самых простых и дешёвых нейроБИС – модель MD 1220 фирмы Micro Devices, которая реализует сеть с 8 нейронами и 120 синапсами. Среди перспективных разработок можно выделить модели фирмы Adaptive Solutions (США) и Hitachi (Япония. Разрабатываемая фирмой Adaptive Solutions нейроБИС является одной из самых быстродействующих объявленная скорость обработки составляет 1,2 млрд. меж- нейронных соединений в секунду (мнс/с). Схемы, производимые фирмой, позволяют реализовывать ИНС, содержащие до 576 нейронов. Большинство современных нейрокомпьютеров представляют собой персональный компьютер или рабочую станцию, в состав которых входит дополнительная нейроплата. К их числу относятся, например, компьютеры серии FMR фирмы Fujitsu. Возможностей таких систем вполне хватает для решения большого числа прикладных задач методами нейроматематики, а также для разработки новых алгоритмов. Наибольший интерес представляют специализированные нейроком- пьютеры, в которых реализованы принципы архитектуры нейросетей. Типичными представителями таких систем являются компьютеры семейства фирмы TRW (первая реализация перцептрона, разработанная Ф. Розенблатом, называлась Mark I). Модель Mark III фирмы TRW представляет собой рабочую станцию, содержащую до 15 процессоров семейства Motorola 68000 с математическими сопроцессорами. Все процессоры объединены шиной VME. Архитектура системы, поддерживающая до 65 000 виртуальных процессорных элементов с более чем 1 млн. настраиваемых соединений, позволяет обрабатывать до 450 тыс. мнс/с. Другим примером является нейрокомпьютер NETSIM, созданный фирмой Texas Instruments на базе разработок Кембриджского университета. Его топология представляет собой трёхмерную решётку стандартных вычислительных узлов на базе процессоров 80188. Компьютер используется для моделирования сетей Хопфилда– Кохонена. Его производительность достигает 450 млн. мнс/с. В тех случаях, когда разработка или внедрение аппаратных реализаций нейронных сетей обходятся слишком дорого, применяют более дешёвые программные реализации. Одним из самых распростра- нённых программных продуктов является семейство программ Brain |