Производные! Не бойся
Это полезно!
Дифференциальное исчисление имеет решающее значение для работы алгоритмов машинного обучения. Он предлагает нам правильные математические решения для оптимизации сложных целевых функций и многомерных входных данных.
Производное — это не что иное, как все, что изменяется с течением времени.
Введение
Составные функции или функции, созданные многочисленными функциями, изобилуют моделями глубокого обучения. Понимание цепного правила, которое вычисляет производные составных функций в моделях обучения, имеет решающее значение.
Цель
Цель состоит в том, чтобы подробно изучить цепное правило с использованием математических функций, а также закодировать цепное правило с самого начала и изучить результаты на графиках, сравнивая нормальные функции с производными, чтобы наблюдать, как меняется тренд.
Правило цепи
Цепное правило — это математическая теорема, которая вычисляет производную составных функций или функций, созданных путем вложения одной или нескольких функций.
рассмотрим f1 и f2 — две функции, в которых f1 получает x в качестве входных данных и производит выходные данные, которые затем передаются f2 для получения окончательных выходных данных y. f1f2 — математическое представление данной диаграммы.
Результат применения производных к составной функции следующий:
Здесь x — входные данные, а u — фиктивная переменная, представляющая входные данные функции.
В этой ситуации функции f1,f2 принимают один вход и производят один выход, а производная обозначена как u. Когда функции имеют несколько входных параметров, например x,y, мы используем df/dx и df/dy соответственно.
Производная сложной функции является произведением производных отдельных функций.
Код
При применении цепного правила должны присутствовать две функции, которые принимают один вход и производят один выход; две функции f1 и f2 являются квадратными и сигмовидными соответственно.
f2(f1(x)) — реализующая функция, вычисляющая математический эквивалент f1f2.
Правило цепочки вычислений для функции f1 и f2
(f2(f1(x)))’ = f2'(f1(x)) * f1'(x)
Создание равномерно распределенных значений с .01 от -5 до +5
вычисление выходных значений для f (x) = сигмоид (квадрат (x)) и f (x) = квадрат (сигмоид (x))
Когда движение общих функций направлено вверх, производная также положительна, как показано на графике выше. Когда функция применяется к плоским значениям, производная оказывается равной нулю. Производная отрицательна, когда функция наклонена вниз.
Мы создали простые функции только с одним входом и выходом. С другой стороны, модели глубокого обучения обычно состоят из длинной цепочки вложенных функций, содержащих дифференциальные функции. Они приводят к более сложным математическим расчетам.
Попробуй сам
Примените то же цепное правило для немного более длинной функции f1f2f3. Опубликуйте производную для f1f2f3 в разделе комментариев ниже.