Нихиль Будума - Основы глубокого обучения

Тут можно читать онлайн Нихиль Будума - Основы глубокого обучения - бесплатно ознакомительный отрывок. Жанр: Экономика, издательство Манн, Иванов и Фербер, год 2020. Здесь Вы можете читать ознакомительный отрывок из книги онлайн без регистрации и SMS на сайте LibKing.Ru (ЛибКинг) или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Нихиль Будума - Основы глубокого обучения
  • Название:
    Основы глубокого обучения
  • Автор:
  • Жанр:
  • Издательство:
    Манн, Иванов и Фербер
  • Год:
    2020
  • Город:
    Москва
  • ISBN:
    9785001464723
  • Рейтинг:
    3/5. Голосов: 11
  • Избранное:
    Добавить в избранное
  • Отзывы:
  • Ваша оценка:
    • 60
    • 1
    • 2
    • 3
    • 4
    • 5

Нихиль Будума - Основы глубокого обучения краткое содержание

Основы глубокого обучения - описание и краткое содержание, автор Нихиль Будума, читайте бесплатно онлайн на сайте электронной библиотеки LibKing.Ru
Глубокое обучение — раздел машинного обучения, изучающий глубокие нейронные сети и строящий процесс получения знаний на основе примеров. Авторы рассказывают об основных принципах решения задач в глубоком обучении и способах внедрения его алгоритмов.

Основы глубокого обучения - читать онлайн бесплатно ознакомительный отрывок

Основы глубокого обучения - читать книгу онлайн бесплатно (ознакомительный отрывок), автор Нихиль Будума
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать

Вы, возможно, недоумеваете: зачем утруждать себя функцией потерь, если проблему легко решить с помощью системы уравнений. В конце концов, у нас есть наборы неизвестных (весов) и уравнений (одно для каждого примера). Это автоматически даст нам ошибку, равную 0, если обучающие примеры подобраны удачно.

Хорошее замечание, но, к сожалению, актуальное не для всех случаев. Мы применяем здесь линейный нейрон, но на практике они используются редко, ведь их способности к обучению ограничены. А когда мы начинаем использовать нелинейные нейроны — сигмоиду, tanh или усеченный линейный, о которых мы говорили в конце предыдущей главы, — мы не можем задать систему уравнений! Так что для обучения явно нужна стратегия получше [9].

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

Визуализируем для упрощенного случая то, как свести к минимуму квадратичную ошибку по всем обучающим примерам. Допустим, у линейного нейрона есть только два входа (и соответственно только два веса — ww 2). Мы можем представить себе трехмерное пространство, в котором горизонтальные измерения соответствуют ww 2, а вертикальное — значению функции потерь E . В нем точки на горизонтальной поверхности сопоставлены разным значениям весов, а высота в них — допущенной ошибке. Если рассмотреть все ошибки для всех возможных весов, мы получим в этом трехмерном пространстве фигуру, напоминающую миску (рис. 2.2).

Рис 22 Квадратичная поверхность ошибки для линейного нейрона Эту - фото 22

Рис. 2.2. Квадратичная поверхность ошибки для линейного нейрона

Эту поверхность удобно визуализировать как набор эллиптических контуров, где минимальная ошибка расположена в центре эллипсов. Тогда мы будем работать с двумерным пространством, где измерения соответствуют весам. Контуры сопоставлены значениям ww 2, которые дают одно и то же E . Чем ближе они друг к другу, тем круче уклон. Направление самого крутого уклона всегда перпендикулярно контурам. Его можно выразить в виде вектора, называемого градиентом .

Пора разработать высокоуровневую стратегию нахождения значений весов, которые сведут к минимуму функцию потерь. Допустим, мы случайным образом инициализируем веса сети, оказавшись где-то на горизонтальной поверхности. Оценив градиент в текущей позиции, мы можем найти направление самого крутого спуска и сделать шаг в нем. Теперь мы на новой позиции, которая ближе к минимуму, чем предыдущая. Мы проводим переоценку направления самого крутого спуска, взяв градиент, и делаем шаг в новом направлении. Как показано на рис. 2.3, следование этой стратегии со временем приведет нас к точке минимальной ошибки. Этот алгоритм известен как градиентный спуск, и мы будем использовать его для решения проблемы обучения отдельных нейронов и целых сетей [10].

Рис 23 Визуализация поверхности ошибок как набора контуров Дельтаправило - фото 23

Рис. 2.3. Визуализация поверхности ошибок как набора контуров

Дельта-правило и темп обучения

Прежде чем вывести точный алгоритм обучения фастфудного нейрона, поговорим о гиперпараметрах . Помимо весов, определенных в нашей нейросети, обучающим алгоритмам нужен ряд дополнительных параметров. Один из этих гиперпараметров — темп обучения .

На каждом шаге движения перпендикулярно контуру нам нужно решать, как далеко мы хотим зайти, прежде чем заново вычислять направление. Это расстояние зависит от крутизны поверхности. Почему? Чем ближе мы к минимуму, тем короче должны быть шаги. Мы понимаем, что близки к минимуму, поскольку поверхность намного более плоская и крутизну мы используем как индикатор степени близости к этому минимуму. Но если поверхность ошибки рыхлая, процесс может занять много времени. Поэтому часто стоит умножить градиент на масштабирующий коэффициент — темп обучения. Его выбор — сложная задача (рис. 2.4).

Рис 24 Если темп обучения слишком велик возникают проблемы со сходимостью - фото 24

Рис. 2.4. Если темп обучения слишком велик, возникают проблемы со сходимостью

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

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

Применяя этот метод изменения весов при каждой итерации мы получаем - фото 25

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

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

В этом и следующем разделах мы будем говорить об обучении нейронов и нейросетей, использующих нелинейности. В качестве образца возьмем сигмоидный нейрон, а расчеты для других нелинейных нейронов оставим читателям как упражнение. Для простоты предположим, что нейроны не используют смещение, хотя наш анализ вполне можно распространить и на такой случай. Допустим, смещение — вес входа, на который всегда подается 1.

Напомним механизм, с помощью которого логистические нейроны вычисляют выходные значения на основе входных:

Нейрон определяет взвешенную сумму входящих значений логит z Затем он - фото 26

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

Кроме того как ни удивительно производная выходного значения по логиту - фото 27

Кроме того, как ни удивительно, производная выходного значения по логиту проста, если выразить ее через выходное значение:

Теперь можно использовать правило дифференцирования сложной функции чтобы - фото 28

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

Объединяя полученные результаты мы можем вычислить производную функции потерь - фото 29

Объединяя полученные результаты, мы можем вычислить производную функции потерь по каждому весу:

Читать дальше
Тёмная тема
Сбросить

Интервал:

Закладка:

Сделать


Нихиль Будума читать все книги автора по порядку

Нихиль Будума - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки LibKing.




Основы глубокого обучения отзывы


Отзывы читателей о книге Основы глубокого обучения, автор: Нихиль Будума. Читайте комментарии и мнения людей о произведении.


Понравилась книга? Поделитесь впечатлениями - оставьте Ваш отзыв или расскажите друзьям

Напишите свой комментарий
x