Секция 4 - Нейросетевые технологии (1250001), страница 14
Текст из файла (страница 14)
В, Соколенко Е. А., Приоров А. Л.Ярославский государственный университет им. П. Г. Демидова, Ярославль,e-mail:dcslab@uniyar.ac.ru1. Постановка задачиВосстановление изображений и, в более общем смысле, восстановление сигналов относится к классу наиболее фундаментальных задач в современной науке.
В общем случае модель искажения/восстановления изображения можно представить следующим образом [1] (рис. 1).Рис. 1. Модель процесса искажения/восстановления изображений:f ( x, y ) — входное изображение; g ( x, y ) — искаженное изображение; f1 ( x, y ) —оценка входного изображения; H — функция искажения; η( x, y ) — аддитивный шум.Задача восстановления состоит в получении оценочного изображения f1 ( x, y ) по искаженному изображению g ( x, y ) и имеющейся информации о H и η( x, y ) . Если предположить, что H — линейный, инвариантный ксдвигу процесс, то в пространственной области искаженное изображениепредставляется следующим образом:g ( x, y ) = h( x, y ) ∗ f ( x, y ) + η( x, y ) ,(1)где h( x, y ) — пространственное представление искажающей функции;∗ — обозначение свертки.В частотной области, выражение (1) может быть записано следующим образом:G (u , v) = H (u , v) ⋅ F (u , v) + N (u , v) .Здесь заглавными буквами обозначены Фурье-трансформанты соответствующих функций выражения (1).Так как, обычно мало что известно об искомом и искажающем сигналах, деконволюция двух сигналов в общем случае является сложной за1309Труды II научной конференции «Проектирование инженерных и научных приложений в среде MATLAB»дачей.
Однако в частном случае, когда об искажающем сигнале известно,что фаза его Фурье-образа равна нулю, спектральная фаза искомого сигнала является неискаженной. Такая ситуация встречается, по крайней мереприблизительно, при длительном экспонировании через турбулентную атмосферу или в случае, когда изображения размыты из-за сильной дефокусировки линзы с круглыми диафрагмами.Рассмотрим задачу восстановления сигнала по фазе его ДПФ как задачу аппроксимации, когда на входное воздействие (фаза ДПФ) требуетсяполучить отклик (временной или пространственный сигнал) [8]. С этойточки зрения, учитывая, что нейронные сети очень эффективны при решении задач оценки, интерполяции, и позволяют аппроксимировать функциибез использования их аналитического или близкого математического вида,можно ожидать, что с их помощью удастся решить задачу восстановленияамплитуды [2].Задача восстановления амплитуды относится к классу задач глобальной аппроксимации, и одной из лучших нейросетевых структур для решения подобных задач является многослойный персептрон (МСП) [3].
В данном случае использовался полносвязный МСП прямого распространения,имеющий входной, выходной и один скрытый слой. Для каждого нейронав качестве нелинейной функции активации используется сигмоиднаяфункция.2. Методы обучения нейронной сетиОдин из шагов построения нейросетевой модели представляет собойпроцесс, называемый обучением. Цель обучения состоит в выборе такоговектора весов w, чтобы минимизировать ошибку между фактическими реакциями нейрона yi и ожидаемыми значениями zi .
Поэтому для обучениянейронной сети используется информация о текущем и ожидаемом значении выходного сигнала. Минимизация различий между фактическими реакциями нейрона yi и ожидаемыми значениями zi может быть представлена как минимизация конкретной функции погрешности (целевой функции) E(w), чаще всего определяемой какpE ( w) = ∑ ( yi( k ) ( w) − zi( k ) ) 2 ,k =1где p — количество предъявляемых обучающих выборок.Целевая функция E(w) в общем случае является нелинейной функцией. По причине ее сложности часто используют итерационные алгоритмыдля эффективного поиска решения в пространстве состояний. При этом алгоритм стартует от исходного значения w, которое потом корректируется.Последующая итерация w, обозначенная как wn , определяется, как очередной шаг от текущей точки wc в направлении вектора d,1310Секция 4.
Нейро-сетевые технологииwn = wc + ηd ,где положительное число η является величиной шага, показывающего, скакой скоростью мы движемся в направлении d. Каждый алгоритм обучения имеет свою схему корректировки весов нейронной сети. Рассмотримнекоторые из них.2.1. Алгоритм обратного распространенияОдним из наиболее популярных алгоритмов обучения нейронных сетей является алгоритм обратного распространения (АОР), предложенныйРумелхартом, Хинтоном и Виллиамсом (Rumelhart, Hinton, Williams) в1986 г. АОР представляет собой алгоритм на основе пошагового принципаминимизации, когда веса нейронной сети корректируются в соответствии снаправлением антиградиента в пространстве весов.
Соответствующиеформулы имеют вид:∂E ( w)∆wc = wn − wc = − η,(2)∂w w= wcгде η является параметром скорости обучения (величиной шага). Формула(2) описывает групповое обучение, когда веса корректируются послепредъявления на вход сети всех обучающих выборок.Классический АОР, основанный на пошаговой минимизации, имееттакие существенные недостатки, как медленная сходимость и возможныеосцилляции весов.Важный путь повышения эффективности работы алгоритма обратного распространения заключается в использовании различных методовадаптации, делающих параметры обучения динамически настраиваемымив процессе обучения.2.2.
Обучающие алгоритмы, использующие градиентныеметоды оптимизацииПоскольку процесс обучения нейронной сети можно рассматривать,как задачу оптимизации некоторой функции, то для ее решения можно использовать методы оптимизации более высокого порядка, использующиеинформацию о градиенте. Главная цель при этом — повышение скоростисходимости. В сравнении с эвристическими методами на основе алгоритмаобратного распространения, эти методы хорошо теоретически обоснованыи обладают гарантированной сходимостью для большинства гладкихфункций.Пусть, как и раньше d — вектор направления корректировки, η —коэффициент скорости обучения, wc — текущее значение w.
Тогда процесс обучения корректирует веса в соответствии с выражением1311Труды II научной конференции «Проектирование инженерных и научных приложений в среде MATLAB»E ( wn ) = E ( wc + ηd ) < E ( wc ) .Принципиальное отличие между разными алгоритмами минимизации заключается в процедуре определения наилучшего направления d. Если направление выбрано, то оптимальная величина шага может быть выбрана при помощи поискаη∗ = min ϕ(η) ,η> 0где ϕ(η) = E ( wc + ηd ) .Если направление минимизации d определяется на основе градиентаg целевой функции E, то такие методы оптимизации называются градиентными методами оптимизации.2.2.1.
Метод сопряженных градиентовМетод сопряженных градиентов основан на квадратичной минимизации. При начальном значении градиента g i = ∂E ∂w w= w , векторе направiления d i = − g i метод сопряженных градиентов можно описать в виде двухрекурсивных выраженийg n = g c + λ c Hd c ,(3)dn = −gn + γ cdc ,гдеgT gλ c = Tc c ,(4)d c Hd cg nT g nγc = T ,(5)gc gcили( g n − g c )T g n.(6)γc =g cT g cПри этом d называется сопряженным направлением, а H — матрицейГессе целевой функции E.
Выражение (5) называется формулой ФлетчераРивса (Fletcher-Reeves), а выражение (6) — формулой Полака-Рибейры(Polak-Ribiere). Чтобы избежать необходимости знать матрицу Гессе длявычисления сопряженного направления осуществляют движение от wcвдоль направлении d c до локального минимума E в точке wn , а дальшеполагают g n = ∂E ∂w w= w .
Значение g n можно использовать в качествеnвектора (3) а выражение (4) больше не нужно. Таким образом, метод сопряженных градиентов весьма эффективен, особенно при обучении больших сетей.1312Секция 4. Нейро-сетевые технологииПри рассмотрении метода сопряженных градиентов применительнок обучению нейронных сетей можно сделать два важных вывода [7]. Довольно высока доля вычислений при одномерной оптимизации, посколькукаждое вычисление значения целевой функции приводит к вычислениюотклика всей сети. Поэтому необходимо использовать эффективные алгоритмы одномерной оптимизации.
Во-вторых, поскольку мы имеем дело снейронными сетями, то функция ошибки не является квадратичной и, какследствие, сходимость зависит от степени соответствия функции ошибкиее квадратичной аппроксимации.2.2.2. Квазинютоновые алгоритмы обученияКак и метод сопряженных градиентов, квазиньютоновые алгоритмыбыли получены в предположении квадратичной целевой функции. Длясмещения направления градиента по методу Ньютона используется инвертированная матрица Гессе B = H −1 .
При этом веса корректируются в соответствии с выражением:wn = wc − ηBc g c .При этом матрица B вычисляется не «с нуля», а на основе матрицына предыдущем шаге:Bnow = Bold + ∆Bnow .Существуют две основных формулы для вычисления ∆Bnow :∆Bnow =Bold ∆g∆g T Bolddd T−.d T ∆g∆g T Bold ∆g(7)или∆Bnow ∆g T Bold ∆g dd Td∆g T Bold + Bold ∆gd T T−= 1 +.TTdgd∆gd∆g∆(8)гдеd = wnow − wold , ∆g = g now − g old .Выражение (7) называется формулой Дэвидона-Флетчера-Пауэла(Davidon-Fletcher-Powell), а выражение (8) — формулой БройденаФлетчера-Голдфарба-Шанно (Broyden-Fletcher-Goldfarb-Shanno).Стандартные квазиньютоновые методы требуют хранения N w2 переменных для выполнения аппроксимации обратной матрицы Гессе, кромеэтого нужно выполнять одномерный поиск для вычисления требуемойдлины шага.