Конспект по «Машинному обучению». Математический анализ. Градиентный спуск

в 13:20, , рубрики: градиентный спуск, дифференциал, математика, математический анализ, машинное обучение, многомерная функция, нейронные сети, непрерывность, предел, производная

Конспект по «Машинному обучению». Математический анализ. Градиентный спуск - 1

Вспомним математический анализ

Непрерывность функции и производная

Пусть $inline$E subseteq mathbb{R}$inline$, $inline$a$inline$ — предельная точка множества $inline$E$inline$ (т.е. $inline$a in E, forall varepsilon > 0 spacespace |(a - varepsilon, a + varepsilon) cap E| = infty$inline$), $inline$f colon E to mathbb{R}$inline$.

Определение 1 (предел функции по Коши):

Функция $inline$f colon E to mathbb{R}$inline$ стремится к $inline$A$inline$ при $inline$x$inline$, стремящемся к $inline$a$inline$, если

$$display$$forall varepsilon > 0 spacespace exists delta > 0 spacespace forall x in E spacespace (0 < |x- a| < delta Rightarrow |f(x)- A| < varepsilon).$$display$$

Обозначение: $inline$limlimits_{E ni x to a}f(x) = A$inline$.

Определение 2:

  1. Интервалом $inline$ab$inline$ называется множество $inline$]a,b[ space := {x in mathbb{R}| a < x < b}$inline$;
  2. Интервал, содержащий точку $inline$x in mathbb{R}$inline$, называется окрестностью этой точки.
  3. Проколотой окрестностью точки называется окрестность точки, из которой исключена сама эта точка.

Обозначение:

  1. $inline$V(x)$inline$ или $inline$U(x)$inline$ — окрестность точки $inline$x$inline$;
  2. $inline$overset{circ}{U}(x)$inline$ — проколотая окрестность точки $inline$x$inline$;
  3. $inline$U_E(x) := E cap U(x), \ overset{circ}{U}_E(x) := E cap overset{circ}{U}(x)$inline$

Определение 3 (предел функции через окрестности):

$$display$$limlimits_{E ni x to a}f(x) = A := forall V_R(A) space exists overset{circ}{U}_E (a) spacespace (f(overset{circ}{U}_E (a)) subset V_R(A)).$$display$$

Определения 1 и 3 равносильны.

Определение 4 (непрерывность функции в точке):

  1. $inline$f colon E to mathbb{R}$inline$ непрерывна в $inline$a in E :=$inline$

    $$display$$= forall V(f(a)) spacespace exists U_E(a) spacespace (f(U_E(a)) subset V(f(a)));$$display$$

  2. $inline$f colon E to mathbb{R}$inline$ непрерывна в $inline$a in E :=$inline$

    $$display$$forall varepsilon > 0 spacespace exists delta > 0 spacespace forall x in E spacespace (|x-a| < delta Rightarrow |f(x)-f(a)| < varepsilon).$$display$$

Из определений 3 и 4 видно, что
($inline$f colon E to mathbb{R}$inline$ непрерывна в $inline$a in E$inline$, где $inline$a$inline$ — предельная точка $inline$E$inline$) $inline$Leftrightarrow$inline$
$inline$ Leftrightarrow (limlimits_{E ni x to a}f(x) = f(a)).$inline$

Определение 5:

Функция $inline$f colon E to mathbb{R}$inline$ называется непрерывной на множестве $inline$E$inline$, если она непрерывна в каждой точке множества $inline$E$inline$.

Определение 6:

  1. Функция $inline$f colon E to mathbb{R}$inline$, определённая на множестве $inline$E subset mathbb{R}$inline$, называется дифференцируемой в точке $inline$a in E$inline$, предельной для множества $inline$E$inline$, если существует такая линейная относительно приращения $inline$x-a$inline$ аргумента функция $inline$A cdot (x-a)$inline$ [дифференциал функции $inline$f$inline$ в точке $inline$a$inline$], что приращение $inline$f(x)-f(a)$inline$ функции $inline$f$inline$ представляется в виде

    $$display$$f(x)-f(a)=Acdot (x-a) + o(x-a) quad при space xto a, space xin E.$$display$$

  2. Величина

    $$display$$f'(a) = limlimits_{E ni x to a} frac{f(x)-f(a)}{x-a}$$display$$

    называется производной функции $inline$f$inline$ в точке $inline$a$inline$.

Также

$$display$$f'(x) = lim_{substack{h to 0 \ x+h, x in E}} frac{f(x+h)-f(x)}{h}.$$display$$

Определение 7:

  1. Точка $inline$x_0 in E subset mathbb{R}$inline$ называется точкой локального максимума (минимума), а значение функции в ней — локальным максимумом (минимумом) функции $inline$f colon E to mathbb{R}$inline$, если $inline$exists U_E(x_0)$inline$:

    $$display$$forall x in U_E(x_0) spacespace f(x) leq f(x_0)(соответственно, f(x) geq f(x_0)).$$display$$

  2. Точки локального максимума и минимума называются точками локального экстремума, а значения функции в них — локальными экстремумами функции.
  3. Точка $inline$x_0 in E$inline$ экстремума функции $inline$f colon E to mathbb{R}$inline$ называется точкой внутреннего экстремума, если $inline$x_0$inline$ является предельной точкой как для множества $inline$E_-={xin E | x < x_0}$inline$, так и для множества $inline$E_+={xin E | x > x_0}$inline$.

Лемма 1 (Ферма):

Если функция $inline$f colon E to mathbb{R}$inline$ дифференцируема в точке внутреннего экстремума $inline$x_0 in E$inline$, то её производная в этой точке равна нулю: $inline$f'(x_0)=0$inline$.

Утверждение 1 (теорема Ролля):
Если функция $inline$f colon [a,b] to mathbb{R}$inline$ непрерывна на отрезке $inline$[a,b]$inline$, дифференцируема в интервале $inline$]a,b[$inline$ и $inline$f(a)=f(b)$inline$, то найдётся точка $inline$xi in ]a,b[$inline$ такая, что $inline$f'(xi)=0$inline$.

Теорема 1 (теорема Лагранжа о конечном приращении):

Если функция $inline$fcolon[a,b] to mathbb{R}$inline$ непрерывна на отрезке $inline$[a,b]$inline$ и дифференцируема в интервале $inline$]a,b[$inline$, то найдётся точка $inline$xi in ]a,b[$inline$ такая, что

$$display$$f(b)-f(a) = f'(xi)(b-a).$$display$$

Следствие 1 (признак монотонности функции):
Если в любой точке некоторого интервала производная функции неотрицательная (положительная), то функция не убывает (возрастает) на этом интервале.

Следствие 2 (критерий постоянства функции):
Непрерывная на отрезке $inline$[a,b]$inline$ функция постоянна не нём тогда и только тогда, когда её производная равна нулю в любой точке отрезка $inline$[a,b]$inline$ (или хотя бы интервала $inline$]a,b[$inline$).

Частная производная функции многих переменных

Через $inline$mathbb{R}^m$inline$ обозначают множество:

$$display$$mathbb{R}^m = underbrace{mathbb{R} times mathbb{R} times cdots times mathbb{R}}_m = {(omega_1, omega_2, ..., omega_m), space omega_i in mathbb{R} spaceforall i in overline{1,m}}.$$display$$

Определение 8:

Функция $inline$f colon E to mathbb{R}$inline$, определённая на множестве $inline$E subset mathbb{R}^m$inline$, называется дифференцируемой в точке $inline$x in E$inline$, предельной для множества $inline$E$inline$, если

$$display$$f(x+h)-f(x)=L(x)h+alpha(x;h),qquad (1)$$display$$

где $inline$L(x) colon mathbb{R}^m to mathbb{R}$inline$ — линейная относительно $inline$h$inline$ функция [дифференциал функции $inline$f$inline$ в точке $inline$x$inline$ (обозн. $inline$df(x)$inline$ или $inline$f'(x)$inline$)], а $inline$alpha(x;h) = o(h)$inline$ при $inline$h to 0, x+h in E$inline$.

Соотношение (1) можно переписать в следующем виде:

$$display$$f(x+h)-f(x) = f'(x)h+alpha(x;h)$$display$$

или

$$display$$bigtriangleup f(x;h) = df(x)h + alpha(x;h).$$display$$

Если перейти к координатной записи точки $inline$x = (x^1, ..., x^m)$inline$, вектора $inline$h = (h^1, ..., h^m)$inline$ и линейной функции $inline$L(x)h = a_1(x)h^1 + ... + a_m(x)h^m$inline$, то равенство (1) выглядит так

$$display$$f(x^1 + h^1, ..., x^m + h^m)-f(x^1,...,x^m) = \ = a_1(x)h^1 + ... + a_m(x)h^m + o(h) quad при spacespace h to 0, qquad (2)$$display$$

где $inline$a_1(x), ..., a_m(x)$inline$ — связанные с точкой $inline$x$inline$ вещественные числа. Необходимо найти эти числа.

Обозначим

$$display$$h_i = h^ie_i = 0cdot e_1 + ... + 0cdot e_{i-1} + h^icdot e_i + 0cdot e_{i+1} + ... + 0cdot e_m,$$display$$

где $inline${e_1, ...,e_m}$inline$ — базис в $inline$mathbb{R}^m$inline$.

При $inline$h=h_i$inline$ из (2) получаем

$$display$$f(x^1, ..., x^{i-1}, x^i + h^i, x^{i+1}, ... ,x^m)-f(x^1,...,x^i,...,x^m) = \ = a_i(x)h^i + o(h^i) quad при spacespace h^i to 0. qquad (3)$$display$$

Из (3) получаем

$$display$$a_i(x) = lim_{h_i to 0} frac{f(x^1,...,x^{i-1}, x^i + h^i, x^{i+1}, .., x^m)-f(x^1,...,x^i,...,x^m)}{h^i}. qquad(4)$$display$$

Определение 9:
Предел (4) называется частной производной функции $inline$f(x)$inline$ в точке $inline$x = (x^1, ..., x^m)$inline$ по переменной $inline$x^i$inline$. Обозначается:

$$display$$frac{partial f}{partial x^i}(x), quad partial_if(x), quad f'_{x^i}(x).$$display$$

Пример 1:

$$display$$f(u,v) = u^3 + v^2 sin u, \ partial_1f(u,v) = frac{partial f}{partial u}(u, v) = 3u^2 + v^2cos u, \ partial_2 f(u,v) = frac{partial f}{partial v}(u, v) = 2vsin u.$$display$$

Конспект по «Машинному обучению». Математический анализ. Градиентный спуск - 2

Градиентный спуск

Пусть $inline$f colon mathbb{R}^n to mathbb{R}$inline$, где $inline$mathbb{R}^n = underbrace{mathbb{R} times mathbb{R} times cdots times mathbb{R}}_n = {(theta_1, theta_2, ..., theta_n), space theta_i in mathbb{R} spaceforall i in overline{1,n}}$inline$.

Определение 10:

Градиентом функции $inline$f colon mathbb{R}^n to mathbb{R}$inline$ называется вектор, $inline$i$inline$-й элемент которого равен $inline$frac{partial f}{partial theta_i}$inline$:

$$display$$bigtriangledown_{theta}f = left( begin{array}{c} frac{partial f}{partial theta_1}\frac{partial f}{partial theta_2}\vdots\frac{partial f}{partial theta_n} end{array} right), quadtheta = (theta_1, theta_2, ..., theta_n).$$display$$

Градиент — это то направление, в котором функция быстрее всего возрастает. А значит, направление, в котором она быстрее всего убывает, — это и есть направление, обратное градиенту, то есть $inline$-bigtriangledown_{theta}f$inline$.

Целью метода градиентного спуска является поиск точки экстремума (минимума) функции.

Обозначим через $inline$theta_t$inline$ вектор параметров функции на шаге $inline$t$inline$. Вектор обновления параметров на шаге $inline$t$inline$:

$$display$$u_t = -etabigtriangledown_{theta}f(theta_{t-1}), quad theta_t = theta_{t-1} + u_t.$$display$$

В формуле выше параметр $inline$eta$inline$ — это скорость обучения, которая регулирует размер шага, который мы делаем в направлении склона-градиента. В частности, могут возникать две противоположные друг другу проблемы:

  • если шаги будут слишком маленькими, то обучение будет слишком долгим, и повышается вероятность застрять в небольшом неудачном локальном минимуме по дороге (первое изображение на картинке ниже);
  • если слишком большие, можно бесконечно прыгать через искомый минимум взад-вперёд, но так и не прийти в самую нижнюю точку (третье изображение на картинке ниже).

Конспект по «Машинному обучению». Математический анализ. Градиентный спуск - 3

Список используемой литературы:

  • «Математический анализ. Часть 1», В.А. Зорич, Москва, 1997;
  • «Глубокое обучение. Погружение в мир нейронных сетей», С. Никуленко, А. Кадурин, Е. Архангельская, ПИТЕР, 2018.

Автор: Вячеслав

Источник

* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js