Бодянский В.Е., Руденко Г.О. - ИНС архитектура обучение применение (778912), страница 16
Текст из файла (страница 16)
Также можно отметить алгоритм с возвратом при неудачном шаге, смысл которого заключается в следующем. В пространстве настраиваемых параметров из исходного состояния и,.(Ус) делается шаг в случайном направлении ДУс). Если значение целевой функции в новом состоянии ЕУ(Ус+1) больше или равно значению функции в исходной точке Е,(Ус), т.е. случайная проба оказалась неудачной, то алгоритм возвращается в первоначальное состояние и у(Й), после чего снова делается шаг в новом случайном направлении. Если же целевая функция уменьшилась, то шаг считается рабочим и последующий случайный шаг делается уже из нового состояния и У(Ус +1) .
Этот алгоритм можно записать в виде т УДУс), если Е, (1с + 1) < Е, Я), ит(1+1) = тст(й)+ О, если Е,УУс+1) > Е,(Ус). (4.254) У ~ ~ г ~ ~ 7 ~ ~ | | ~ ? ~ | | | ~ ~ ~ ~ ~ >~ ~ | ~ ~ 7 тУГ УУс), если Е,. (Ус + 1) < Е,. Я), и,.(Ус+1) = и,.(Ус)+ ' (4.255) — тУ~ДУс — 1)+тУ~(й), если Е,(Ус+1) > Е,Я), где Е,,(Ус) = ш1п 1Е,Ур)у (4.25б) — наименьшее значение целевой функции за Ус предыдущих шагов поиска. Этот алгоритм обладает повышенным быстродействием, но низким уровнем помехозащищенности. Наконец следует отметить алгоритм наилучшей пробы.
Этот алгоритм случайного поиска опирается на многократную случайную выборку. Из исходной точки тс,(Ус) делается Д случайных проб ту,~'1й),ту~~'(Ус),...,ту,~и(Ус) в пространстве весов и запоминается тот шаг, который привел к наибольшему снижению целевой функции. Рабочий шаг делается именно в этом направлении ь,(Ус+1) = ьт(Ус)+тУЬ *УУс'), 14,257) 102 Алгоритм с пересчетом при неудачном шаге является модификацией предыдущего. В этой процедуре возвратный шаг при неудачной пробе не производится, за счет чего алгоритм имеет повышенное быстродействие. Алгоритм после неудачного шага снова делает случайную пробу, отсчитанную из предыдущего состояния, т.е. возврат как бы пересчитывается вместе с последующим случайным шагом. Рекуррентная формула для смещения в пространстве настраиваемых параметров по этому алгоритму имеет вид 4 ОБУЧЕНИЕ НЕЙРОННЫХ СЕТЕЙ где ~ *(й) — направление наилучшей пробы, которая удовлетворяет следующему выражению: Е,.(и,Я)+~)~~ Я))= ппп ~Е,.(и,.Я)+~)~Г'Я)Д (4.258) (4.259) положительный эффект где затраты определяются числом проб на один цикл поиска, а эффект измеряется величиной смещения к точке оптимума.
На рис 4.13 показана граница изменения потерь на поиск между алгоритмами случайного поиска и регулярными градиентными. Потери на случайный поиск имеют параболический характер, т.е. изменяются пропорционально ~/л. Таким образом, случайный поиск имеет преимущество перед градиентным по быстродействию при значительном количестве настраиваемых параметров п, причем это преимущество тем более, чем больше п. На рис. 4.13 р — это расстояние до экстремума целевой функции, измеренное в рабочих шагах поиска ц . Заштрихована область, где быстродействие случайного поиска превышает быстродействие градиентного по критерию потерь на поиск (4.259).
Рис.4.13 — Потери на поиск 103 Очевидно, что с увеличением числа проб выбранное направление все более приближается к наилучшему, т,е. антиградиентному, и в пределе при Д вЂ” ~ совпадает с ним. Перечень возможных алгоритмов можно было бы продолжить, однако гораздо более важным представляется их сравнительная оценка по какому-либо достаточно универсальному критерию. В качестве такого критерия естественно принять конструкцию, именуемую потерями на поиск 11051: Таким образом, случайный поиск более эффективен при оптимизации объектов с большим числом варьируемых параметров (а ИНС именно такими объектами и являются) вдали от экстремума. В ситуациях малой размерности (и < 3) и в окрестности экстремума ( р < 4) целесообразнее использовать градиентные методы. Свойства случайного поиска можно существенно улучшить, обеспечив конкретным алгоритмам способность к самообучению и самосовершенствованию в процессе работы.
Таким образом, возникает самообучение алгоритмов обучения. Это приводит к тому, что в каждом новом состоянии система обучения либо начинает поиск сначала, т.е. полностью игнорирует предыдущий опыт, как, например, при локальных методах поиска, либо «доверяет» предыдущему результату и пробует продвинуться к оптимуму по направлению, которое в предыдущем состоянии оказалось удачным (поиск с линейной тактикой). Оптимальное поведение является промежуточным между этими двумя крайностями: нужно запоминать предыдущее удачное направление, но доверять ему следует не полностью, а лишь с определенной вероятностью и изменять эту вероятность по мере приобретения нового опыта работы, т.е.
между двумя соседними состояниями должна существовать вероятностная взаимосвязь. Самообучение естественно вводится в алгоритмы случайного поиска в форме перестройки его вероятностных характеристик, т.е. в целенаправленном воздействии на вектор ~, который перестает быть равновероятным и приобретает некоторые преимущественные направления, например, в сторону предыдущего наилучшего шага.
Обучение алгоритма, как правило, начинается в обстановке равновероятного поиска. В процессе накопления опыта работы система обучения должна приобретать «представление» о решаемой задаче в виде некоторых вероятностных гипотез о наилучшем направлении движения в пространстве настраиваемых параметров. По мере накопления опыта дисперсность этих гипотез должна уменьшаться и в пределе система обучения должна «знать» вектор наилучшего направления. Таким образом, процесс самообучения стремится «задетерминировать» поиск в наилучшем направлении, т.е.
таким образом перестроить его вероятностные характеристики, чтобы процесс настройки ИНС стал неслучайным. С другой стороны, алгоритм самообучения должен обладать способностью переучиваться, если ситуация каким-либо образом изменилась. И, наконец, введение самообучения не должно исключать применение описанных выше алгоритмов случайного поиска в «чистом виде», т,е. оно должно затрагивать только вероятностные свойства выбора направления рабочего шага, но не менять структуру алгоритма. Это дает возможность комбинировать самообучение с различными алгоритмами, рассмотренными выше.
В качестве подходов к самообучению случайного поиска можно отметить следующие [205). 104 4 ОБУЧЕНИЕ НЕЙРОННЫХ СЕТЕЙ (4.260) Р,. (к) = Р(а,. (Ус)). В качестве наиболее распространенных функций Р(а,.) используются [1051: )~ экспоненциальная — е ', если а,. <О„ 1,«, 2 (4.261) Р(а,.) = 1 — — е ', еслиа,>0, 1 ~ линейная О, еслиа,< — 1, 1 Р(а,. ) = — (1 — а, ), если — 1 < а,. < 1, 2 (4.262) 1, если а, >1, гауссова "(%)=2(Н4К )) 1 (4.263) )~ синусная 105 Наиболее простым является самообучение методом исключения.
Этот подход опирается на следующее очевидное положение. Если число возможных направлений движения конечно, то исключение из рассмотрения неудачных направлений, увеличивающих критерий качества, повышает вероятность отыскания удачных направлений, двигаясь вдоль которых алгоритм обучения уменьшает значение целевой функции. Характерной чертой и недостатком этого подхода является необходимость большой памяти для хранения неудачных вариантов случайных смещений, которые исключаются из дальнейшего поиска.
Более эффективным является алгоритм покоординатного самообучения, во многом схожий с алгоритмом Гаусса-Зайделя. Данный алгоритм использует вероятность выбора направления движения вдоль !-й переменной и „. в форме функции от некоторой величины а,, называемой параметром памяти или просто «памятью» по ~'-й координате на А -м шаге поиска О, если й,. < — 1, 1 1 — + — агсв1па,, если — 1<а, <1„ 2 д. (4.264) Р(а,.) = 1, если а, >1 и другие. Видно, что при а,. = О, поиск имеет равновероятный характер, т.е. Р(0) =0.5. Интересно также то, что функции (4.261) — (4.264) являются по сути активационными сигмоидальными функциями стандартных нейронов.
Процедура самообучения реализуется путем соответствующего изменения параметра памяти, например, при помощи следующей рекуррентной формулы: й,. (Й + 1) = й,. (/с) + х1„.чЯ и (Ам~ л (Ус — 1) АЕ,. (Й вЂ” 1)). (4.265) Смысл выражения (4.265) заключается в следующем: если произведенный шаг настройки привел к увеличению целевой функции, т.е. был сделан в неблагоприятном направлении, то вероятность выбора этого направления при последующем шаге уменьшается.















