Научная статья на тему 'Алгоритмы обучения на основе ортогонализации последовательных векторов'

Алгоритмы обучения на основе ортогонализации последовательных векторов Текст научной статьи по специальности «Математика»

CC BY
178
53
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
СибСкрипт
ВАК
Область наук
Ключевые слова
АЛГОРИТМ КАЧМАЖА / АЛГОРИТМ С ПОПАРНОЙ ОРТОГОНАЛИЗАЦИЕЙ ВЕКТОРОВ / МНОГОШАГОВЫЙ АЛГОРИТМ / СКОРОСТЬ СХОДИМОСТИ / KACZMARZ ALGORITHM / PAIRWISE ORTHOGONALIZATION OF SEQUENTIAL VECTORS ALGORITHM / MULTISTEP ALGORITHM / CONVERGENCE RATE

Аннотация научной статьи по математике, автор научной работы — Вершинин Ярослав Николаевич, Крутиков Владимир Николаевич

Эффективные релаксационные субградиентные методы оптимизации негладких функций основываются на алгоритмах решения систем неравенств, целью которых является поиск направления спуска на очередной итерации основного алгоритма. Для нахождения решения указанных систем неравенств могут быть использованы итеративные алгоритмы, называемые алгоритмами обучения. В этой работе предлагаются и изучаются многошаговые методы, в которых для ускорения сходимости используется идея ортогонализации последовательных направлений процесса обучения.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

ORTHOGONALIZATION OF THE SEQUENCE VECTORS LEARNING ALGORITHMS

Effective relaxation subgradient optimization methods for nonsmooth functions are based on algorithms for solving systems of inequalities, which are focused on computing the descent direction for the next iteration of the main algorithm. Iterative algorithms, called learning algorithms, can be used to find the solution of such inequality systems. In this paper we propose and study multi-step methods which use orthogonalization of sequential directions to accelerate learning process convergence.

Текст научной работы на тему «Алгоритмы обучения на основе ортогонализации последовательных векторов»

УДК 519.6

АЛГОРИТМЫ ОБУЧЕНИЯ НА ОСНОВЕ ОРТОГОНАЛИЗАЦИИ ПОСЛЕДОВАТЕЛЬНЫХ ВЕКТОРОВ

Я. Н. Вершинин, В. Н. Крутиков

ORTHOGONALIZATION OF THE SEQUENCE VECTORS LEARNING ALGORITHMS

Y. N. Vershinin, V. N. Krutikov

Эффективные релаксационные субградиентные методы оптимизации негладких функций основываются на алгоритмах решения систем неравенств, целью которых является поиск направления спуска на очередной итерации основного алгоритма. Для нахождения решения указанных систем неравенств могут быть использованы итеративные алгоритмы, называемые алгоритмами обучения. В этой работе предлагаются и изучаются многошаговые методы, в которых для ускорения сходимости используется идея орто-гонализации последовательных направлений процесса обучения.

Effective relaxation subgradient optimization methods for nonsmooth functions are based on algorithms for solving systems of inequalities, which are focused on computing the descent direction for the next iteration of the main algorithm. Iterative algorithms, called learning algorithms, can be used to find the solution of such inequality systems. In this paper we propose and study multi-step methods which use orthogonalization of sequential directions to accelerate learning process convergence.

Ключевые слова: алгоритм Качмажа, алгоритм с попарной ортогонализацией векторов, многошаговый алгоритм, скорость сходимости.

Keywords: Kaczmarz algorithm, pairwise orthogonalization of sequential vectors algorithm, multistep algorithm, convergence rate.

1. Постановка задачи Пусть требуется решить задачу оценивания неизвестных параметров линейной модели.

Задача 1. По данным наблюдения дк е Еп, ук е Е1, к = 0,1,2,..., процесса

Ук = (8 ^, дк) + 4,

где £к - ошибка наблюдения, необходимо найти

вектор неизвестных параметров 8* е Еп.

Здесь и далее п - размерность пространства, а (■, )—оператор скалярного произведения. Соотношение (1) будем называть обучающим соотношением. Можно сказать, что целью решения задачи 1 является нахождение 8* е Еп, в определенной мере удовлетворяющего обучающим соотношениям.

Алгоритм Качмажа [1] (см., например, [2 - 3])

для оценки 8* в задаче 1 имеет вид [4-6]:

ук — (,8к, дк ) д (2) .. ..о дк, (2)

где | | - Евклидова норма вектора.

Итерацию (2) при £к = 0 можно интерпретировать как шаг минимизации функции

Ф (8 ) = (8 — 8*, 8 — 8* )

из точки s, в направлении

т. е.:

°к+1

= sk - t *9к , t * =

(Æ > sk ) - (9к >s* )

(А, дк)

где Ь* - оптимальный шаг. Обозначим вектор невязки, как Ак = 8к — 8*. Мера качества направле-

ния спуска дк минимизации квадратичной функции ф (8) с равными собственными значениями матрицы вторых производных определяется выражением

€ = (Лк > 9к)2 / II А,

\9к\

(3)

(4)

Вместо (дк, 8*) мы имеем наблюдения ук . Поэтому реальный шаг в (2)

Ь = [д, 8к) — Ук ]/(дк, дк).

В качестве меры ошибки наблюдений ук при мем относительную ошибку

Ак = (ь — О/ь* =

= [(, 8к) — Ук] / [(к, 8к) — д, 8*)] — 1

Сделаем следующее предположение о данных задачи 1.

Предположение 1. Пусть данные в задаче 1 удовлетворяют следующим условиям:

<?2 > ?2 > 0. (5)

< 1. (6)

(дк, Ак) > 0. (7)

Ограничение (6) на Ак обеспечивает гарантиро-

ванную точность одномерного спуска алгоритма (2) вдоль дк и одновременно соответствует неполной

релаксации одномерного спуска, т. е. отсутствию проскакивания точки одномерного минимума.

Свойство (7) говорит о согласованности векторов невязки Ак и обучения дк. Вектор дк в алгоритме обучения (2) играет роль, аналогичную градиенту в градиентном методе. При условии (7) справедлив более сильный аналог (5):

0 < -\ < X

1 > % =

(Ак. 9к) А, II II д,.

> д > 0 , д2 > д2 > 0. (8)

Далее мы будем использовать равенство

(.дк, 8к) — Ук =(1 + Ак )(дк, Ак), (9)

которое следует из (4).

Исследуемые в данной работе алгоритмы строятся на принципе ортогонализации последовательных векторов процесса обучения. Выбор этого принципа обусловлен тем, что процесс минимизации квадратичной функции ф (8) с одинаковыми

собственными значениями матрицы вторых производных гарантированно сходится к стационарной точке не более чем за п итераций при условии взаимной ортогональности направлений движения.

2. Оценка скорости сходимости алгоритма Качмажа

На каждом шаге алгоритма Качмажа оценка новых параметров производится так, что выполняются обучающие соотношения (1).

Лемма 1. Пусть последовательность }- ре-

зультат процесса (2) решения задачи 1, 1Ы1 *0

выполнены равен-

ства

(5к+^ 8к) = Ук • (10)

Доказательство. Умножив (2) на 8к, получим: (5к+l, 8к) =(5к, 8к) +

+

Ук—^цЗк),

ы2

(8к, 8к) = Ук •

если выполнено

предположение 1, имеет место оценка:

(Ак, Ак) < (А0, А0)[1 -Ч2(1 -Л2)]к. (11)

Доказательство. Вычитая из обеих частей (2)

*

вектор 5 , с учетом (9), получим:

А к+1 = А к - (1 + Лк)(8«, А к > ^к. (12)

(8к, 8к )

Отсюда найдем:

(? А )2 2

(А к+1, А к+1) = (А к, А к(1 -Л"2). (13)

(, 8к)

Из (13), с учетом (3), получим:

(А к+1, А к+1) = (А к, А к )[1 - *2(1 -Л2)]. (14)

При условиях (5) и (6) из (14) следует оценка: (Ак+1, Ак+1) < (Ак, Ак )[1 - * 2(1 -Л2)]. (15)

Для обоснования (11) используем рекуррентно оценку (15).

3. Алгоритм обучения на основе попарной ор-тогонализации последовательных векторов Если в (2) используется система из п взаимно ортогональных векторов дк, и отсутствует ошибка,

т. е. ук = (5*, 8к), дк тогда решение 5* є Еп будет получено за цикл итераций (2) вдоль этих векторов. Мы, используя ортогонализацию, построим алгоритм, который решает задачу точно в

пространстве двух последовательных векторов.

Введем итерационный процесс с ортогонализа-цией последовательных векторов:

Ук

дк ,

где

Рк =

8 к 8 к

(к > ак]

( 8 к , 8 к -1 ) 1І8 к Л2

(16)

(17)

если яы) > 0,

если ^к, Як-1) < 0.

На каждом шаге алгоритма (16), (17) оценка новых параметров производится так, что выполняются обучающие соотношения (1).

Лемма 2. Пусть последовательность {8к }- результат процесса (16), (17) решения задачи 1, дЛ ^ 0 для к = 0,1,2, • • •, 8о е Еп. Тогда выпол-

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

нены равенства

(вк+1, дк ) = Ук -

(18)

Теорема 1. Пусть последовательность {к} -результат процесса (2) решения задачи 1, ||8к || ^ 0 для к = 0,1,2, • • •, є К". Тогда,

(5к+1.ак-і) = Ук-і, если д,ак-1) < 0. (19)

Доказательство. Умножив (16) на дк , получим:

(5к+і. дк) = (5к> ак) +

Ук -(>дк)

(л> дк) = Ук.

[рк, дк,

И если (дк, дк—1) < 0 , то с учетом (рк, дк—1) = 0 , что следует из (17), получим:

(.8к+1, дк—1) = (.8к—1, дк—1) +

. ук—1 — {8к—1, дк—1 ) / ч

+----7----------ч-(Рк—Р дк—1) = У к—1.

{Рк—Р дк—1 )

Согласно (18), (19), в том случае, когда в (17) срабатывает ортогонализация, выполняются два последних обучающих соотношения.

Теорема 2. Пусть последовательность {8к }-результат процесса (16), (17) решения задачи 1, II дк II ^ 0 для к = 0,1,2, • • •, 8о е Еп. Тогда, если выполнено предположение 1, имеет место оценка (Ак, Ак) < (А0, А0)[1 — Я2(1 — А2)]к . (20)

При этом на отдельной итерации оценка скорости сходимости процесса (16), (17) не хуже, чем

8

к -1

Вестник КемГУ

№ 2 (50) 2012

у алгоритма Качмажа при условии шага каждого из

алгоритмов из одной и той же точки вк.

Доказательство. Исследование случая

(дк, дк-1) > 0 в (17) нами проведено при оценке

скорости сходимости алгоритма Качмажа. Поэтому мы исследуем случай ортогонализации в (17). Вы-

читая из обеих частей (16) вектор 5*, с учетом (9), получим:

Ак+1 = Ак

(1 + \)(дк, Ак) (Рк• дк)

-Рк.

(21)

Отсюда найдем:

(А к+1, А к+1) = (А к , А к ) - 2

(1 + 4)(Рк,Ак)(8к,Ак) , (1 + 4)2(8к,Ак)2(Рк,Рк)

(Рк, 8к )

+

(Рк, 8к )

= (А к, А к) -

(1 + 4к )(8к, А к )

(Рк, 8к )

2( р« , А к ) -

(1 + 4к )(8к, А к )(Рк, Рк ) (Рк, 8к )

(22)

В силу (Рк, 8к^) = 0, что следует из (17), выполняется равенство (р« , Рк ) = (Рк, 8к ). Поэтому (22)

приводится к виду:

(А к+1, А к ,1) = (А к, А к) -(1 + 4)(8 ■А к) [2( [, А) - (1 + 4)(8 к, А)].

(Рк, 8к )

(23)

2

Умножив (21) на дк, с учетом (7), получим:

(дк, Ак+1) = —Ак (дк, Ак) > 0. (24)

Умножив (17) на Ак , с учетом (дк, дк—1) < 0 и неравенства (24) для индекса к ^ к — 1, получим

оценку:

(Рк. Ак) = (дк. Ак) -(дк, дк-1)(дк-1. Ак)

> (дк. Ак).

(25)

(дк-1, дк-1)

При условии, что (рк, дк) > 0 из (23), с учетом (25) и (7) получим:

(Ак+1, Ак+1) — (Ак , Ак ) -

(1 - А2)(дк, Ак )2

(26)

(Рк. дк)

Умножив (17) на 8к , получим:

(Рк, 8к ) = (8к, 8к ) -

(8к,8к-1)2 < (8 ,8к).

(27)

(8к-l, 8к-1)

II

>

>

(А к. дк)

IIII дк II ^ ^^к (А* • я‘) > %.

>

дк

(28)

Н Ак|| || дк

Отсюда и равенства

|| Рк =ЛІ(дк• Рк) следует тіп (29)

(30)

Рассмотрим положение векторов дк и Ак -

проекции вектора Ак в плоскости ортогональных

векторов дк—1, рк . Согласно (17), вектор дк имеет

отрицательную компоненту вдоль дк—1. Согласно неравенству (24) для индекса к равного к — 1, вектор Ак имеет положительную компоненту вдоль

дк—1. Поэтому угол между дк, Ак больше угла между векторами дк, рк . Следовательно, для косинусов этих углов можно записать цепочку неравенств:

Из (29), вместе с (24) имеем:

(дк, дк) > (Рк, дк) >

> чк(дк, дк) > 0.

Таким образом, в силу (30), оценка (26) получена корректно, а на основании (24) может быть преобразована к неравенству:

(А„,, А„,) < (А к, А к) - ° ~Л)(Ук к )2. (31)

(%к, 8к)

При условиях (5) и (6) из (31) следует оценка: (Ак+1, Ак+1) < (А к, А к )[1 - д2(1 -Л2)]. (32)

Для обоснования (20) используем рекуррентно оценку (32).

Сравнивая оценки (26) и (13) приходим к выводу, что на отдельной итерации при условии, что оба алгоритма ((2) и (16), (17)) делают шаг из одной точки, в силу неравенства в (26) и равенства в (13), следует последнее утверждение теоремы о том, что на отдельной итерации оценка скорости сходимости процесса (16), (17) не хуже, чем у алгоритма Качмажа.

4. Многошаговый алгоритм обучения

Развивая идею алгоритма с парной ортогонали-зацией последовательных векторов обучения, введем итерационный процесс с ортогонализацией,

следующих друг за другом направлении смещения,

т- е- (рк, Pk-і) = 0 •

Ук -(sk

где

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

( ^Р^ (33)

[Рк, дк) если д, Рк—1) >0

Рк~ д —^р*—l, если (дк,Рк—1)< °. (34) II Рк—А

На каждом шаге алгоритма оценка новых параметров производится так, что выполняются обучающие соотношения (1). Поведение исследуемого алгоритма представлено на рисунке 1.

Лемма 3. Пусть последовательность {«к } - результат процесса (33), (34) решения задачи 1, ^ 0 для к = 0,1,2, • • •, во е Еп. Тогда выпол-

нены равенства

(sk+і, 9 k) = yk ■

Доказательство. Используя (33) и (34), полу-

чим:

(sk+і, gk) = (sk, gk)

Ук

-(Pk , 9к) = Ук ■

выполнено. Вычитая из обеих частей (33) вектор 5 , с учетом (9), получим:

к = 1,..., д (38)

Умножив (38) на Рк и произведя преобразования, получим:

Р, А+1) = Р. А.) —(1 + А )(9‘" А) (Рк, Рк) =

(Рк, дк) (39)

= (Рк, Ак) — (1 + Ак )(дк, Ак) > —Дч (дк, Ак) >0.

Переходы в (39) сделаны на основе равенства

(Рк, Рк) = (,Рк, дк), следующего из (34) в случае

(дк, Рк—1) < 0, и неравенства (36), позволившего

сделать замену (Рк, Ак) ^ (дк, Ак).

В предположении, что неравенства выполнены на предыдущей итерации к — 1, докажем их справедливость на текущей итерации к следующим образом. Для случая, (дк, Рк—1) < 0 умножив (34) на

(35) Ak и учитывая, что (pk-р Ak) > 0 , которое спра-

ведливо в силу (37), получим:

(Pk , Ak) = (9k , Ak) -(9k,Pk-і)

(Pk-і, Ak) > (9k, Ak).

(40)

\\Pk-і

Для оценки скорости сходимости нам потребуется следующая лемма, которая исследует характеристики процесса (33), (34) в случае (дк, рк-1) < 0 .

Лемма 4. Пусть последовательность {«к }-результат процесса (33), (34) решения задачи 1, II дк II ^ 0 для к = 0,1,2, • • •, во Є Еп. Тогда, если

выполнено предположение 1, то имеют место оценки:

(Рк, Ак) > (дк,Ак). (36)

(Рк, Ак+1) > 0. (37)

Доказательство. Будем проводить доказательство по индукции. При к = 0 выполняются равенства рк = дк, рк-1 = 0. Поэтому неравенство (36)

В результате мы доказали (36). Справедливость (37) следует из (39).

Относительно сходимости нового алгоритма обучения справедливо следующее.

Теорема 3. Пусть последовательность {«к }-результат процесса (33), (34) решения задачи 1, II дк II ^ 0 для к = 0,1,2, • • •, во Є Еп. Тогда, если выполнено предположение 1, имеет место оценка:

(Ак, Ак) — (А0, Ас)[1 - ?2(1 - Л2)]к. (41)

При этом на отдельной итерации оценка скорости сходимости процесса (33), (34) не хуже, чем у алгоритма Качмажа, при условии шага каждого из алгоритмов из одной и той же точки 5к .

Доказательство. Из (38) найдем:

(Ak+і, Ak+і) = (Ak, Ak) — 2 (і + \ )(gk, Ak)

= (Ak, Ak) -■

(і + \ )(Pk, Ak )(9k, Ak) + (і + \ )2(9k, Ak )2(Pk, Pk) (pk, gk) (Pk, 9k)2

(і + Ak )(9k, Ak)(Pk, Pk)

(Pk, 9k)

2(Pk, Ak) -

(Pk, 9k)

(42)

В силу ортогональности (pk, gk_1) = 0 , что сле- При условии, что (pk, gk) > 0 из (43), с учетом

дует из (37), выполняется равенство (7) и (36), получим:

(Pk , Pk) = (Pk , gk) • Поэтому (42) пРиводится к виду д ) < ^д д ) _ (1 _ Ak2)(gk, Ak)2 (44)

V k +1 ^ k+1' — V k5 k' / \ ' '

min • (43) (Pk, gk)

Вестник КемГУ

№ 2 (50) 2012

Для случая, (дк, Рк—1) < 0, умножив (34) на синусов этих углов можно записать цепочку нера-

венств:

ак 1 , получим:

(Рк, дк) > (А к, дк)

(Рк,дк) = д,дк) — (дк,Рк 12) < д,дк). (45)

1кк—Л2 ^

Рассмотрим положение вектора дк и /Ак - про-

II Рк IIII дк II II Ак I

>.. .(А|,и > •

|| Ак || || дк ||

Отсюда и равенства:

>

дк

(46)

екции вектора Ак в плоскости ортогональных век- || 11= ^(Рк, рк) = -^/(дк, Рк)

следует

торов Рк—1, Рк . Согласно (34), вектор дк имеет отрицательную компоненту вдоль Рк—1. Согласно неравенству (37) для индекса к равного к — 1, вектор Ак имеет положительную компоненту

вдоль Рк—1. Поэтому угол между дк, /Ак больше угла между векторами дк, Рк . Следовательно, для ко-

(Рк,дк) > дк || Рк || ||; = дк || дк ^^к,Рк).

Из (44), вместе с (45) имеем:

(дк, дк) > (Рк, дк) >

> дк2(дк, дк) > 0-

(47)

(48)

ние по алгоритму Качмажа, X °, X (1),..., X (Т ) — приближение в случае многошагового алгоритма,

S — искомый вектор спуска

*

Таким образом, в силу (48), оценка (44) получена корректно, а на основании (45) приводится к виду:

(Ак+1, Ак+1) — (Ак, Ак ) (1 - ®(дк, Ак )2

(49)

(дк ,дк )

При условиях (5) и (6) из (49) следует оценка:

х*(Ь — 1),..., х*(1). (50)

Для обоснования (41) используем рекуррентно оценку (50).

Сравнивая оценки (49) и (13), приходим к выводу, что на отдельной итерации, при условии, что оба алгоритма ((2) и (33), (34)) делают шаг из одной точки, в силу неравенства в (49) и равенства в (13), следует последнее утверждение теоремы о том, что на отдельной итерации оценка скорости сходимости процесса (33), (34) не хуже, чем у алгоритма Качмажа.

Заключение

В работе предложены и исследованы теоретически многошаговые алгоритмы обучения при условиях, аналогичных условиям работы алгоритмов обучения в субградиентных методах минимизации. Ускоряющие свойства предлагаемых методов определяются использованием идеи ортогонализации последовательных направлений процесса обучения. Теоретически показано, что свойства сходимости подобных алгоритмов не хуже, чем у алгоритма Качмажа. Предложенные алгоритмы в первую очередь предназначены для ускорения сходимости

обучающихся субградиентных методов минимизации негладких функций [6].

Литература

1. Kaczmarz, S. Approximate solution of systems of linear equations / S. Kaczmarz // Internat. J. Control. - 1993. - V. 54. - № 3.

2. Цыпкин, Я. З. Основы теории обучающихся систем / Я. З. Цыпкин. - М.: Наука, 1981. - 251 с.

3. Аведьян, Э. Д. Обобщенный алгоритм Кач-мажа / Э. Д. Аведьян, Я. З. Цыпкин // Автоматика и телемеханика. - 1949. - № 1.

4. Крутиков, В. Н. Релаксационный метод минимизации с растяжением пространства в направлении субградиента / В. Н. Крутиков, Т. В. Петрова // Экономика и мат. методы. - 2003. - Т. 39. - Вып. 1.

5. Крутиков, В. Н. Семейство релаксационных субградиентных методов с двухранговой коррекцией матриц метрики / В. Н. Крутиков, Т. А. Горская // Экономика и мат. методы. - 2009. - Т. 45. - № 4.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

6. Крутиков, В. Н. Обучающие методы безусловной оптимизации и их применение / В. Н. Крутиков. - Томск: Изд-во ТГПУ, 2008. - 234 с.

i Надоели баннеры? Вы всегда можете отключить рекламу.