Производные: математический инструмент для описании реальности Простой 4 мин 3.6K Python * Habr Введение В прошлой статье о линейной регрессии я упомянул, что в будущем мы будем заниматься её оптимизацией. Однако, прежде чем перейти к этому, нам нужно разобраться с одной из ключевых концепций математического анализа — производной. В этой статье мы подробно разберём основы производной, не углубляясь в сложную математику. Мы начнём с базовых принципов, знакомых ещё со школьной программы, а затем перейдём к практической реализации дифференцирования функций на Python. Интуиция Приведу банальный, но показательный пример производной из реальной жизни. Спидометр в машине — это типичный пример применения производной. Когда автомобиль ускоряется (то есть его скорость увеличивается), стрелка на спидометре движется вправо. Если машина, наоборот, замедляется, стрелка уходит влево. Производная в этом контексте — это инструмент, который показывает, как изменяется скорость во времени. Давайте подробнее поговорим об этом в следующем разделе. Производная функции Функции есть почти везде и ими можно описать практически все. Так давайте опишем скорость изменения функции. Перед нами график некоторой функции. Наша цель — понять, как изменяется функция на интервале от точки A до точки B. Для этого проведём перпендикулярные линии из точек A и B к осям координат, чтобы определить их координаты: Точка A имеет координаты (x1,y1) Точка B имеет координаты (x2​,y2​) Для изменений x определим разность между значениями абсцисс (x-координат) точек B и A: \Delta x = x_2-x_1 Для изменений y определим разность между значениями ординат (y-координат) точек B и A: \Delta y = y_2 - y_1 Кстати, записи, которые мы использовали выше, имеют собственные названия: Разность значений x называется приращением аргумента. Разность значений y называется приращением функции. Но вопрос о формальном определении производной остается открытым, но теперь мы готовы его закрыть. Производная функции - это отношение приращения функции к приращении аргумента В математической записи, это выглядит как: f'(x) = \frac{\Delta y}{\Delta x} При этом: \Delta x\Rightarrow0 При это дельта x должна стремиться к нулю, чтобы вычисления были точнее. Геометрический смысл производной Мы рассмотрим геометрический смысл производной, так как он наиболее понятен на интуитивном уровне и не требует дополнительных знаний из математического анализа. В основе данного представления лежит идея о касательной к графику функции в точке, которая нас интересует. Чёрная кривая — это график нашей функции, а красная прямая — касательная в выбранной точке. Теперь давайте достроим прямоугольный треугольник, проведя линию от точки касания до оси xxx. У нас получается прямоугольный треугольник с углом a. Из предыдущего объяснения мы знаем, что производная — это отношение приращения функции к приращению аргумента. Если мы обозначим вертикальный (жёлтый) отрезок как y, а горизонтальный — как x, то мы фактически получаем определение тангенса угла в прямоугольном треугольнике, которое гласит, что тангенс угла — это отношение противоположного катета (в нашем случае y) к прилежащему катету (в нашем случае x). Делая вывод из всего сказанного в этом разделе, можно сделать вывод, о определении функции в геометрической интерпретации: Производная - это тангенс угла наклона касательной к графику функции в этой точке. Так же важно отметить, что взятие производной от функции, называется - дифференцирование Оператор дифференцирования Пройдусь кратко по этому разделу, так как он не требует больших объяснений. Допустим у нас есть функция: f(x) = x^2 Если мы хотим взять от неё производную, то одним из распространённых способов написать это является следующая математическая запись: \frac{d}{dx}(x^2)=2x Эта запись говорит, что мы хотим взять производную от функции f(x) = x^2 по ее аргументу x. Правила дифференцирования констант Взятие производной от функции вида: f(x) = 5 Можно записать в виде: \frac{d}{dx}(5)=0 Вообщем при взятии производной от любой константы дает ноль. Правила дифференциация степенной функции Если у вас функция вида: f(x)=x^n То взятие производной выглядит как то так: \frac{d}{dx}(x^n)=n*x^{n-1} Разберем дифференциацию функции: f(x)=x^4\frac{d}{dx}(x^4) = 4*x^3 Правила дифференцирования суммы Сумма производных функций - это сумма их производных \frac{d}{dx}(f(x)+g(x))=\frac{d}{dx}f(x) +\frac{d}{dx}g(x) Допустим у нас есть 2 функции: f(x) = x^3g(x) = 3x\frac{d}{dx}(x^3+3x)= \frac{d}{dx}(x^3)+\frac{d}{dx}(3x) = 3x^2+3 Решение частных производных через дерево решений Перед нами стоит задача взять производную от такой функции: v = 2x +3yx = 3a^2y=4b^2 Как взять такую производную: \frac{dv}{da} Для решения данного типа производных мы можем использовать метод "дерево решений". Сначала мы берем производную функции v от x, далее x от a, а потом получившиеся результаты умножаем: \frac{dv}{dx}=3\frac{dx}{da}=6a\frac{dv}{dx}*\frac{dx}{da} = 3*6a=18a Правила дифференциация экспоненты Если вы хотите взять производную от функции: f(x) = e^x Спешу вас обрадовать: производная от экспоненциальной функции равна самой функции, то есть: \frac{d}{dx}(e^x) = e^x Поздравляю, теперь вы поняли мем, который стоит на обложке этой статьи. Конечно это не все, есть еще куча функций, которые можно дифференцировать. По этой ссылке можете посмотреть все производные и найти те, которые вас интересуют. Правила дифференцирования на python Для вычислений производных я буду использовать библиотеку SymPy.