Хайкин С. - Нейронные сети (778923), страница 190
Текст из файла (страница 190)
° Эта теория сформулирована в терминах концепций пространства состояний и предлагает эффективное использование информации, содержащейся во входных данных. ° Оценка состояния выполняется рекурсивно. Это значит, что каждая скорректированная оценка состояния вычисляется на основе предыдущей оценки и доступных в текущий момент данных. Следовательно, сохранение требуется только для предыдущей оценки. В этом разделе представлен краткий обзор теории фильтров Калмана'0. Этим мы проложим путь для вывода в следующем разделе несвязного расширенного фильтра Калмана. Развитие этой теории, как обычно, началось с линейных динамических систем. Для того чтобы расширить ее использование на нелинейные динамические системы, к системе применяется одна из форм линеаризации.
Последний вопрос мы отложим до следующего раздела. Итак, рассмотрим линейную, дискретную динамическую систему, показанную на рис. 15.13. Временное описание представленной здесь системы сохраняет сходство с формализмом пространства состояний, представленным в разделе 15.3. В математических терминах на рис. 15.13 реализована следующая система уравнений: '" Теория фильтров Калмана берет снос начало в классической работе [535]. Эта теория заняла свое место как существенная чань управления и обработки сигнала и нашла применение в разнообразных областях деятельности человека. Подробное описание стандаргнопт фильтра Калмаиа, его вариантов и расширенных форм, рабшаюших с нелинейными динамическими системами, содержится в [385], [434].
Перила работа целиком посвящена теории и практике фильтрации Калмана, а во второй рассматривается теория фильтров Калмана с позиций адаптивной фильтрации. Среди других кинг, посвященных зтому вопросу, можно выделить [5! 31, [708], [709]. 16,9. Фильтр Калмаиа 957 «(л е !) г Ч и(л) С(л) в(л) Рис. 16.13. Граф передачи сигнала линейной дискретной динамической системы, используемой для описания фильтра Капмаиа к(л) и (п + 1) = )ч(п), б(п) = С(п)уг(п) + ч(п). (15.59) (15. 60) Величины, использованные в уравнении процесса (15.59) и уравнении измерения (15.60), можно описать следующим образом.
° тг(п) — вектор состояния (з(а(е нес(ог) системы. ° б(п) — вектор наблюдения (оЬзегна((оп нес(ог). ° С(п) — матрица измерений (шеазпгешел( ша(пх). ° н(п) — шум или погрешность измерений (шеаьпгешел( по(зе). В уравнении процесса (15.59) сделаны два упрощающих допущения. Во-первых, уравнение процесса не учитывает изуми.
Во-вторых, передаточная матрица, связывающая состояния системы в моменты времени п + 1 и п, равна единичной. На рис. 15.13 также использовалось новое понятие состояния (по причинам, которые станут понятны в следующем разделе). Задача фильтрации Калмана может быть сформулирована следующим образом. Используя все множество наблюдаемых данньос состоящее из набора векторов (д(()),"., нужно найти для каждого п > 1 оценку с минимальной среднеквадра- тической ошибкой состояния тг(().
Обратите внимание, что информация о векторе состояний недоступна. Эта задача называется задачей фильтрации (при 1 = п), прогнозирования (при 1 > п) или сглаживания (при 1 < ( < п). Решение этой задачи получается на основе следующих допущений. 1. Погрешность измерений ч(п) имеет нулевое среднее значение и является процессом белого шума с матрицей ковариации: Ег„( )„т(й)) ( ) 10, и ф )г. (15.61) Н««««««пе спето««ие кн(Л) ие нппп««ипп«я«п е н(и) ««««г«н и ) Л 968 Глава 15. Динамически управляемые рекуррентные сети Для изящного вывода фильтра Калмана можно использовать понятие инновации (534). Более точно, процесс инновации ((ппоча6ол ргосезз), связанный с вектором наблюдений д(п), определяется следующим образом: а(п) = й(п) -О(п[п-1), (15.62) где 6(п[п — 1) — оценка 6(п) с минимальной среднеквадратической ошибкой на основе всех лрошлых значений вектора наблюдений, начиная с момента времени и = 1 и заканчивая моментом п — 1.
Под "оценкой с минимальной среднеквадратической ошибкой" понимается та оценка, которая минимизирует среднеквадратическую ошибку д(п). Инновационный процесс а(п) можно рассматривать как меру новой информации, содержащейся в д(п), которая была недоступна в прогнозируемой части 6(п[п — 1).
Инновационный процесс имеет ряд следующих полезных свойств (534). 1. Инновационный процесс а(п), ассоциированный с д(п), не коррелировал со всеми предыдущими наблюдениями й(1), 6(2),..., д(п — 1), т.е. Е[а(п)пт()г)] = О для 1 < к < п — 1. 2. Инновационный процесс состоит из последовательности случайных векторов, которые не коррелированы друг с другом: Е[а(п)ат()г)] = О для 1 < )г < п — 1. 3.
Существует однозначное соответствие между последовательностью случайных векторов, представляющих наблюдаемые данные, и последовательностью случайных векторов, представляющих инновационный процесс: (п(1),6(2),...,п(п)) = (а(1),а(2),...,а(п)). (15 б3) Теперь можно заменить коррелированную последовательность наблюдаемых данных некоррелнрованной (и, следовательно, упрощенной) последовательностью инноваций, при этом не теряя информацию. Это упрощает вывод фильтра Калмана, так как выражает оценку состояния в момент времени ( через заданный набор инноваций (а(к)),", Прн проведении этого анализа можно вывести стандартный фильтр Калмана (табл.
15.2). В этом алгоритме существуют три новые величины, которые требуют определения. 16.9. Фильтр Калмана 969 ТАБЛИЦА 16.2. Фильтр Калмана Для п = 1, 2,... вычисляем: Г(п) = [С(п)К(п,п — 1)С~(п)+К(п)] ', С(п) = К(п, п — 1)Ст(п)Г(п), !х(п) = у(п) — С(п)тч(п]п — 1), чч(п+ Цп) = тч(п]п — 1) + С(п)а(п), К(п + 1, п) = К(п, и — 1) — С(п)С(п)К(п, п — 1) ° К(п, п — 1) — матрица ковариации ошибки (еггог сочапапсе шап1х), определяемая следующим образом: К(п,п — 1) = Е[е(п,п — 1)ет(п,п — 1)], (15.64) где вектор ошибки е(п, и — 1), в свою очередь, определяется как е(п, п — 1) = тч(п) — зч(п]п — 1), (15.65) где зч(п) — фактическое состояние; зч(п]п — 1) — его прогнозируемое значение на один шаг вперед, основанное на предыдущих значениях данных наблюдения вплоть до момента времени п — 1.
° Г(п) — переводной коэффициент (сопчепдоп Тасгог), который связывает ошибку фильтрованной оценки (6!гегед еа!ппа!!оп епог) е(п) с инновацией с!(и): е(п) = К(п)Г(п)гх(п), (15.66) где е(п) = д(п) — д(п]п) (15.67) и д(п]п) — оценка вектора наблюдений д(п), полученная на основе всех наблюдений вплоть до момента времени п. ° С(п) — коэффициент усиления Калмана (Ка!шап яа!и), который определяет коррекцию, применяемую к оценке состояния. Тип фильтра Калмана, приведенного в табл.
15.2, предназначен для распространения матрицы ковариации ошибки К(п, п — 1) и поэтому называется ковариационным алгоритмом фильтрации Калмана (сочапапсе Ка!шап б!геппя а!яопдпп). 960 Глава 15. Динамически управпяемые рекуррентные сети Фильтр Калмана на основе квадратного корня Ковариационный фильтр Калмана связан с серьезными вычислительными проблемами. В частности, обновленная матрица К(п+1, п) определяегсяуравнением Рикатти (%сап[ сапа[[оп) (см. последнюю строку в табл. 15.2).
В правой части уравнения Рикатти содержится разность между двумя матричными величинами. Если числовая точность на каждом шаге итерации алгоритма не будет достаточно велика, то скорректированная матрица К(пф1, п) может не оказаться неотрицательно определенной. Понятно, что такое решение неприемлемо, так как К(п + 1, и) представляет собой матрицу ковариации, которая неотрицательно определена ло определению. Такая неустойчивая динамика фильтра Калмана, ставшая результатом неточности вычислений, связана с использованием арифметики с конечной длиной представления и называется феноменом давергенг[ии (д[оегйепсе р]зепошепоп).
Этой проблемы можно избежать, распространяя квадратный корень матрицы ковариации ошибки Кггз(п, п — 1), а не саму матрицу К(п, и, — 1). В частности, используя разложение Холег[кого (СЬо[ез]су (ас[опяабоп), К(п, и — 1) можно выразить следуюшим образом [368]: К(п,и — 1) = К'гй(п,п — 1)К~гй(и,п — 1), (15.68) Гдс КЗГ а [и, П вЂ” 1) — НИжНяя трЕуГОЛЬНая МатрИца; Кт г й(п, П вЂ” 1) — траНСПОНИрО- ванная к ней. В линейной алгебре множитель Холецкого Кзгз(п, п — 1) называют квадратным корнем матрицы К(п, п — 1).
Позтому фильтр Калмана, основанный на разложении Холецкого, принято называть фильтром Калмана на основе квадратного корня". Здесь важно отметить, что произведение матриц К'г й(и, п — 1)К~г й(п, п — 1) менее вероятно может стать неопределенным, так как произведение любой квадратной матрицы на себя же транспонированную всегда положительно определено. 15.10. Несвязный расширенный Фильтр Калмана В фильтре Калмана нас прежде всего интересуют тс его уникальные свойства, которые можно использовать для обучения рекуррентной сетигз.
Для рекуррентной Детальное описание фильтра Калмана иа основе квадратного корня и эффективные методы ею реализации содержатся в [4341. 'т Первой работой, в которой продемонстрирована повышенная производительность нейронных сетей, обучаемых с учителем и использующих расширенный фильтр Калмана, была, пожалуй, [997]. К сожалению, описанный в ней алгоритм обучения имеет свои ограничения, так как чрезвычайно сложен с вычислительной точки зрения. Чтобы обойти это ограничение, в [588],[967] была предпринята попытка упростить применение расширенной фильтрации Калмана за счет деления глобальной задачи на рял подзадач, каждая из которых разрешалась одним нейроном. Однако толкование каждою нейрона как задачи идентификации не бы чо строго связано с ~еорией фильтров Калмана.
более того, такой подход мог привести к неустойчивости в процессе обученна, что, в свою очередь, приводило к получению худшего решения, нежели получаемое другими методами [864]. 15.10. Несвязный расширенный фильтр Калмана 961 и(п+ 1) = зт(п), й,(п) = с(и (и), и(п), к(п)) + к(п), (15.69) (15.70) где вектор весов и(п) играет роль состояния. Второй аргумент, н(п), и третий аргумент, ъ(п), вектор-функции с( с ч ) обозначают соответственно входной вектор и вектор рекуррентной активности узла.
В результате уравнение (15.69) утверждает, что система находится в "оптимальном" состоянии, в котором переходная матрица, преобразовывающая вектор весов ът(п) из момента времени и в вектор весов зт(п + 1) момента времени п + 1, равна единичной матрице. Описанное здесь оптимальное состояние соответствует локальному или глобальному минимуму на поверхности ошибок рекуррентной сети. Единственный источник нелинейности в этой системе находится в уравнении измерения (15.70). Вектор й, обозначает желаемый отклик модели. Так как уравнение (15.70) представляет собой отношение выходного сигнала к входному в модели, то отсюда следует, что с(,, ) — общая нелинейность, связываюшая входной и выходной слой многослойного персептрона. Предполагается, что вектор погрешности измерений к(п) в (15.70) является процессом белого шума, зависящего от многих переменных, с нулевым средним и матрицей ковариации К(п).