Машинное обучение и нейронные сети - страница 56

 

Лекция 8.1 — Краткий обзор оптимизации без гессиана



Лекция 8.1 — Краткий обзор оптимизации без гессиана [Нейронные сети для машинного обучения]

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

При обучении нейронных сетей цель состоит в том, чтобы минимизировать ошибку. Оптимизатор определяет направление и расстояние, на которое нужно двигаться, чтобы добиться наибольшего уменьшения ошибки. Уменьшение зависит от отношения градиента к кривизне, предполагая квадратичную поверхность ошибки, которая вогнута вверх. Метод Ньютона устраняет ограничение наискорейшего спуска путем преобразования эллиптических поверхностей ошибок в круговые. Это делается путем умножения градиента на обратную матрицу кривизны, также известную как матрица Гессе. Однако обращение матрицы Гессе невозможно для больших нейронных сетей из-за ее размера. Чтобы преодолеть это, приближенные методы, такие как метод без Гессиана и L-BFGS, используют матрицы более низкого ранга для аппроксимации кривизны. Метод без гессиана аппроксимирует матрицу кривизны и использует сопряженный градиент — метод, который минимизирует ошибку в одном направлении за раз. Это позволяет избежать нарушения предыдущей минимизации, выбирая сопряженные направления, которые не изменяют градиенты предыдущих направлений.

Сопряженный градиент эффективно находит глобальный минимум n-мерной квадратичной поверхности за n шагов или меньше. Это достигается за счет уменьшения ошибки почти до минимального значения за гораздо меньшее количество шагов, чем n. Его можно применять непосредственно к неквадратичным поверхностям ошибок, например, в многослойных нейронных сетях, и он хорошо работает с большими мини-пакетами. Оптимизатор без гессиана сочетает в себе квадратичную аппроксимацию и сопряженный градиент, чтобы итеративно улучшить аппроксимацию истинной поверхности ошибок и приблизиться к минимуму.

Оптимизатор без гессиана сначала делает начальную квадратичную аппроксимацию истинной поверхности ошибки. Затем он применяет сопряженный градиент, чтобы минимизировать ошибку этого квадратичного приближения. Таким образом, он приближается к точке минимума в этом приближении. После этого оптимизатор делает новое приближение к матрице кривизны и повторяет процесс. Он продолжается итеративно, уточняя аппроксимацию и минимизируя ошибку, используя сопряженный градиент. Этот итеративный процесс помогает оптимизатору постепенно приближаться к истинному минимуму поверхности ошибок.

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

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

 

Лекция 8.2 — Моделирование символьных строк


Лекция 8.2 — Моделирование символьных строк [Нейронные сети для машинного обучения]

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

Моделирование строк символов сопряжено с уникальными проблемами, такими как работа с морфемами, разбиение слов на значимые единицы и работа с языками с агглютинативными свойствами. Сосредоточив внимание на моделировании на уровне символов, мы избегаем сложностей, связанных с предварительной обработкой текста в слова, и можем напрямую фиксировать шаблоны и информацию на уровне символов. Для этого мы используем рекуррентную нейронную сеть (RNN) с мультипликативными связями. RNN состоит из скрытых состояний, в данном случае 1500 скрытых единиц. Динамика скрытого состояния включает рассмотрение текущего символа и предыдущего скрытого состояния для вычисления нового скрытого состояния. Затем RNN пытается предсказать следующий символ, используя слой softmax, присваивая вероятности каждому возможному символу.

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

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

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

 

Лекция 8.4 — Эхо-сети состояний



Лекция 8.4 — Сети эхо-состояний [Нейронные сети для машинного обучения]

Сети эхо-состояний — это умный подход к упрощению процесса обучения в рекуррентных нейронных сетях (RNN). Они инициализируют соединения в RNN с резервуаром связанных осцилляторов, преобразуя входные данные в состояния осцилляторов. Затем на основе этих состояний можно предсказать выходной сигнал, и единственное, что требуется для обучения, — это связать выходной сигнал с генераторами. Это избавляет от необходимости изучать соединения скрытого со скрытым или соединения ввода со скрытым.

Для повышения производительности сетей состояний Echo на сложных задачах необходимо большое скрытое состояние. Сочетание тщательно разработанной инициализации сетей состояний Echo с обратным распространением во времени с импульсом может еще больше расширить их возможности. Еще одна недавняя идея в обучении рекуррентных нейронных сетей состоит в том, чтобы случайным образом фиксировать связи между скрытыми и сосредоточиться на обучении выходных связей. Этот подход похож на концепцию детекторов случайных признаков в нейронных сетях с прямой связью, где изучается только последний слой, что упрощает процесс обучения.

Успех сетей состояний Echo зависит от правильной настройки случайных соединений, чтобы избежать таких проблем, как исчезновение или взрыв. Спектральный радиус, который соответствует наибольшему собственному значению матрицы скрытых весов, должен быть установлен примерно равным единице, чтобы длина вектора активности оставалась стабильной. Также важна разреженная связность, когда большинство весов равны нулю, что позволяет сохранять информацию в определенных частях сети. Масштаб связей между входом и скрытым должен выбираться тщательно, чтобы управлять состояниями осцилляторов без стирания важной информации. Процесс обучения в сетях состояний Echo выполняется быстро, что позволяет экспериментировать с масштабами и разреженностью соединений для оптимизации производительности. Показан пример сети состояния эха, где входная последовательность задает частоту синусоидальной волны для выхода. Сеть учится генерировать синусоидальные волны, подбирая линейную модель, используя состояния скрытых единиц для прогнозирования правильного результата. Динамический резервуар в середине фиксирует сложную динамику, управляемую входным сигналом.

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

Илья Суцкевер исследовал инициализацию рекуррентной нейронной сети с помощью методов сети состояний Echo, а затем обучение ее с использованием обратного распространения во времени. Эта комбинация оказалась эффективным методом обучения рекуррентных нейронных сетей, позволяющим повысить производительность. Подход Ильи Суцкевера к объединению методов инициализации сетей состояний Echo с обратным распространением во времени (BPTT) дал многообещающие результаты в обучении рекуррентных нейронных сетей (RNN). Используя инициализацию сети состояний Echo, а затем применяя BPTT с такими методами, как RMSprop и импульс, Суцкевер обнаружил, что этот подход очень эффективен при обучении RNN.

Использование инициализации сети состояний Echo обеспечивает хорошую отправную точку для RNN, позволяя ей хорошо учиться даже путем обучения только скрытых соединений с выходом. Однако эксперименты Суцкевера показали, что дальнейшее улучшение производительности RNN может быть достигнуто за счет изучения весов от скрытых к скрытым. Комбинируя сильные стороны сетей состояний Echo и традиционных RNN, этот гибридный подход использует преимущества обоих методов. Инициализация сети с эхо-состоянием обеспечивает прочную основу, а BPTT обеспечивает точную настройку и оптимизацию производительности RNN. Успех этого подхода демонстрирует важность правильной инициализации при обучении RNN.

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

Сочетание инициализации сети состояний Echo и BPTT с методами оптимизации представляет собой мощный подход к обучению RNN. Он использует сильные стороны обоих методов для повышения эффективности обучения, производительности модели и точности прогнозирования.

 

Лекция 9.1 — Обзор способов улучшения обобщения



Лекция 9.1 — Обзор способов улучшения обобщения [Нейронные сети для машинного обучения]

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

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

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

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

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

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

В видео также упоминается n-кратная перекрестная проверка, метод, при котором данные делятся на n подмножеств, а модели обучаются и проверяются на различных комбинациях этих подмножеств для получения множественных оценок лучших метапараметров.

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

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

 

Лекция 9.2 — Ограничение размера гирь



Лекция 9.2 — Ограничение размера весов [Нейронные сети для машинного обучения]

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

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

Штрафной срок представлен как сумма квадратов весов, умноженных на коэффициент (лямбда), деленная на два. Дифференцируя функцию стоимости, мы обнаруживаем, что производная представляет собой сумму производной ошибки и члена, связанного с величиной веса и значением лямбда. Производная становится равной нулю, когда величина веса равна 1 больше лямбда, умноженной на величину производной. Таким образом, большие веса могут существовать только тогда, когда они также имеют существенные производные ошибки. Это свойство облегчает интерпретацию весов, поскольку меньше больших весов, оказывающих минимальное влияние.

Штраф за вес L2 не позволяет сети использовать ненужные веса, что приводит к улучшению обобщения. Кроме того, это приводит к более плавным моделям, в которых выходные данные изменяются более плавно при изменении входных данных. Для аналогичных входных данных штраф за вес распределяет вес равномерно, тогда как без штрафа весь вес может быть назначен одному входу.

Помимо штрафа L2, могут использоваться другие штрафы за вес, такие как штраф L1, который наказывает абсолютные значения весов. Этот тип штрафа приводит к тому, что многие веса равны нулю, что облегчает интерпретацию. Более экстремальные штрафы за вес могут применяться, когда градиент функции стоимости уменьшается по мере увеличения веса. Это позволяет сети поддерживать большие веса, не приближая их к нулю, вместо этого сосредотачивая штраф на малых весах.

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

Кроме того, ограничения по весу имеют тонкое влияние на штрафы. Когда единица достигает своего ограничения, эффективный штраф для всех весов определяется большими градиентами. Большие градиенты увеличивают длину входящего вектора веса, оказывая нисходящее давление на другие веса. Этот самомасштабирующийся штраф более эффективен, чем фиксированный штраф, который приближает нерелевантные веса к нулю. С точки зрения множителей Лагранжа штрафы можно рассматривать как требуемые множители для удовлетворения ограничений.

Использование ограничений по весу дает несколько преимуществ по сравнению со штрафами за вес. Легче выбрать подходящее значение для квадрата длины входящего вектора веса, чем определить оптимальный штраф за вес. Логистические единицы имеют естественную шкалу, что упрощает понимание значения веса, равного единице.

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

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

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

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

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

 

Лекция 9.3 — Использование шума в качестве регуляризатора



Лекция 9.3 — Использование шума в качестве регуляризатора [Нейронные сети для машинного обучения]

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

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

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

Таким образом, добавление шума в нейронные сети может быть полезной стратегией для контроля пропускной способности и улучшения обобщения. Вводя гауссов шум во входные данные, мы можем добиться эффекта, аналогичного штрафу за вес L2. Это усиливает дисперсию шума, основанную на квадратах весов, и вносит свой вклад в общую квадратичную ошибку. Шум в весах может быть особенно эффективен в более сложных сетях, таких как рекуррентные сети, что приводит к повышению производительности.

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

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

 

Лекция 9.4 — Введение в полный байесовский подход



Лекция 9.4 — Введение в полный байесовский подход [Нейронные сети для машинного обучения]

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

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

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

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

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

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

 

Лекция 9.5 — Байесовская интерпретация уменьшения веса



Лекция 9.5 — Байесовская интерпретация снижения веса [Нейронные сети для машинного обучения]

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

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

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

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

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

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

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

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

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

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

 

Лекция 9.6 — Быстрый и грязный метод Маккея



Лекция 9.6 — Быстрый и грязный метод Маккея [Нейронные сети для машинного обучения]

В этом видео я расскажу о методе, разработанном Дэвидом Маккеем в 1990-х годах для определения штрафов за вес в нейронной сети, не полагаясь на проверочный набор. Подход Маккея основан на интерпретации штрафов за вес как максимальной апостериорной оценки (MAP), где величина штрафа за вес связана с точностью априорного распределения по весам.

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

Теперь я опишу простой и практичный метод, разработанный Дэвидом Маккеем для использования интерпретации штрафов за вес как отношения двух отклонений. Изучив модель минимизации квадрата ошибки, мы можем определить наилучшее значение выходной дисперсии. Это значение получается с использованием дисперсии остаточных ошибок.

Мы также можем оценить дисперсию гауссовского априора для весов. Первоначально мы делаем предположение об этой дисперсии и приступаем к процессу обучения. Вот вам и «грязный трюк», называемый эмпирическим Байесом. Мы устанавливаем априорную дисперсию как дисперсию весов, которые изучила модель, потому что это делает эти веса наиболее вероятными. Хотя это нарушает некоторые допущения байесовского подхода, оно позволяет нам определить априор на основе данных.

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

Преимущество метода Маккея в том, что он не требует проверочного набора, что позволяет использовать для обучения все нетестовые данные. Кроме того, он позволяет включать множественные штрафы за вес, чего было бы сложно добиться с помощью наборов проверки.

Подводя итог методу, мы начинаем с угадывания отношения дисперсии шума и априорной дисперсии веса. Затем мы выполняем обучение градиентному спуску, чтобы улучшить веса. Затем мы обновляем дисперсию шума, чтобы она была дисперсией остаточных ошибок, а предыдущая дисперсия веса была дисперсией распределения изученных весов. Этот цикл повторяется многократно.

На практике было показано, что метод Маккея работает эффективно, и он добился успеха в нескольких соревнованиях, используя этот подход.

 

10.1 — Почему полезно комбинировать модели



10.1 — Почему это помогает комбинировать модели [Нейронные сети для машинного обучения]

В этом видео я расскажу о важности объединения нескольких моделей для прогнозирования. При использовании одной модели мы сталкиваемся с проблемой выбора подходящей емкости для нее. Если емкость слишком мала, модель не будет фиксировать закономерности в обучающих данных. С другой стороны, если емкость слишком высока, модель будет соответствовать ошибке выборки в конкретном обучающем наборе. Комбинируя несколько моделей, мы можем найти лучший баланс между соответствием истинным закономерностям и избеганием переобучения. Усреднение моделей вместе часто приводит к лучшим результатам по сравнению с использованием любой отдельной модели. Этот эффект особенно важен, когда модели делают разные прогнозы. Поощрение моделей делать разные прогнозы может быть достигнуто с помощью различных методов.

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

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

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

Для достижения различных прогнозов среди моделей могут использоваться различные подходы. Это включает в себя использование различных типов моделей, изменение архитектуры моделей, использование различных алгоритмов обучения и обучение моделей на различных подмножествах данных. Такие методы, как бэггинг и бустинг, также эффективны при создании разнообразных моделей. Бэггинг включает в себя обучение разных моделей на разных подмножествах данных, при этом повышая веса обучающих случаев по-разному для каждой модели. Эти методы способствуют повышению производительности при объединении моделей.

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