Изменения

Перейти к: навигация, поиск

Batch-normalization

121 байт добавлено, 11:51, 10 января 2019
Примеры
==Примеры==
[[Файл:bn_exp_1.png|800px|thumb|Точность распознавания в зависимости от итерации обучения. Оранжевая кривая изображает результаты для модели с использованием нормализации батчей, синяя кривая {{---}} без.]]
[[Файл:bn_exp_2.png|800px|thumb|Точность распознавания в зависимости от итерации обучения c использованием сигмоиды в качетсве функции активации.]]
Приведем пример демонстрирующий работу нормализации батчей. Рассмотрим задачу распознавания рукописных цифр на известном датасете MNIST. Для решения задачи будет использоваться обычная нейронная сеть с <tex>3</tex> скрытыми полносвязными слоями по <tex>100</tex> узлов в каждом. Функция активации {{---}} ReLU. Выходной слой содержит <tex>10</tex> узлов. Размер батча равен <tex>60</tex>. Сравнивается две одинаковые модели, но в первой перед каждым скрытым слоем используется нормализация батчей, а во второй {{---}} нет. Коэффициент скорости обучения равен <tex>0.01</tex>. Веса инициализированы значениями с малой дисперсией. На рисунке изображены два графика, показывающий разницу между моделями. Как видно, обе модели достигли высокой точности, но модель с использованием нормализации батчей достигла точности более <tex>90\%</tex> быстрее, почти сразу, и достигла максимума, примерно, уже на <tex>10000</tex> итераций. Однако, модель без нормализации батчей достигла скорости обучения примерно <tex>510</tex> батчей в секунда, а модель с использованием нормализации батчей {{---}} <tex>270</tex>. Однако, как можно видеть, нормализация батчей позволяет выполнить меньшее количество итераций и, в итоге, сойтись за меньшее время.
На следующем рисунку изображен график, сравнивающий точно такие же модели, но с использованием сигмоиды в качестве функции активации.[[Файл:bn_exp_2.png|800px|thumb|Точность распознавания в зависимости от итерации обучения c использованием Использование сигмоиды в качетсве качестве функции активациитребует большего времени, чтобы начать обучение модели.]] На следующем рисунку изображен графикВ итоге, сравнивающий точно такие же моделимодель обучается, но с использованием коэффициента скорости обучения равным на это потребовалось более <tex>45000</tex> итераций, чтобы получить точность более <tex>180\%</tex>.[[Файл:bn_exp_3.png|800px|thumb|Точность распознавания в зависимости от итерации обучения c коэффициентом скорости обучения равным При использовании нормализации батчей получилось достичь точность более <tex>90\%</tex> примерно за <tex>11000</tex>итераций.]]
==Реализации==
210
правок

Навигация