Дифференциальное и матричное исчисление

Ряд Тейлора и экстремумы

Приближения первого и второго порядка, и что вторая производная говорит о критической точке

Шаг 25 из 117 · ~26 мин

Приближение всё лучшего порядка

Производная давала линейное приближение. Вторая производная добавляет квадратичный член, третья — кубический, и так далее:

f(x+h)=f(x)+f(x)h+12f(x)h2+O(h3)f(x + h) = \htmlData{k=zero}{f(x)} + \htmlData{k=one}{f'(x)h} + \htmlData{k=two}{\tfrac{1}{2}f''(x)h^2} + O(h^3)

отвечает на «где мы», — на «куда наклонено», — на «как изогнуто». Дальше первых трёх членов в машинном обучении заходят редко: методы первого порядка используют два члена, второго — три.

Множитель 12\tfrac{1}{2} не украшение: он ровно тот, при котором вторая производная приближения совпадает с f(x)f''(x), поскольку дифференцирование h2h^2 даёт 2h2h.

Включите параболу Тейлора и подвигайте точку. Обратите внимание, насколько дальше парабола держится около функции, чем касательная:

x
0.5
f(x)
1.65
f'(x)
1.65
Все члены разложения в нуле равны 1 — отсюда знаменитый ряд 1 + x + x²/2 + …

Экстремумы: условия первого и второго порядка

Пусть f(x)=0f'(x^*) = 0 — точка критическая. Что там происходит, решает второй член. При f(x)=0f'(x^*) = 0 разложение принимает вид

f(x+h)f(x)+12f(x)h2f(x^* + h) \approx f(x^*) + \tfrac{1}{2}f''(x^*)h^2

Дальше просто:

  • f(x)>0f''(x^*) > 0: добавка положительна при любом h0h \ne 0локальный минимум;
  • f(x)<0f''(x^*) < 0: добавка отрицательна — локальный максимум;
  • f(x)=0f''(x^*) = 0: второй член ничего не решает, нужны старшие.

Последний случай — не редкость и не патология. У x3x^3 в нуле и первая, и вторая производные нулевые, а экстремума нет; у x4x^4 там же минимум. Отличить их вторым порядком невозможно.

В многомерном случае роль ff'' играет гессиан, а знак заменяется положительной определённостью — и здесь пригодится всё из урока про спектральную теорему. Это будет через три урока.

Зачем это в оптимизации

Оба главных метода оптимизации — это буквально Тейлор:

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

Формула шага Ньютона получается прямо из разложения: минимум f(x)+f(x)h+12f(x)h2f(x) + f'(x)h + \tfrac12 f''(x)h^2 по hh достигается при h=f(x)/f(x)h = -f'(x)/f''(x). В многомерном виде это H1f-H^{-1}\nabla f, и вся причина, по которой в глубоком обучении так не делают, — стоимость H1H^{-1}.

Практическая осторожность

Разложение Тейлора — локальное утверждение. Ряд может сходиться в маленьком круге, а вне него не значить ничего: попробуйте ln(1+x)\ln(1+x) в графике выше и отведите точку к x=1x = -1.

Отсюда практическое правило: любое рассуждение вида «разложим и оставим первый член» верно, пока шаг мал. Learning rate — это в точности параметр «насколько мы доверяем локальной модели», и его выбор сводится к этому вопросу.

Источники

Проверки

0 из 2
  1. Что говорит вторая производная

    В точке xx^* известно f(x)=0f'(x^*) = 0. Отметьте все верные утверждения.

  2. Приближение первого и второго порядка

    Реализуйте taylor(value, first, second, h) — верните список из двух чисел: приближение первого порядка и приближение второго порядка для f(x+h)f(x + h).

    Аргументы — это уже посчитанные f(x)f(x), f(x)f'(x) и f(x)f''(x):

    T1=f(x)+f(x)h,T2=f(x)+f(x)h+12f(x)h2T_1 = f(x) + f'(x)h, \qquad T_2 = f(x) + f'(x)h + \tfrac{1}{2}f''(x)h^2

    Задача арифметически тривиальна, и это сделано намеренно: смысл в том, чтобы сравнить два числа с истинным значением в объяснении ниже и увидеть, как быстро падает ошибка при уменьшении hh.

    функция taylor

    Загрузка редактора…

    Ctrl/⌘ + Enter