Файл: Сахарова Людмила Викторовна, Лукьянова Галина Викторовна Методы оптиизации для машинного обучения учебное пособие.doc

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 06.12.2023

Просмотров: 948

Скачиваний: 18

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.

УПРАЖНЕНИЯ

1. Установить, являются ли выпуклыми следующие множества:

  1. U ={(x1 , x2) 2x1 + x2  2, 2x1x2  –2, x2  0};

  2. U ={(x1 , x2) x2 > x21};

  3. U ={(x1 , x2) x1x2 < 1, x1 > 0, x2 > 0};

  4. U ={(x1 , x2) x1x2  2, x21 + x22  4};

  5. U ={(x1 , x2 , x3) x3x21 + x22}.

3.3. ОБЩИЕ ПРИНЦИПЫ n–МЕРНОЙ МИНИМИЗАЦИИ

Для численного решения задач безусловной минимизации:(x) min, x  En разработано много алгоритмов, использующих итерационные процедуры видаxk+1 =Ф(xk , xk–1 ,…, x0), x0En , (3.25)позволяющие при определенных условиях построить последователь­ность {хk} такую, чтогде U* множество точек глобального минимума функции f (х). Последовательность {х}, удовлетворяющая требованию (3.26), называется минимизирующей для функции f (х). Если, кроме того, для случая U* дополнительно выполняется условие , (3.27)то говорят, что минимизирующая последовательность сходится к множеству U*. Если множество U* состоит из единственной точки х*, то для сходящейся к U* минимизирующей последовательности .Замечание. Минимизирующая последовательность может не сходиться к точке минимума. Например, для (x) =х2/(1+ х4), xE1 , последовательность xk=k является минимизирующей, но не сходится к единственной точке минимума х*= 0.Вопрос о существовании точки минимума обычно решается с по­мощью теоремы Вейерштрасса, которая гласит: если функция f (х) непрерывна в En и множество U= {х |f (х)  } для некоторого  непу­сто и ограничено, то f (х) достигает глобального минимума в
En.Отметим, что если множество U– выпукло, а функция (х) стро­го выпукла, то точка ее минимума единственна (см. теорему 3.5).Среди итерационных процедур (3.25) можно условно выделить та­кие, которые гарантируют отыскание решения задачи за конечное число итераций (шагов). Однако их удается построить лишь для не­которых специальных типов задач минимизации. Как правило, прихо­дится иметь дело с бесконечными последовательностями {хk}, поэ­тому говорить о достижении решения можно лишь в пределе. Важной характеристикой сходящихся минимизирующих последова­тельностей является скорость сходимости. Говорят, что последова­тельность {хk} сходится к точке х*линейно (со скоростью геомет­рической прогрессии), если существует такое число q  (0; 1), что выпол­няется неравенство (хk, х*)  q(хk–1, х*), т. e. р(хk, х*)  qk0, х*).Сходимость называют сверхлинейной (т.е. более быстрой, чем определяемая любой геометрической прогрессией), если (хk, х*)  q(хk–1, х*), qk +0 при k .Наконец, термин квaдрaтичнaя сходимость используется, если справедлива оценка:(хk, х*)  [c(хk1, х*)]2, c > 0 или (хk, х*)  , где q= (х0, х*). Для многих алгоритмов скорость сходимости последовательности {хk} из (3.25) характеризуется и другими неравенствами, например,(хk, х*)  c/k, при с > 0,  > 0.Установление факта сходимости последовательности {хk} из (3.25) и оценка скорости сходимости дают существенную информацию об итерационном процессе (3.25).Конкретный вычислительный алгоритм на основе (3.25), в котором может получаться бесконечная последовательность {хk}, необходимо дополнять условием остановки (критерием оконча­ния счета). На практике часто пользуются следующими условиями:(хk+1, хk) < 1 ;  (3.28)f (xk+1)–f (xk) < 2 ; (3.29) f  (xk) < 3 , (3.30)где i– заранее заданные параметры точности.

Ниже будут рассмотрены вычислительные алгоритмы простейших процедур (3.25), как правило, основанные на рекуррентных формулах видаxk+1= xk +kpk , k = 0, 1, …, (3.31)где рk – направление поиска точки xk+1 из точки xk , а число k – величина шага, которая выбирается так, чтобы выполнялось условиеf (xk+1) < f (xk). (3.32)Эти алгоритмы различаются способом построения вектора рk и выбора шага k .Будем говорить, что в итерационном процессе (3.31) производится исчерпывающий спуск, если величина шага k находится из решения одномерной задачи минимизацииФk()min, Фk() = f (xk +  рk). (3.33)Таким образом, при исчерпывающем спуске на каждом шаге пол­остью реализуется возможность уменьшить значение целевой функции f (х) при перемещении из точки xk в направлении, коллинеарном вектору рk. Величина шага k может быть найдена, например, с помощью методов, описанных в гл. 2.Теорема 3.6.Для дифференцируемой в Еn функции (x)в итерационном процессе (3.31) с выбором шага kв соответствии с (3.33) для всех k1 выполняется условие< f  (xk+1), рk > = 0. (3.34)Запишем необходимое условие минимума функции одной переменной Фk() из (3.33), используя правило дифференцирования сложной функции: .Учитывая, что xjk+1= xjk +  рjk получаем условие (3.34).Дадим геометрическую иллюстрацию соотношения (3.34) пространстве Е2. При перемещении из точки xk вдоль прямой, задаваемой вектором pk в направлении убывания функции, происходит пересечение линий уровня функции f (х) до тех пор, пока либо не будет до­стигнута стационарная точка f  (xk+1) = 0, либо прямая не коснется в точке xk+1 некото­рой линии уровня функции (x). Равенство (3.34) и есть условие касания (рис. 3.2).
Свойство (3.34) позволяет в явном виде найти величину k для квадратичной функции.Теорема 3.7. Для квaдрaтичной функции(х) = 1/2<Aх,х>++c

величинak исчерпывaющего спускa в итерaционном процессе (3.31) будет равна
. (3.35)

Умножив равенство (3.31) слева на матрицу А квадратичной функции f (х) и прибавив к обеим частям вектор b, получим: Axk+1 + b = Axk + b + kApk . Учитывая, что градиент квадратичной функции равен f  (x) = Ax + b, имеем:

f  (xk+1) = f  (xk)+ kApk . Под­ставляя выражение для f  (xk+1) в равенство (3.34), получаем фор­мулу (3.35).

Определение 3.6. Направление вектора рk называется направле­нием убывания функции (х) в точке хk, если при всех достаточно ма­лых положительных  выполняется неравенство k +pk ) < k) .

В итерационном процессе (3.31) используются, как правило, на­правления убывания. Сформулируем признак направления убывания.

Теорема 3.8. Пусть функция (x) дифференцируема в точке хk . Если вектор pk удовлетворяет условию

, (3.36)

то направление вектора р является направлением убывания.

Из свойства дифференцируемой функции (3.8) и условия (3.36) следует, что = k), pk > + () = < 0 при всех достаточно малых  > 0, т.е. вектор рk задает направление убывания функции (х) в точке хk.

Геометрически условие (3.36) означает, что вектор рk составляет тупой угол с градиентом f (xk).

1   2   3   4   5   6   7   8   9   10

УПРАЖНЕНИЯ


  1. Убедиться в том, что последовательность { хk}, хk = является минимизирующей для функции (х) = (x1 + x2)/(1 + x12+ x22).

  2. Проверить, что последовательность { хk }: хk+1 = хk – kf ( хk) является минимизирующей для функции (х) = x12+ x22 , если:
а) k = 1/10;б) k= 1/(k+1).Установить скорость сходимости этой последовательности.

  1. Пусть множество U* точек минимума функции (х) в En непусто и ограничено. Доказать, что для сходимости любой минимизирующей последовательности { хk } к U* необходимо и достаточно, чтобы существовало число  > 0 такое, что множество U= { х | (х) < * + } ограничено ( *= (x) ).

  2. Выяснить, будет ли произвольная минимизирующая последователь­ность сходиться к множеству точек минимума функции (х), если:
(х) = x En ;б) (х) = ||х||, x En ;в) (х) = ||х||/(1+||х||)2 , x En.5. Для функции (х) = 4x12+ 4x22 – 6 x1x2 изобразить линию уровня (х)=(x1, x2) = (2,2) и векторы f '(2,2), f '(2,l), f '(1,–2), f '(–l, –1) с началом в точке (2, 2). Установить, какие из них задают направления убывания функции (х) в точке (2, 2). Выполнить по каждому из этих направлений один шаг ис­черпывающего спуска.3.4. ПРЯМЫЕ МЕТОДЫ БЕЗУСЛОВНОЙ МИНИМИЗАЦИИРассмотрим конкретные вычислительные алгоритмы решения задачи безусловной минимизации (х)  min, x En, которые опираются только на вычисление значений функции (х), т.е. прямые методы ми­нимизации. Важно отметить, что для их применения не требуется дифференцируемость целевой функции и даже ее аналитиче­ское задание. Нужно лишь иметь возможность вычислять или измерять значения