Якобианы — это горячая особенность математики, которая управляет машинным обучением.
Прежде чем приступить к работе с Jacobian, необходимо выполнить несколько предварительных условий для лучшего понимания темы
1. Линейная алгебра
2. Преобразование матриц
Pротагонист:
Линейное преобразование. Существует несколько свойств линейного преобразования, но один из основных моментов, который следует учитывать, заключается в том, что когда мы отображаем значения на плоскости, мы можем думать о прямых параллельных линиях, расположенных на равном расстоянии друг от друга, и это должны быть те же параллельные линии, расположенные на равном расстоянии друг от друга после преобразований.
Если мы рассмотрим функцию с несколькими переменными, мы можем представить любую функцию в терминах переменных:
Например: предположим, что у нас есть две функции для переменных x и y:
Для обеих функций f_{1} и f_{2} у нас есть два возможных движения: одно в направлении x, а другое в направлении y. Мы будем использовать наши фундаментальные знания математики, и небольшое движение в любом направлении может быть представлено частными производными.
Таким образом, для данных функций возможны следующие производные:
В направлении x:
Соответственно для f_{1} и f_{2}. Аналогично, в направлении Y:
Таким образом, наша матрица частных производных будет:
Тада!! которая называется просто Матрица Якоби. Это просто означает, что он содержит всю информацию о функциях по каждой переменной для небольшого изменения.
Если ничего не помогает, бессмертие всегда может быть обеспечено эффектной ошибкой.
Джон Кеннет Гэлбрейт
Бессмертие якобиана в машинном обучении
Требование: Основы машинного обучения (Learn from GOD Andrew NG)
Из предыдущих знаний мы делаем вывод, что якобиан помогает отслеживать все возможные комбинации производных всех функций и всех переменных. Вопрос в том, КАК В МАШИННОМ ОБУЧЕНИИ!!
Для лучшего понимания возьмем пример:
Предположим, у нас есть очень простая архитектура:
У нас есть ввод x и вывод y. a и b — скрытые слои, +b — смещенные. И последний мотив, стоящий за этим, — выяснить, насколько изменение ввода влияет на результат.
- Начальный шаг: рассмотрение слоя 1 a. Этот уровень полностью зависит от входной переменной x, которая передается двум функциям a_1 и a_2. Этоможет быть представлено как:
В якобианском формате выше термин представляет собой то, как изменение x влияет на изменение слоя a, и может быть переписано как:
Здесь нам нужно сосредоточиться на форме результирующей матрицы, которая равна 2 x 1. (Что касается одного входа x, у нас есть две функции a_1 и a_2 ). Аналогично для уровня 2, теперь выходные данные из a_1 идут вb_1 и b_2, а выходные данные из a_2 идут как ввод в b_1 и b_2 (ожидаемый результат должен быть 2 X 2):
В формате Якоби, приведенном выше, термин представляет собой то, как изменения в a влияют на изменение слоя b, и может быть переписан как:
Как мы видим, форма приведенного выше якобиана равна 2 X 2. Теперь мы перемещаем последний слой, который является выходным слоем. В этом слое выходные данные b поступают в качестве входных данных, поэтому их можно представить следующим образом:
Якобиан можно записать как:
Выходная форма последнего слоя равна 1 X 2. Если нам нужно найти изменение на выходе, если мы немного изменим входные данные, уравнение будет выглядеть так:
Затем мы сначала нашли изменение относительно изменения x. Тогда изменение b относительно изменения a. Наконец, изменение y относительно изменения b, которое можно легко рассчитать, просто перемножив якобианы.
что дает окончательную форму как 1 X 1 по формулам матричного умножения.
Это самое основное введение в якобианы, и его можно расширить. Счастливого обучения!!