Необходимость оптимизации

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

Dan Becker

Data Scientist and contributor to Keras and TensorFlow libraries

Базовая нейронная сеть

ch2_1_v3.002.png

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

Базовая нейронная сеть

ch2_1_v3.003.png

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

Базовая нейронная сеть

ch2_1_v3.004.png

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

Базовая нейронная сеть

ch2_1_v3.005.png

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

Базовая нейронная сеть

ch2_1_v3.006.png

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

Базовая нейронная сеть

ch2_1_v3.007.png

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

Базовая нейронная сеть

ch2_1_v3.008.png

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

Базовая нейронная сеть

ch2_1_v3.009.png

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

Базовая нейронная сеть

ch2_1_v3.010.png

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

Предсказания для нескольких точек

  • С ростом числа точек точные предсказания делать сложнее
  • При любом наборе весов ошибка принимает множество значений
  • ... соответствующих точкам, для которых строятся предсказания
Введение в глубокое обучение на Python

Функция потерь

  • Агрегирует ошибки предсказаний по многим точкам в одно число
  • Измеряет качество предсказаний модели
Введение в глубокое обучение на Python

Функция потерь на основе квадратичной ошибки

ch2_1_v3.019.png

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

Функция потерь на основе квадратичной ошибки

ch2_1_v3.020.png

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

Функция потерь на основе квадратичной ошибки

ch2_1_v3.021.png

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

Функция потерь

ch2_1_v3.023.png

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

Функция потерь

ch2_1_v3.024.png

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

Функция потерь

ch2_1_v3.025.png

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

Функция потерь

  • Чем ниже значение функции потерь, тем лучше модель
  • Цель: найти веса, при которых функция потерь минимальна
  • Градиентный спуск
Введение в глубокое обучение на Python

Градиентный спуск

  • Представьте, что вы в кромешной темноте в поле
  • Нужно найти самую низкую точку
  • Нащупайте наклон поверхности под ногами
  • Сделайте небольшой шаг вниз по склону
  • Повторяйте, пока со всех сторон не пойдёт подъём
Введение в глубокое обучение на Python

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

  • Начните со случайной точки
  • Пока поверхность не станет плоской:
    • Найдите наклон
    • Сделайте шаг вниз по склону
Введение в глубокое обучение на Python

Оптимизация модели с одним весом

ch2_1_v3.042.png

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

Оптимизация модели с одним весом

ch2_1_v3.044.png

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

Оптимизация модели с одним весом

ch2_1_v3.045.png

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

Оптимизация модели с одним весом

ch2_1_v3.046.png

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

Оптимизация модели с одним весом

ch2_1_v3.047.png

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

Оптимизация модели с одним весом

ch2_1_v3.048.png

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

Оптимизация модели с одним весом

ch2_1_v3.049.png

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

Оптимизация модели с одним весом

ch2_1_v3.050.png

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

Оптимизация модели с одним весом

ch2_1_v3.051.png

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

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

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

Preparing Video For Download...