Telegram Group & Telegram Channel
#математика

↗️ Идея вот в чем. Если посчитать производную L по a1, а остальные переменные считать константами, получится так называемая частная производная L по a1. А вектор, координатами которого будут частные производные L по a1, a2, ... и ad - называется градиентом. Так вот оказывается, что градиент соответствует направлению наискорейшего роста функции. Т.е. если вам скажут чуть-чуть изменить коэффициенты a1, a2, ..., ad так, чтобы L выросла как можно сильнее - то надо менять их в направлении градиента.

💡 Какое это имеет отношение к нашей задачи поиска минимума? Самое прямое. Если вы хотите как можно быстрее уменьшить L, надо менять параметры в направлении антиградиента (градиент, умноженный на минус 1). Это породило простую идею: начинаем с некоторых случайных весов a1, a2, ..., ad, а дальше считаем антиградиент и меняем веса в его направлении, затем пересчитываем антиградиент уже с новыми весами, а потом снова меняем веса в направлении антиградиента и так до посинения. Ну ладно, не до посинения, а до момента, когда L уже существенно не уменьшается. Найденные значения коэффициентов и будут тем, что мы искали.

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

Что из математики при этом нужно знать вам? Если вы применяете ML алгоритмы как черные ящики, то почти ничего. А если вы претендуете на понимание их работы и умение все вывести и расписать - ну тогда достаточно уметь брать производные и знать, как перемежаются матрицы. В нейросетях еще потребуется не пугаться правила дифференцирования сложной функции (chain rule) и его версии для функции многих переменных (гуглим, что такое граф вычислений и как он связан с производной сложной функции) 🙂

А в следующий раз мы поговорим о том, что же нужно знать из теории вероятностей и математической статистики (и зачем).

P.S.: Если вы будете заниматься всякими теоретическими оценками в машинном обучении (если у вас нет математического образования - скорее всего не будете), например оценками обобщающей способности или доказательством того, что при определенных условиях все локальные минимумы ошибки нейросети являются глобальными, вам потребуются гораздо более глубокие вещи. Там найдется место и множествам меры нуль по Лебегу, и устойчивости по Ляпунову, но все это другая история, которой мы коснемся когда-нибудь в другой раз 🙂
🔥45👍2813💯9👏3🥰1



tg-me.com/kantor_ai/253
Create:
Last Update:

#математика

↗️ Идея вот в чем. Если посчитать производную L по a1, а остальные переменные считать константами, получится так называемая частная производная L по a1. А вектор, координатами которого будут частные производные L по a1, a2, ... и ad - называется градиентом. Так вот оказывается, что градиент соответствует направлению наискорейшего роста функции. Т.е. если вам скажут чуть-чуть изменить коэффициенты a1, a2, ..., ad так, чтобы L выросла как можно сильнее - то надо менять их в направлении градиента.

💡 Какое это имеет отношение к нашей задачи поиска минимума? Самое прямое. Если вы хотите как можно быстрее уменьшить L, надо менять параметры в направлении антиградиента (градиент, умноженный на минус 1). Это породило простую идею: начинаем с некоторых случайных весов a1, a2, ..., ad, а дальше считаем антиградиент и меняем веса в его направлении, затем пересчитываем антиградиент уже с новыми весами, а потом снова меняем веса в направлении антиградиента и так до посинения. Ну ладно, не до посинения, а до момента, когда L уже существенно не уменьшается. Найденные значения коэффициентов и будут тем, что мы искали.

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

Что из математики при этом нужно знать вам? Если вы применяете ML алгоритмы как черные ящики, то почти ничего. А если вы претендуете на понимание их работы и умение все вывести и расписать - ну тогда достаточно уметь брать производные и знать, как перемежаются матрицы. В нейросетях еще потребуется не пугаться правила дифференцирования сложной функции (chain rule) и его версии для функции многих переменных (гуглим, что такое граф вычислений и как он связан с производной сложной функции) 🙂

А в следующий раз мы поговорим о том, что же нужно знать из теории вероятностей и математической статистики (и зачем).

P.S.: Если вы будете заниматься всякими теоретическими оценками в машинном обучении (если у вас нет математического образования - скорее всего не будете), например оценками обобщающей способности или доказательством того, что при определенных условиях все локальные минимумы ошибки нейросети являются глобальными, вам потребуются гораздо более глубокие вещи. Там найдется место и множествам меры нуль по Лебегу, и устойчивости по Ляпунову, но все это другая история, которой мы коснемся когда-нибудь в другой раз 🙂

BY Kantor.AI


Warning: Undefined variable $i in /var/www/tg-me/post.php on line 283

Share with your friend now:
tg-me.com/kantor_ai/253

View MORE
Open in Telegram


Kantor AI Telegram | DID YOU KNOW?

Date: |

How Does Telegram Make Money?

Telegram is a free app and runs on donations. According to a blog on the telegram: We believe in fast and secure messaging that is also 100% free. Pavel Durov, who shares our vision, supplied Telegram with a generous donation, so we have quite enough money for the time being. If Telegram runs out, we will introduce non-essential paid options to support the infrastructure and finance developer salaries. But making profits will never be an end-goal for Telegram.

Kantor AI from us


Telegram Kantor.AI
FROM USA