ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 А.Ю. ДОРОГОВ Санкт-Петербургский государственный электротехнический университет «ЛЭТИ» Vaksa2006@yandex.ru АНАЛИТИЧЕСКИЙ АЛГОРИТМ ОБУЧЕНИЯ БЫСТРЫХ ПЕРЕСТРАИВАЕМЫХ ПРЕОБРАЗОВАНИЙ Рассматривается новый алгоритм обучения быстрых перестраиваемых преобразований. Алгоритм использует фрактальные свойства быстрых преобразований и реализуется за конечное число шагов. Обсуждаемый метод основан на идеях фрактальной фильтрации сигналов на конечных интервалах и на возможности мультипликативного разложения элементов матрицы быстрого преобразования. Ключевые слова: быстрые преобразования, фрактальная фильтрация, мультипликативное разложение функций 1. Введение Теория быстрых перестраиваемых преобразований появилась примерно в то же время, что и теория многослойных нейронных сетей. Обе теории развивались параллельно. Различная терминология, различные теоретические основы, различные области приложения развели два направления достаточно далеко друг от друга, хотя общие черты – многослойность и перестраиваемость были вполне очевидны. В отличие от нейронных сетей быстрые перестраиваемые преобразования являются линейными. Область их применения связана с линейными методами обработки сигналов, такими как адаптивная фильтрация [1], обобщенный спектральный анализ [2], метрические методы классификации сигналов. Исторически толчком для развития теории быстрых перестраиваемых преобразований послужила работа Гуда (Good) [1] (1958 г.), в которой была рассмотрена матричная структура, порождающая быстрый алгоритм. Гуд показал, что линейные преобразования, образованные произведением слабо заполненных матриц специального вида обладают быстрыми алгоритмами и по такой схеме может быть построено быстрое преобразование Фурье (БПФ). Линейное перестраиваемое преобразование Гуд определил как произведение слабозаполненных матриц: H H 0 H1 H 1 , УДК 004.032.26(06) Нейронные сети 194 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 и доказал теорему, устанавливающую связь между элементами матрицы H и элементами матриц H i . Число матриц в произведении оказалось связанным с размерностью преобразования следующим соотношением: N p0 p1 p1 , где pi – размерность базовых операций в слое i . Топология слабозаполненных матриц Гуда показана на рис. 1,а). Символом “1” отмечены элементы, которые можно варьировать при настройке преобразования (остальные элементы в матрице нулевые). Контуром выделены подматрицы базовых операций («ядер» в терминологии Андрюса [2]), которые далее будут обозначаться W mm , где m – номер слоя, i m – номер i базовой операции в слое. Гуд доказал, что элементы матрицы преобразования связаны с элементами базовых операций выражением вида 1 2 h U ,V w w11 u1 , v1 w00 u0 , v0 , 1 u 1 , v1 w 2 u 2 , v 2 i i i i где для алгоритма по основанию 2 используется поразрядное представление векторных координат U u0u1 u1 21 u0 2 2 u1 ... 2u 2 u1 , V v0 v1 v1 21 v0 2 2 v1 ... 2v 2 v1. При этом номер базовой операции в слое m в поразрядной форме имеет вид i m um 1 u1v0 v1 vm 1 . Обобщенный вариант теоремы Гуда для произвольной топологии быстрого преобразования доказан в разделе 3 настоящей статьи. Перестраиваемые быстрые преобразования имеют родственные связи с многослойными сетями прямого распространения. Элементы базовых операций быстрого алгоритма можно трактовать как синаптические веса нейронной сети, а слои алгоритма, как слои нейронной сети. В нейросетевой интерпретации каждой слабозаполненной матрице соответствует один слой нейронной сети, показанный на рис. 1,б). Добавление функций активации и смещений превращает быстрое преобразование в быструю нейронную сеть (БНС) [ 5], которую можно обучать типовыми алгоритмами обучения нейронных сетей. Эти же методы могут быть использованы и для обучения быстрых перестраиваемых преобразований (с добавлением в обучающий контур ограничивающей нелинейности). Однако свойство линейности позволяет развить специфичные методы обучения быстрых преобразований, основанные на аналитических формах представлениях матриц преобразований. Применительно к быстрым преобразованиям такие особые УДК 004.032.26(06) Нейронные сети 195 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 методы обучения называются настройкой. Рассматриваемый метод настройки приспособленных преобразований основан на идеях фрактальной фильтрации сигналов на конечных интервалах и на возможности мультипликативного разложения элементов матрицы быстрого преобразования, доказанной Гудом. В основе алгоритмов настройки лежит доказанное свойство структурной фрактальности быстрых алгоритмов [4]. а б Рис. 1. Топология матриц Гуда 2. Фрактальная фильтрация сигналов В обобщенном представлении фильтрация это операция в функциональном пространстве сигналов, реализующая проекцию сигнала, в функциональное пространство меньшей размерности. Цель фрактальной фильтрации заключается в том, чтобы выявить пространственно распределенные свойства изучаемого объекта в кратных временных масштабах. Дискретный фрактальный фильтр. Рассмотрим сигнал, определенный функцией f u , заданной на дискретном интервале длиной N p0 p1 p1 . Представим аргумент функции в позиционной многоосновной системе счисления с основаниями p0 , p1 , , p1 . Формулы перехода, как известно, имеют вид: u u1u 2 u0 , u1 p 2 p3 p0 u 2 p3 p 4 p0 u1 p0 u0 где ui 0,1, образования pi 1 – разрядные переменные. В результате данного пресигнал представляется как многомерная функция УДК 004.032.26(06) Нейронные сети 196 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 f u1u2 u0 . Каждый аргумент функции определяет некоторый масштабный срез сигнала. Зафиксируем все аргументы функции, кроме um . Варьируя свободный аргумент u m , получим выборку S m (с числом элементов pm ). Фрактальным фильтром масштабного уровня m будем называть произвольный функционал F Sm , определенный на выборке Sm . Операцию фрактальной фильтрации можно записать в виде: fout u1u2 um1um1 u0 F finp u1u2 u0 . um Если m 0 , то фильтр будем называть фильтром нижних фрактальностей, такой фильтр генерализует сигнал, сглаживая мелкие детали. Если m 1 , то фильтр назовем фильтром верхних фрактальностей, такой фильтр сохраняет детали и нивелирует трендовые изменения. Фильтр, для которого 0 m 1 можно назвать препарирующим. Фрактальный фильтр выполняет проекцию функционального пространства размерности N в подпространство размерности N pm , однако результат фильтрации удобно представлять на исходном интервале U 0,1, N 1 . Это можно сделать, положив равными значения функции в точках интервала, различающихся только по значению аргумента um и совпадающие по остальным. Полученная функция может быть вновь подвержена фрактальной фильтрации в некоторой частотной локальности n m . Последовательная а б Рис. 2. Фрактальная фильтрация линейной дискретной функции: a) реакция фильтра нижних фрактальностей, b) реакция фильтра верхних фрактальностей УДК 004.032.26(06) Нейронные сети 197 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 фрактальная фильтрация, реализуется принцип иерархической кратномасштабной обработки данных. Наиболее простым вариантом является линейный фильтр средних: 1 fout u1u2 um1um1 u0 finp u1u2 u0 . pm um На рис. 2 показаны результаты фрактальной фильтрации с помощью фильтра средних линейно изменяющейся дискретной функции заданной на интервале 1,16 со структурой масштабного представления 2, 2, 2, 2 . Другие варианты фрактальных фильтров представлены в работе [5]. 3. Мультипликативное разложение элементов матрицы быстрого преобразования В базовой операции i m слоя m быстрого алгоритма выполнятся линейное преобразование над векторами малой размерности: y mm xmm um wmm um , vm i um i i (1) где x mm и y mm – элементы входного и выходного вектора базовой операi ции, wmm i i – элементы матрицы базовой операции. Функции покоординат- ных передач вход-выход для линейного преобразования Y X H (здесь X и Y вектора-строки) определяются частными производными: 1 1 y 1 V h U , V i 0 , (2) 0 x 0 U i где U – номер координаты входного вектора, а V – номер координаты выходного вектора преобразования. Элементы h U ,V образуют матрицу H перестраиваемого преобразования. Дифференцируя (2) по правилу дифференцирования сложной функции, получим y 1 V 1 y 1 V 1 x 1 U 1 x 2 U 2 x1 U 1 h U ,V 1 1 . (3) x0 U 0 x U x 2 U 2 x1 U 1 x0 U 0 УДК 004.032.26(06) Нейронные сети 198 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 Поскольку для межслойного перехода выполнено xm1 U m1 ym V m и отображение i m , um U m взаимнооднозначно, то из (1) следует: x m 1 U m 1 y m V m m m wmm um , vm . i x m U m x U Подставляя значения частных производных в (3), окончательно получим: 1 u 2 h U ,V w w11 u1 , v1 w00 u0 , v0 . (4) 1 , v1 wi 2 u 2 , v 2 i 1 i i 4. Мультипликативная декомпозиция дискретных функций Задача мультипликативной декомпозиции для одиночной функции имеет неоднозначное решение, и определяется выбранным правилом формирования сомножителей. Подчиним это правило топологии перестраиваемого преобразования. Рассмотрим для определенности перестраиваемое преобразование в топологии Кули-Тьюки с прореживанием по времени [7]. Изменив порядок следования сомножителей в выражении (4) элементы матрицы преобразования запишем в следующем виде: 1 h U , V w00 u0 , v0 w11 u1 , v1 w (5) 1 u 1 , v1 , i i i где для выбранной топологии i u1u 2 um 1vm 1vm 2 ядра в слое m . Основания разрядных переменных заданы соотношениями: uk 1 u0 u1 v0 v1 , p g pk 1 0 p1 0 g1 m Размерность преобразования по входу равна N p0 p1 v0 – номер табличными vk 1 . g k 1 p1 , а по выходу M g0 g1 g 1 . Пусть на дискретном интервале длиной N p0 p1 p1 задана вещественная функция f u . Ставится задача найти представление функции в виде произведения: f u i0 u0 i1 u1 i1 u1 . (6) УДК 004.032.26(06) Нейронные сети 199 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 Рис. 3. Схема расчета мультипликативных компонент Правило выбора образующих функций для каждого шага мультипликативного разложения подчиним топологии преобразования, положив i m u1u 2 um 1 . Для нахождения фрактального разложения (6) введем последовательность вспомогательных функций f0 , f1 , делив их рекуррентным правилом: f u f 0 u1u 2 u0 , , f 1 , опре- f 0 u1u 2 u0 f1 u1u 2 u1 i0 u0 , f1 u1u 2 u1 f 2 u1u 2 u2 i1 u1 , , (7) 2. (8) f 2 u1u 2 f 1 u1 i 2 u 2 , f 1 u1 i 1 u1 . Из этих соотношений непосредственно следует: im um f m u1u 2 f m1 u1u 2 um , um1 m 0,1, Анализируя (7), нетрудно заметить, что последовательность вспомогательных функций представляют собой выходы цепочки фильтров нижних фрактальностей (см. рис. 3). Для построения вспомогательных функций можно использовать любой метод фрактальной фильтрации. Это означает, что задача настройки приспособленного преобразования имеет множество возможных решений. 5. Алгоритм аналитического обучения Критерий обучения трансформирующих быстрых преобразований совпадают с критерием обучения нейронных сетей прямого распростраУДК 004.032.26(06) Нейронные сети 200 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 нения. Априорно заданным является обучающее множество, состоящее из пар входных и выходных векторов. В данном разделе исследуются аналитические методы точного обучения быстрых преобразований к ограниченному числу примеров обучающего множества. Ставится задача найти коэффициенты ядер, при которых входной вектор обучающего множества трансформируется в соответствующий ему выходной вектор. Если x и y вектора-строки одной пары обучающего множества, то преобразование H выполняет трансформацию xH y . Рассматривая входной вектор x как функцию, заданную на интервале 0, N 1 , выполним ее мультипликативную декомпозицию, с правилом выбора множителей, подчиненным топологии Кули-Тьюки с прореживанием по времени. В результате получим 1 x U x 00 u0 x11 u1 x (9) 1 u 1 , l l l где l m u1u 2 um 1 . Из анализа выражения для индекса l m следует, что сомножители в разложении (9) следует формировать с использованием фильтра низших фрактальностей, начиная с компонент xl00 u0 и за1 канчивая компонентой x 1 u 1 . Элементы вектора y определяются l уравнениями: y V x U h U ,V . U Подставив сюда выражения (5) и (9) и суммируя поразрядно, получим: y V x00 u0 w00 u0 , v0 x11 u1 w1i u1 , v1 u0 l i u1 l i xl1 u1 wi1 u1, v1 , (10) 1 1 u1 где l 0 u1u 2 u1 , l1 u1u 2 u2 , …, l 2 u1 , l 1 0 , i 0 u1u 2 u1 , i1 u1u 2 u2 v0 ,…, i 2 u1v3 v1v0 , i 1 v 2 v1v0 . Представим дискретную функцию y V в виде мультипликативной композиции, положив: 1 v y V y 00 v0 y11 v1 y 1 . (11) z z z 1 Сравнивая между собой выражения (10) и (11), получим: УДК 004.032.26(06) Нейронные сети 201 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 xl0 u0 wi0 u0 , v0 yz0 0 0 0 u0 x1l u1 w1i u1 , v1 y1z 1 i 1 v0 , z 0 0, v1 , z1 v0 , u1 xlm um wim um , vm yzm m m m vm , z m vm 1vm 2 (12) v0 , um xl1 u1 wi1 u1 , v1 yz1 v1 , 1 1 z 1 vk 2 vk 3 1 v0 . u1 Анализируя выражение для индекса z m , можно сделать вывод, что сомножители в разложении следует формировать с использованием фильтра высших фрактальностей, начиная с формирования компонент 1 0 y 1 v1 и заканчивая компонентой y 0 v0 . z z Выражения (12) представляют собой неполные системы линейных уравнений, относительно элементов ядер. Выполняя по выше приведенной схеме декомпозицию дополнительных пар векторов x, y обучающего множества, данные системы уравнений можно пополнить до образования квадратных матриц для x -сомножителей. Выражения в этом случае преобразуются в систему матричных уравнений: X 00 W 00 Y 00 , l i z X 11W 11 Y 11 , l i z 1 1 1 X 1W 1 Y 1 . l i z Строками матриц X mm и Y mm являются компоненты мультипликативного l z разложения для пар x, y обучающего множества. Если матрица X lmm не вырождена, и система уравнений X lmm Wi mm Yzmm совместна, то матрица ядра может быть получена из выражения: W mm X mm i где X lm m 1 l – обратная матрица, m 0,1, 1 Y mm . z , 1 . В общем случае, суще- ствование решений системы линейных уравнений определяется теоремой УДК 004.032.26(06) Нейронные сети 202 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 Кронекера-Капелли [7]. В соответствии с этой теоремой, система линейных алгебраических уравнений совместна тогда и только тогда, когда ранг её основной матрицы равен рангу её расширенной матрицы, причём система имеет единственное решение, если ранг равен числу неизвестных, и бесконечное множество решений, если ранг меньше числа неизвестных. Прежде чем использовать положения теоремы, рассмотрим матричное уравнение X mm W mm Y mm более детально. Для упрощения записи опустим l i z верхние и нижние индексы и раскроем матрицы W и Y : w01 w0, g 1 y00 y01 y0, g 1 w00 w11 w1, g 1 y10 y11 y1, g 1 w10 X . w wp 1, g 1 yr 1,0 yr 1,1 yr 1, g 1 p 1,0 wp 1,1 Число строк матрицы Y равно числу строк матрицы X и определяется объёмом r обучающего множества. Каждому столбцу матрицы Y соответствует система уравнений, решение которой позволяет получить один столбец матрицы ядра W . Теорема Кронекера-Капелли применяется к каждой из этих систем уравнений. Число неизвестных для каждой системы равно p. Критерием совместности является выполнение для всех систем условия: rang X rang X , yi , (13) где yi – i-й столбец матрицы Y . Если r p и матрица X не вырождена, то каждая система совместна и имеет единственное решение, определяемое по правилу Крамера. Если при r p, матрица X вырождена, но условия совместности выполнены, то существует бесконечное множество решений, любое из них допустимо. Если r p, то система уравнений переопределена, в большинстве случаев такая система уравнений будет несовместной. Таким образом, быстрое преобразование в рамках данного алгоритма можно точно настроить не более чем к p примерам обучающего множества, причем p min pi . i При реализации алгоритма выражение (13) используется для контроля совместности решения. При обнаружении несовместимости уменьшается объем обучающего множества до тех пор, пока совместность не будет восстановлена. Система из одного уравнения всегда совместна, поэтому, по крайней мере, к одному примеру обучающего множества быстрое преобразование будет точно настроено. УДК 004.032.26(06) Нейронные сети 203 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 6. Заключение В отличие от нейронных сетей перестраиваемое преобразование является линейным, это означает, что умножение входного вектора на скаляр приводит к умножению на скаляр его образа, а линейная комбинация входных векторов трансформируется в линейную комбинацию образов. Следствием этого является возможность настройки быстрого перестраиваемого преобразования для избирательного распознавания векторов принадлежащих линейному подпространству малой размерности. Число обучающих примеров, ограничено входной размерностью базовых операций, однако обучение быстрого преобразования выполняется точно и для любой сколь угодно большой размерности за конечное число шагов, а наличие быстрого алгоритма позволяет использовать его для распознавания сигналов высокой размерности в системах реального времени. Список литературы 1. Каппелини В. и др. Цифровые фильтры и их применение: Пер. с англ. – М.: Энергоатомиздат, 1983. 360 с. 2. Солодовников А.И., Спиваковский А.М. Основы теории и методы спектральной обработки информации. – Л., 1986. 272с. 3. Good I.J. The Interaction Algorithm and Practical Fourier Analysis // Journal of Royal Statistical Soseity. Ser.B. – 1958. Vol. 20. № 2. P. 361–372. 4. Andrews H.C. Walch Function Selection and Pattern Recognition // SAWF, IEEE Tr. on EMC-13. 1971. № 3. P. 115–119. 5. Дорогов А.Ю. Быстрые нейронные сети: Проектирование, настройка, приложения // Лекции по нейроинформатике. Ч.1. В тр. школысеминара «Современные проблемы нейроинформатики», Всероссийская науч.-техн. конф. “Нейроинформатика-2004”, 28–30 января 2004г. Москва. М.: МИФИ, 2004. С. 69–135. 6. Дорогов А.Ю. Фрактальные свойства алгоритмов быстрых преобразований // Сборник научных трудов Международной научной конференции «Интеллектуальные системы принятия решений и проблемы вычислительного интеллекта ISDMCI’2010». – Евпатория, 17–23 мая 2010. – ХНТУ, г. Херсон. Т. 1. С. 323–328. 7. Дорогов А.Ю. Стратифицированная математическая модель алгоритма БПФ // Сборник научных трудов Международной научной конференции «Интеллектуальные системы принятия решений и проблемы выУДК 004.032.26(06) Нейронные сети 204 ISBN 978-5-7262-1377-4. НЕЙРОИНФОРМАТИКА – 2011. Часть 3 числительного интеллекта ISDMCI’2010». – Евпатория, 17–23 мая 2010. – ХНТУ, г. Херсон. Т. 1. С. 317–323. 8. Ильин В.А., Ким Г.Д. Линейная алгебра и аналитическая геометрия, М.: ТК Велби, Изд-во Проспект, 2007. 400 с. УДК 004.032.26(06) Нейронные сети 205