Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

книги из ГПНТБ / Вапник В.Н. Теория распознавания образов. Статистические проблемы обучения

.pdf
Скачиваний:
89
Добавлен:
25.10.2023
Размер:
12.29 Mб
Скачать

§ 1.

ИДЕЯ МЕТОДА

379

Следовательно,

к

 

 

 

У т =

сіУі + Xgk+1-

(16.9)

 

i=l

 

Убедимся теперь, что в этом разложении отлично от нуля только одно с, а именно ск. Умножим скалярію выражение (16.9) на вектор Ayj:

к

(У т, Ay,) = 2 сі (Ун Ayj) + X (gk+1, AyД. i=l

При / силу (16.6) отсюда следует

 

 

CJ (Ул A y j )

+

Ä, (g h+1, Ayj) =

0.

(16.10)

Далее возможны

преобразования

 

 

 

Ayj — А (Xj

 

 

— (Axj

&)

[Axj_^ Ь) —

 

 

 

 

 

=

g j

1g j + i 1

 

 

 

откуда при j <. к в силу (16.3) справедливо

 

 

(gh+i, А Уі) =

gh+1

 

- gj+i) =

0,

(16.11)

а при j — к имеет место

 

 

 

 

 

 

(gfe+i,

A y h) =

gk+1 (gk — gft+1) = — Igk+1|a

(16.12)

Возвращаясь к (16.10), получим,

что при / < к коэффици­

енты с; = 0, в то время как при j — к

 

 

 

 

_

X

 

 

Ayk) _

 

1gte+il2

 

 

поскольку (ук, Аук) Ф 0.

 

 

 

 

 

 

Окончательно (16.9)

примет вид

 

 

 

 

 

» » =

*■ ( « - ■

+ т

а

'*)

(16.13)

Тем самым

 

 

 

устанавливаем,

что

 

 

 

 

x h + l = ^ g k + l + с к У к + x h

380 ГЛ. XVI. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ

или, иначе,

 

 

= Хі + Я

У*) ■

 

Таким образом, точка x k+1 заведомо лежит на

двумерной

плоскости

hgh+1+ cyh

(16.14)

„х = x k +

(Я и с — параметры) и даже на одномерной

прямой вида

* = ^ + я ( ^ +І + (^ ^ у к)

(16.15)

(Я — параметр), и поиск максимума в пространстве размер­ ности к может быть заменен поиском максимума на плос­ кости или на прямой.

§ 2. Метод сопряженных градиентов

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

1. Одна из них получается непосредственно из рас­ смотренного выше процесса, если заменить максимизацию функции F (х) на гиперпространстве Е к отысканием макси­ мума на прямой вида (16.15). Как было показано в преды­ дущем пункте результат от этого не изменится, так как эти максимумы совпадают.

Алгоритм получается таким (модификация I): А. Начальный шаг.

1)

Находится градиент

 

функции F (х) в произволь­

ной точке х0;

= gx;

 

 

 

 

2)

полагается

 

 

 

 

3) находится точка хъ доставляющая максимум функ­

ции F (х) на прямой X = х 0 -J-

(Я — параметр).

Б.

Общий шаг.

Пусть уже найдены точки х 0, хъ . . .

. . . , x k - li x h*

 

 

функции F (х) в точке x h;

1)

находится градиент gft+1

2)

полагается

 

 

 

 

 

где

z k + l =

g k + l +

а к + 1 (x k x k- i) ,

 

 

 

 

 

 

 

ttfc+1

( K - i - * t ). А Уц+і)

 

 

_____________ 4 + 1 _______________ .

A (Xk - W

)

 

((** -

A (Xä - Xk-x))

 

 

§ 2. МЕТОД .СОПРЯЖЕННЫХ ГРАДИЕНТОВ

381

3) находится точка x k+1, доставляющая условный мак­ симум F (X) на прямой

X = x h + l z h+1.

В. Останов алгоритма. Процесс обрывается в тот мо­ мент, когда градиент gk+1 обратится в нуль, т. е. достига­ ется максимум F (х) на всем пространстве Е п.

При абсолютно точном вычислении алгоритм должен привести к максимуму не более чем за п шагов, так как при

этом точки х 0, . .

., x h, вычисляемые методом сопряжен­

ных градиентов,

совпадают с точками х0, . . ., х к, полу­

чающимися в процессе, описанном в предыдущем пункте: как было показано, этот процесс выводит на абсоютный максимум не более чем за п шагов.

В реальных условиях, при ограниченной точности вы­ числений, процесс поиска максимума следует остановить не при точном обращении в нуль градиента, а в тот момент, когда градиент станет достаточно мал. При этом на самом деле может потребоваться более п шагов. Более подробно эти вопросы будут рассмотрены ниже.

Чтобы придать алгоритму более «конструктивную» форму, найдем формулу, определяющую точку максимума

квадратичной формы на прямой х = х* + Kz.

Подставляя уравнение прямой в выражение функции

F (х), получим

(z*Az) + х (z>s (**))+ F (**)>

F и =

где g (X*) — градиент F (х) в точке х*. Максимизируя по

Я,

получим

 

 

 

Л

(z, g (ж*))

 

 

Лопт ~

(*, Az)

 

и

соответственно

 

 

 

 

(z, ё (ж*))

( 16. 16)

 

 

(z, Az)

 

 

Таким образом, вычисление в пункте 3)

алгоритма мо­

жет быть осуществлено по формуле

 

^fc+i — xk

(ZK+1) Azh+i)

382гл . XVI. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ

2.Более известна модификация метода, при которой для вычисления очередного направления zfe+1 используют­ ся векторы gh+l и zk вместо gk+1 и ук.

Рассмотрим систему векторов zv . . ., zk,. . ., коллинеарных соответственно векторам уѵ . . ., yk (т. е. zk = $кУк при некоторых действительных 6к Ф 0). Для векторов zt и Zj сохраняется условие А-ортогональности

(zu Azj) =

0

при і Ф j.

(16.17)

Кроме того, из (16.11) следует, что

 

(Zfc+i, Agi) = 0

при і < к.

(16.18)

Наконец, остается в силе соотношение типа (16.9)

 

к

 

 

 

Zfc+1 = 2

cizi + bgk+1-

(15.19)

i=l

 

 

 

Умножая правую и левую части (16.19)

на A zt и учиты­

вая (16.17) и (16.18), получим при і<С.к

 

 

Ci (Zu Azt) =

0,

 

откуда Ci =

0 при і к. При і =

к получим

0 =

(zfc+1, Azt) =

ch (zfc

A zh) + X (gh+1, A z h),

откуда

 

 

 

 

 

 

= » ■

( « »

« * . ) .

(16.20)

Соотношение (16.20) определяет zft+1 с точностью до произ­ вольного множителя через gk+1 и zk. При выводе (16.20) использовались лишь соотношения (16.17), (16.18), (16.19). Поэтому процесс построения векторов zh может рассмат­ риваться как процесс А -ортогонализации векторов gk.

Полагая в (16.20) %= 1 и zt — gt, получим конкрет­ ную систему векторов zk, коллинеарных yh. Каждый век­ тор zh задает направление прямой, исходящей из х к+1, на которой лежит х к. Алгоритм, таким образом, примет сле­ дующий вид (модификация II).

А. Начальный шаг, такой же как и в модификации I.

Б.

Пусть уже найдены точка х к и направление zk.

1)

Находится градиент gk+1 функции F (х) в точке х к;

Ok+i —

 

§ 2.

МЕТОД СОПРЯЖЕННЫХ

ГРАДИЕНТОВ

383

2)

полагается

 

 

 

 

где

 

zh+l —

Sh+1 + a h+lzh,

 

 

ай+і -teft+i,'1**) .

(16.21)

 

 

 

 

 

 

 

 

 

ih, АЧ)

 

3)

находится тонка

хк+1, доставляющая условный мак­

симум F (X)

на прямой

 

 

 

 

 

X Хк -f- h Z x + i

 

по формуле

 

 

(gk+i> *k+i)

 

 

 

I

(16.22)

 

 

х к+1 = x k ~ T

~ --------- л і

Г z k+l-

 

 

 

 

(zk+i> Azkvi)

 

Формулы (16.21) и (16.22) могут быть преобразованы. Так, полагая

Y <*к, zk)

имеем из (16.22)

 

 

 

Vk = ( x h x h - 1) =

TfeZfe.

 

откуда получаем, применяя (16.12),

 

 

(gm, 4zft) = Y~tek+i, Ayk) =

------^

(16.23)

С другой стороны, поскольку

 

 

(gh, Vk-1) =

(gh, Zft-x) = °.

 

из (16.21) имеем

 

 

 

( g h , z h) — ( g h ( g h + a hz h - l ) ) = gk

 

и, таким образом,

I «k I2

 

 

Tä=

 

(16.24)

(zb Azk>

Наконец, из (16.21), (16.23) и (16.24) получаем

— (?k+i> Azk> 1 |2 _ lgfc+i| (zk,Azk) T*(z* , U k l 2

384 ГЛ. XVI. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ

Таким образом, формулы (16.21) и (16.22) могут быть за­ писаны в виде

zh+1 — Sh+1 ~Ь a Ä+lzÄ>

где

 

I +1I

(16.25)

 

ІМ 1 ’

и

 

хки — xk “Ь

1&к+і |2

(16.26)

(2/г+і) ^ гй+і) Z/г+ъ

 

Совпадение результатов действия по формулам (16.21)

и (16.22), с одной стороны, и (16.25), (16.26), с другой,

может служить критерием правильности вычислений.

3. Метод сопряженных градиентов может быть приме­ нен и для максимизации функций F (х), не являющихся квадратичными. Известно, однако, что вблизи максимума достаточно гладкие функции, как правило, хорошо аппрок­ симируются квадратичной функцией, например, с по­ мощью разложения в ряд Тейлора. При этом обычно пред­ полагается, что коэффициенты аппроксимирующей квад­ ратичной функции неизвестны, но для любой точки мож­ но найти градиент g (х ) функции F (х ).

При этом пункт 1) алгоритма может быть выполнен без изменений, пункт 2) должен выполняться по формуле (16.25), поскольку в эту формулу не входит явно матрица А , а пункт 3), нахождение условного максимума на пря­ мой, может быть выполнен одним из известных способов, например, методом Фибоначчи. Применение метода со­ пряженных градиентов дает обычно значительно более быструю сходимость к максимуму по сравнению с метода­ ми наискорейшего спуска, Гаусса — Зайделя и др.

4. Что будет, если применить метод сопряженных гра­ диентов для максимизации квадратичной формы с поло­ жительно полуопределенной формой (х , А х )?

Если квадратичная форма (х , А х ) положительно полуопределена, то, как известно из линейной алгебры, в со­ ответствующей системе координат функция F (х) примет вид

П

F (х) = сіхі + 2 bixi + d,

І—1

§ 2. МЕТОД СОПРЯЖЕННЫХ ГРАДИЕНТОВ

385

где все С; > 0 и некоторые из с; = 0. При этом функция имеет максимум, если выполнено условие: когда сг = 0, то и Ъі — 0. Легко видеть, что максимум в этом случае достигается на целом гиперпространстве. А именно, пусть, например, при і, меняющемся от 1 до к, ct 0, а при і, меняющемся от к ф- 1 до п, сг = 0 и bt = 0. Тогда макси-

мум

 

 

ft.

при

достигается в точках с координатами хі = —

1 ^

К ^ и с

произвольными значениями xt при

Сі

к.

г

Они

образуют

гиперпространство размерности

п к.

Если же при некоторых г сг = 0, а bt Ф 0, то функция не имеет максимума и возрастает неограниченно. В самом деле, пусть, например, bk 0 и ck = 0; тогда, если поло­ жить Хі = 0 при і=/ьк и устремить x h к + оо, то, очевидно, и F (х) будет возрастать до бесконечности.

Оказывается, что метод сопряженных градиентов (при точном счете) позволяет в первом случае достигнуть мак­ симума не более чем за к шагов, где к — число сг не рав­ ных нулю, а во втором случае не более чем через к шагов выводит на направление, по которому функция F (х) воз­ растает неограниченно.

В исходной системе координат функция F (х) имеет вид

F (х) = ---- 2~ (х >Ах) + Ъх + с>

причем матрица А вырождена и имеет ранг к < п. При этом, как и раньше, обращение градиента в нуль есть критерий достижения максимума, а ортогональность гра­ диента гиперпространству — критерий условного экстре­ мума на гиперпространстве.

Рассмотрим применение метода сопряженных гради­ ентов в форме II в этом случае. Здесь приходится изме­ нить условие остановки, т. е. теперь возможно, что при

вычислении длины шага

 

(gfe, zft)

. &

Тk (zb Azk)

(гЬ Azk>

знаменатель (zk, Azh) может обратиться в нуль (при вычис­ лении значения a h+1величина (zh, Azh) также входит в зна­ менатель, но если она равна нулю, то уже предыдущий шаг невозможен).

13 В. Н. В апник, А. Я. Ч ервоненкис

386 ГЛ. XVI. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ

Таким образом, условие останова будет таким. Про­ цесс останавливается, если:

на очередном шаге gh+1 = О или

на очередном шаге оказывается, что

(zk+ii AZk+i) = 0.

В первом случае алгоритм, естественно, приводит в точку максимума. Во втором случае направление zh+1 будет направлением неограниченного возрастания функ­ ции F (х). В самом деле, на прямой

X = x h + Xzk+1

при (zh+1, A zk+1) = 0 функция F (х) имеет вид

X2

F(x) = F (xk) -j- (zk+1, Azk+1) + (g*+1, z*+i)> =

= F (xk) + %(gft+1, gfe+i),

причем

 

 

(gh+1, ghbl) >

0,

 

так

как

при gh+1 = 0 останов произошел

бы по пункту

а).

Но

теперь очевидно, что при

А,-> оо

функция F (х)

возрастает неограниченно. Можно показать, что при этом из всех направлений, по которым функция бесконечно возрастает, она растет быстрее всего в направлении zh+1.

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

деле пусть при і ^

та выполнено

условие

(zt, Аг}) 'ф 0.

Тогда остаются в силе соотношения

 

 

(Zi, Azj)

= 0 при і ф і

(і, j <

та)

 

(gm+li Zi) == 0

 

(при выводе этих соотношений положительно-определен- ность не использовалась).

Отсюда следует, что векторы zt (1 1 та) образуют ■4-ортогоналышй базис, а градиент gm в точке хт орто­

гонален

гиперпространству

Ет размерности та, состоя­

щему из

векторов вида

 

 

X х 0

2 %iZi)

§ 3. МЕТОД ПАГАЛЛЕЛЬНЫХ КАСАТЕЛЬНЫХ (ІІАРТАіі) 387

причем

ЕЕ Е ту

так что в точке хт достигается условный максимум функ­ ции F (X) на Е т. Далее, на гиперпросгранстве Е т функ­ ция F (X) имеет вид

F (х) F (х0) + 2 Xi (Z{, Az) -f- 2 dfa,

t=1

где

di = zi (b — A x0),

и так как (zb A zt) 0, то квадратичная часть F (x) поло­ жительно определена. Но, как известно из линейной ал­ гебры, это возможно только в том случае, когда размер­ ность пространства Е т меньше или равна рангу к матри­ цы А .

Следовательно, останов обязательно произойдет при

т?Ск.

§3. Метод параллельных касательных (партан)

Выше было показано, как процесс, описанный в § 1, приводит к методу сопряженных градиентов, если отыска­ ние условного максимума в пространстве E h заменить равноценным поиском максимума на прямой. Там^же по­ казано, что равноценным будет также поиск на двумерной плоскости, проходящей через точку x h и два исходящих из нее вектора yk и gk+i, т. е. точка х к+1 может быть пред­ ставлена в виде

x h+l

х к +

К У к +

^zgk+l

или, иначе,

 

 

 

x k+1 = x k~1 +

'Х'іУк +

'Xzgh+l

( ^ 1 = 1 + ^l)-

Для нахождения максимума квадратичной функции на плоскости можно использовать различные методы. Метод, известный под названием «партан» или «метод па­ раллельных касательных», основан на простом геометри­ ческом принципе.

На рис. 28 изображены линии уровня функции F (х), представляющие собой подобные концентрические эллип­ сы. Пусть х0 — произвольная точка, А 0 — линия уровня

13*

388 гл . XVI. МЕТОД СОПРЯЖЕННЫХ НАПРАВЛЕНИЙ

(эллипс), проходящая через х0, Іх — касательная к эллип­ су в точке х0, g1 — градиент функции F (х) в точке хй. Очевидно, что градиент gx нормален к линии уровня, т. е. перпендикулярен касательной Іѵ

Точка хх определяется как точка максимума функции F (х) на прямой г, проходящей через х 0 в направлении градиента gx. В точке хх эта прямая касается некоторой линии уровня. Поэтому градиент g2в точке хх перпендикулярен вектору gx и, сле­ довательно, прямая 12, про­ ходящая через хх в направ­ лении g2, параллельна Іѵ Далее, точка х2 находится как точка максимума F (х)

на прямой 12, где она ка­ сается эллипса А 2. Оче­ видно, что подобным сжа­

Рис. 28. тием можно перевести од­ новременно прямую Іхи эллипс А х в прямую 12и эллипс А 2. При этом точка х0перей­

дет в х2. Но при подобном сжатии к центру точка х0переме­ щается по прямой, проходящей через центр эллипсов. Поэтому прямая (х 0, х2) проходит через центр эллипсов, т. е. точку максимума функции на плоскости. Таким об­ разом, приходим к следующему способу:

1) из произвольной точки х 0 провести прямую г в на­ правлении градиента функции gx в точке х 0;

2)

на этой прямой найти точку условного максиму­

ма хх;

3)

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

и на

этой прямой найти точку х2, доставляющую услов­

ный максимум;

4)

соединить точки х 0 и х 2 прямой и найти точку мак­

симума на этой прямой. Найденная точка есть точка, до­ ставляющая максимум функции на всей плоскости.

Вернемся теперь к задаче о нахождении максимума F (х) в п-мерном пространстве Е п. В соответствии со ска­ занным выше, процесс, описанный в § 1, может быть при­ веден к следующему виду.

А. Начальный шаг.

1) В произвольной точке х 0 пространства Е п находит­ ся градиент gx функции F (х);

Соседние файлы в папке книги из ГПНТБ