Обмен технологиями

Алгоритм градиентного спуска глубокого обучения-НЛП (5)

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Введение в алгоритм градиентного спуска в глубоком обучении

Минимальная проблема поиска

Введение: Когда мы обучаем модель искусственного интеллекта, проще говоря, мы корректируем параметры модели на основе данных так, чтобыМодель прогнозирует то же значение, что и наши данные. .Но вначале все было по-другому, поэтому мыВведем функцию потерь, используйте его, чтобы вычислить, насколько велика разница, и как нам настроить параметры в исходной модели?

Почему! Цель настройки параметров исходной модели — сделать прогнозируемое значение таким же, как требуемое. Можно ли найти параметр модели, который минимизирует разрыв между рассчитанным прогнозируемым значением и требуемым значением? ===》Это проблема нахождения минимального значения

По сути, это поиск минимального значения функции потерь.

Найдите минимальное значение математически

Вставьте сюда описание изображения
Инструкции по разборке:
Цель: Найдите подходящее значение x, которое минимизирует f(x).
логика

1. Выберите любую точку x0 и вычислите значение производной f(x0) в этой точке.
2. По знаку производной решить, следует ли увеличить или уменьшить х0;Если производная положительна, уменьшите x, поскольку по мере ее увеличения у будет также увеличиваться, если производная отрицательна, увеличьте x;
3.迭代进行1,2步直到导数为0;或者导数变号了。
При каких обстоятельствах производная меняет знак?
那就函数的值,之前在减小,现在在增大了,所以导数就会编号,那么最小值就在其中(救赎之道,就在其中)

градиент

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

Исходная функция: y=5x^2
Производная функция: y= 10x
То есть, когда x=1, значение производной равно 10.

Многофункциональный

Тернарная функция: y=2x^2 + 6z^2 + 7m^3
Производная функция (т. е. решение в виде частной производной для трех неизвестных): y={4x,12z,21m^2}
Градиент в [1,1,1] равен [4,12,21] и градиент является вектором;

Все они являются производными от функций, и вы можете использовать производные для понимания градиентов.

алгоритм градиентного спуска

Определение: Алгоритм градиентного спуска — это логика, которая вычисляет градиент модели на основе входных данных, а затем обновляет исходные весовые параметры модели с помощью скорости обучения. Существует множество типов используемых алгоритмов, которые мы представим.
Вставьте сюда описание изображения

Поиск задачи минимального значения в процессе глубокого обучения

Общая блок-схема глубокого обучения

Следующая схематическая диаграмма представляет собой блок-схему глубокого обучения, в которой значение задачи поиска минимального значения соответствуетФункция потерь–>Оптимизатор–>Модель
Вставьте сюда описание изображения

Цель решения функции потерь

1. Чем меньше функция потерь, тем лучше модель.
2. Цель обучения – минимизировать функцию потерь.
3. Вес модели влияет на функцию потерь.
4. Найдите оптимальный вес с помощью градиентного спуска.

обновление веса

обновленная логика

1. Рассчитайте прогнозируемое значение y1 на основе входных данных x и текущего веса модели.
2. Используйте функцию потерь для расчета потерь на основе y1 и y.
3. Рассчитать градиент веса модели с учетом потерь
4. Используйте градиент и скорость обучения, чтобы настроить вес модели в соответствии с оптимизатором.

Метод обновления:

1. Рассчитайте градиент (накопление) всех образцов вместе. Градиентный спуск.
2. Используйте по одному образцу для расчета градиента. Стохастический градиентный спуск.
3. Каждый раз используйте n образцов для расчета градиента (накопления). Мини-пакетный градиентный спуск.