Загрузка страницы

Как обучить нейронную сеть?

Как обучить нейронную сеть? Что такое Loss, Градиентный Спуск и Backpropagation? Узнайте в этом видео!

Нейронные сети обучаются с помощью метода обучения с учителем (обучение на прецедентах, Supervised Learning). Для обучения нейросети нам понадобится обучающая выборка (набор данных, датасет), состоящая из пар [входной объект, известный правильный ответ].

Неявная задача нейронной сети – научиться обобщать, искать закономерности в данных. В противном случае будет переобучение (overfitting).

У сети есть обучаемые параметры (веса) и гиперпараметры, которые не обучаются (например, количество слоёв, количество нейронов и т. д.).

Введём понятие функция потерь (функция ошибок, Loss функция), которая характеризует то, как сильно нейронная сеть ошибается. Задача обучения – найти такие параметры (веса) нейронной сети, при которых функция ошибок минимальна. Другими словами, необходимо решить задачу оптимизации (минимизации ошибки относительно весов).

Для регрессии можно использовать Mean Squared Error (MSE), а для классификации (где используются распределения вероятностей) – кросс-энтропию (Cross Entropy).

Для поиска минимума функции можно использовать градиентный спуск. В этом методе итерационно вычисляется вектор градиента ошибки (частные производные ошибки по всем параметрам) и корректируются параметры по направлению антиградиента. Коэффициент при антиградиенте называется скорость обучения (Learning Rate).

Для обучения нейронных сетей используется стохастический градиентный спуск (SGD) и его модификации. Ошибка в нём вычисляется не по всей выборке, а по батчу (batch) – небольшой группе обучающих образцов.

Для вычисления градиента (частных производных) используется правило дифференцирования сложной функции (цепное правило, chain rule). При вычислении производной ошибки по весам нейросети мы движемся от ошибки назад (используя chain rule), поэтому такой алгоритм называется Обратное Распространение Ошибки (Backpropagation).

Меня зовут Дмитрий Коробченко, и на моём канале будет много чего интересного, так что подписывайтесь и нажимайте на колокольчик, чтобы ничего не пропустить: https://www.youtube.com/channel/UCh1n4S8xnt6glf3wZb0Rq7w?sub_confirmation=1

#Нейросети #ГлубокоеОбучение #ДмитрийКоробченко #НейронныеСети #МашинноеОбучение #ИскусственныйИнтеллект #ОбучениеНейросетей #ГрадиентныйСпуск #Backpropagation

Видео Как обучить нейронную сеть? канала Дмитрий Коробченко
Показать
Комментарии отсутствуют
Введите заголовок:

Введите адрес ссылки:

Введите адрес видео с YouTube:

Зарегистрируйтесь или войдите с
Информация о видео
18 января 2020 г. 18:50:55
00:08:26
Другие видео канала
Нейронные сети за 10 минутНейронные сети за 10 минутОбратное распространение ошибкиОбратное распространение ошибкиОбучение нейронной сети на PythonОбучение нейронной сети на PythonКак работает телепортация.Как работает телепортация.Нейронная сеть на Python с нуляНейронная сеть на Python с нуляСамые крутые нейросети которые можно опробовать уже сейчас!Самые крутые нейросети которые можно опробовать уже сейчас!Как достичь своих самых амбициозных целей (TED на русском)Как достичь своих самых амбициозных целей (TED на русском)Строим Нейронную Сеть для Распознавания Изображений за 20 минутСтроим Нейронную Сеть для Распознавания Изображений за 20 минутМАШИННОЕ ОБУЧЕНИЕ И АНАЛИЗ ДАННЫХ | Дмитрий Коробченко (NVIDIA)МАШИННОЕ ОБУЧЕНИЕ И АНАЛИЗ ДАННЫХ | Дмитрий Коробченко (NVIDIA)DEEP LEARNING | Обучение глубоких нейронных сетей | Дмитрий Коробченко (NVIDIA)DEEP LEARNING | Обучение глубоких нейронных сетей | Дмитрий Коробченко (NVIDIA)Нейросеть. Самый детальный гайд.Нейросеть. Самый детальный гайд.Делаю нейросеть с нуляДелаю нейросеть с нуляНЕЙРОННЫЕ СЕТИ | Дмитрий Коробченко (NVIDIA)НЕЙРОННЫЕ СЕТИ | Дмитрий Коробченко (NVIDIA)Как НА САМОМ ДЕЛЕ работает нейросеть?Как НА САМОМ ДЕЛЕ работает нейросеть?Учимся обучать нейронные сети, за 30 минут от теории до практики.Учимся обучать нейронные сети, за 30 минут от теории до практики.Машинное обучение: градиентный спуск для новичков с практикой в PythonМашинное обучение: градиентный спуск для новичков с практикой в Python[DeepLearning | видео 1] Что же такое нейронная сеть?[DeepLearning | видео 1] Что же такое нейронная сеть?НЕЙРОСЕТЬ своими руками за 10 минут на PythonНЕЙРОСЕТЬ своими руками за 10 минут на PythonКак обучить нейросеть на PyTorch / Перцептрон / Функции активацииКак обучить нейросеть на PyTorch / Перцептрон / Функции активацииКак я начал изучать нейросети и pythonКак я начал изучать нейросети и python
Яндекс.Метрика