Круглов В.В., Борисов В.В. - Искусственные нейронные сети (ИНС) Теория и практика (778918), страница 12
Текст из файла (страница 12)
Оптимизирующие нейронные сети 2.4.1. Нейронные сети Хопфилда Нейронная сеть Хопфилда реализует существенное свойство автоассоциативной памяти — восстановление по искаженному (зашумленному) образу ближайшего к нему эталонного В этом случае входной вектор используется как начальное состояние сети, и далее сеть эволюционирует согласно своей динамике Причем любой пример, находящийся в области притяжения хранимого образца, может быть использован как указатель для его восстановления Выходной (восстановленный) образец устанавливается, когда сеть достигает равновесия Структура сети Хопфилда приведена на рис 2 8 Она состоит из одного слоя нейронов, число которых определяет число входов и выходов сети Выход каждого нейрона соединен с входами всех остальных нейронов Подача входных векторов осуществляется через отдельные входы нейронов Сети Хопфилда отличаются от ранее рассмотренных типов нейронных сетей следующими существенными признаками ° наличие обратных связей, идущих с выходов сетей на их входы по принципу «со всех на все», ° расчет весовых коэффициентов нейронов проводится на основе исходной информации лишь перед началом функционирования сети, и все обучение сети сводится именно к этому расчету без обучающих итераций, ° при предъявлении входного вектора, сеть «сходится» к одному из запомненных в сети эталонов, представляющих множество равновесных точек, которые являются локальными минимумами функции энергии, содержащей в себе всю структуру взаимосвязей в сети Проблема устойчивости сети Хопфилда была решена после того, как Кохеном и Гроссбергом была доказана теорема, определяющая достаточное условие устойчивости сетей с обратными связями, а именно, сеть с обратными связями является устойчи- 63 У, х, У2 Уп х и Рис.
2.8 Структура нейронной сети Хопфилда вой, если матрица ее весов симметрична (игт и и„) и имеет нули на главной диагонали (иг, = О). Динамическое изменение состояний сети может быть выполнено, по крайней мере, двумя способами: синхронно и асинхронно. В первом случае все элементы модифицируются одновременно на каждом временном шаге, во втором — в каждый момент времени выбирается и подвергается обработке один элемент.
Этот элемент может выбираться случайно. Рассмотрим синхронную бинарную сеть Хопфилда, представляющую собой пример сети с дискретными сосптояннямн и дискретным временем, и сформулируем решаемую ею задачу следующим образом. В качестве нейронов сети рассмотрим нейроны с пороговой функцией активации, выходы которых принимают значение либо «О», либо <1» при превышении взвешенной суммой значений вхо.
дов некоторого порогового уровня Предварительно в сети матрицей весовых коэффициентов задан набор эталонов. Каждый эталон при этом является точкой и; конечного множества равновесных точек, характеризующих мини мум энергии сети (функции Ляпунова): 64 и»» и Е = - — Х Хигуу!у, — Хх,у, + Ед! у,, 2.,=! " '! 3=! /! /=1' где Š— искусственная энергия сети; иг! — вес от выхода Аго ко вхо- ду гьго нейрона; х,; у; — вход и выход г'-го нейрона; я, — порог ~-го нейрона. Главное свойство энергетической функции состоит в том, что в процессе эволюции состояний нейронной сети согласно уравне- нию она уменьшается и достигает локального минимума (атграк- тора), в котором сохраняет постоянную энергию.
Это позволяет решать задачи комбинаторной оптимизации, если они могут быть сформулированы как задачи минимизации энергии. Обозначим вектор, описывающий к-й эталон, через Х» = (х, ), 'и = 1...К, К- число эталонов. На вход сети подается произвольный вектор Х = (х,). В результате серии итераций сеть должна выделить эталон, соответствующий входному вектору, или дать заключение о том, что входные данные не соответствуют ни одному из эталонов.
После отдельной итерации общее изменение энергии сети, вызванное изменением состояний всех нейронов, составит: а ЛЕ = -Е ~Е(игу)+ х,-~, лу,, !=1 где ьу, — изменение выхода)'-го нейрона после итерации. Анализ этого выражения показывает, что любое изменение состояния нейронов либо уменьшит значение Е, либо оставит его без изменения. Второй случай указывает на достижение сетью ус- тойчивого состояния и выделение ею эталона, наилучшим образом сочетающимся с входным вектором. При распознании входного вектора (частично представлен- ного или искаженного) выходы сети будут содержать соответст- вующий эталон, т. е.
У = Х», где У = (у) — выходной вектор. В про- тивном случае, выходной вектор не совпадет ни с одним эталоном. Для безошибочной работы сети Хопфилда число запоми- наемых эталонов И не должно превышать 0,15л. Кроме того, в случае высокой степени корреляции несколь- ких эталонов возможно возникновение перекрестных ассоциаций при их предъявлении на входах сети. Требование достаточного (но не необходимого) условия слабой коррелируемосги образов мож- но представить как выполнение следующего неравенства: К ~(х»,х!)) < л, ) =1...л, »ю или в виде более сильного условия: 65 ~(х«,х')~< —, я=1...л, йи/. И Нейронные сети Хопфилда с непрерывными состояниями отличается от вышерассмотренной сети непрерывной активационной функцией нейронов, в качестве которой наиболее часто выбирают сигмоидальную или логистическую функцию.
Концептуально вопросы организации и функционирования этих сетей схожи Недостатком классического варианта сетей Хопфилда является их тенденция к стабилизации в локальных, а не глобальных минимумах сети. Предложены сглагласгпическив сети Хопфилда в которых этот недостато~ преодолевается за счет задания статистических, а не детерминистских правил изменения состояний нейронов. для этого для каждого ьго нейрона вводится вероятность изменения его состояния р, как функция от величины, на которую выход нейрона з, превышает его порог О (для бинарной сети Хопфилда): где лЕ, = з, — ф ф — параметр, изменяемый в процессе стабилизации сети.
Тогда после начального задания весовых коэффициентов нейронов процедура поиска минимума энергии сети для установленного входного вектора выглядит следующим образом. ШАГ 1 Задать большое значение параметра ф. ШАГ 2 Установить на выходе сго нейрона значение «1» с вероятностью р, и значение «0» с вероятностью 1 — г). ШАГ 3. Постепенно уменьшать значение параметра ф, пока не будет достигнуто равновесие. 2.4.2. Нейронные сети Хэмминга В случае, если необходимо определить номер эталона, ближайший к предъявленному входному вектору, может быть использована сеть Хэмминга.
Преимуществами этой сети по сравнению с сетью Хопфилда являются меньшие затраты на память и объем вычислений. Нейронная сеть Хэмминга (рис. 2.9) состоит из входного, скрытого и выходного слоев нейронов. Скрытый и выходной слои содержат по К нейронов, где К вЂ” число эталонов. Нейроны скрыто- ее выходной слой Входной слой Скрытый спой х, хо Ух х„ Рис 2 9.
Структура нейронной сети Хэмминга го слоя и синапсами соединены с выходами нейронов входного слоя сети Выходы нейронов выходного слоя связаны со входами остальных нейронов этого слоя отрицательными обратными (ингибиторными) связями. Единственная положительная обратная связь подается с выхода для каждого нейрона выходного слоя на его же вход. Сеть выбирает эталон с минимальным хэмминговым расстоянием от предъявленного входного вектора путем активизации только одного выхода сети (нейрона выходного слоя), соответствующего этому эталону. Хэммингово расстояние представляет собой пример меры сходства или, вернее, различия, первоначально введенной для бинарных функций в диадном пространстве.
Она применима для сравнения любых упорядоченных наборов, принимающих дискретные значения и, вероятно, является наилучшей из известных мер сходства между цифровыми кодами, Для бинарных последовательностей х = (хь ..., х„) и х' = (х',, ..., х',) хэммингово расстояние можно определить; р(х, к') = Ьс((х, хх х',)хх (х, л х',) ~ ! = 1 ... л) .
Здесь функция Ьс(«) определяется как число элементов набора («), принимающих значение логической «1». На этапе настройки сети Хзмминга устанавливаются следующие значения весов нейронов скрытого слоя и порога их активационной функции: к," и „= — ', г«,= л/2, 2 ' где х," — Ай компонент /г-го эталона; / = 1...л, /г = 1.. К.
Коэффициенты отрицательных обратных связей нейронов выходного слоя задают равными некоторой величине из интервала О < к < 1/К, а коэффициенты положительной обратной связи — +1 . Рассмотрим алгоритм функционирования сети Хэмминга. ШАГ 1. На нейроны входного слоя подается вектор Х = (х). / = 1...л. На их выходах формируются следующие значения (верх- ний индекс указывает номер слоя): у/«П = з„"~ = Еи!их, !- гэ,, К = 1...К. !=! В соответствии с этим устанавливаются значения на выхо- дах нейронов выходного слоя; упз =уьз //=1 К ШАГ 2.
В результате новой (/+1)-й итерации определяются новые состояния нейронов выходного слоя; з<з/(/+1) у<в(/)-к~ урз(/), //=1.../(, /=! /М у„з/(/+1) = /(з (/+1)1 /г =1... К. Активационная функция / имеет вид порога (рис. 1.3, б), при- чем величина «ступеньки» должна быть достаточно большой, что- бы возможные значения з/„'/ не приводили к насыщению. ШАГ 3. Проверка изменения состояний нейронов выходного слоя за последнюю итерацию.
И переход к шагу 2 в случае, если наблюдались изменения. Иначе — окончание процедуры. Роль нейронов входного слоя весьма условна: воспользо- вавшись один раз на шаге 1 значениями его весовых коэффициен- тов, сеть больше не обращается к нему, поэтому этот слой может быть вообще исключен из сети (заменен на матрицу весовых ко- эффициентов). В заключении можно сделать следующее обобщение. Сети Хопфилда и Хэмминга позволяют просто и эффективно решить 68 задачу автоассоциативной памяти: воссоздания образов по неполной и искаженной информации.