Обратное распространение ошибки на практике

Введение в глубокое обучение на Python

Dan Becker

Data Scientist and contributor to Keras and TensorFlow libraries

Обратное распространение ошибки

ch2_4_v2.002.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.003.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.004.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.010.png

Введение в глубокое обучение на Python

Вычисление градиентов для весов

  • Градиент для веса — это произведение:
    1. Значения узла, подающего сигнал на этот вес
    2. Производной функции активации для узла-получателя
    3. Производной функции потерь по выходному узлу
Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.016.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.017.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.018.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.019.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.020.png

Введение в глубокое обучение на Python

Обратное распространение ошибки

ch2_4_v2.021.png

Введение в глубокое обучение на Python

Обратное распространение: итоги

  • Начать со случайного набора весов
  • Выполнить прямое распространение для получения предсказания
  • Выполнить обратное распространение для вычисления градиентов функции потерь по каждому весу
  • Умножить градиент на скорость обучения и вычесть из текущих весов
  • Повторять цикл до достижения плоского участка
Введение в глубокое обучение на Python

Стохастический градиентный спуск

  • Градиенты часто вычисляют на подмножестве данных (батче)
  • Для следующего обновления используют другой батч
  • После использования всех данных цикл начинается заново
  • Один полный проход по обучающим данным называется эпохой
  • Вычисление градиентов по одному батчу за раз — стохастический градиентный спуск
Введение в глубокое обучение на Python

Давайте потренируемся!

Введение в глубокое обучение на Python

Preparing Video For Download...