Функция отсева заключается в повышении надежности модели, а также в удалении любых простых зависимостей между нейронами.
Нейроны удаляются только для одного прохода вперед и назад по сети - это означает, что их веса синтетически установлены на ноль для этого прохода, и поэтому их ошибки также равны, что означает, что веса не обновляются. Выпадение также работает как форма регуляризации , так как несколько усложняет модель за ее сложность.
Я бы порекомендовал прочитать раздел Dropout в книге глубокого обучения Майкла Нильсена (бесплатно и онлайн), которая дает хорошую интуицию, а также содержит очень полезные схемы / объяснения. Он объясняет это:
Отсев - это принципиально иной метод регуляризации. В отличие от регуляризации L1 и L2, отсева не зависит от изменения функции стоимости. Вместо этого мы изменяем саму сеть.
Вот хорошая сводная статья . Из этой статьи:
Некоторые наблюдения:
- Выпадение заставляет нейронную сеть изучать более надежные функции, которые полезны в сочетании со многими различными случайными подмножествами других нейронов.
- Выпадение примерно удваивает количество итераций, необходимых для сходимости. Однако время тренировки для каждой эпохи меньше.
- С H скрытыми единицами, каждую из которых можно отбросить, мы имеем 2 ^ H возможных моделей. На этапе тестирования рассматривается вся сеть, и каждая активация уменьшается на коэффициент p.
пример
Представьте, что я прошу вас сделать мне чашку чая - вы всегда можете использовать свою правую руку, чтобы налить воду, свой левый глаз, чтобы измерить уровень воды, а затем снова свою правую руку, чтобы размешать чай ложкой. Это будет означать, что ваша левая рука и правый глаз служат небольшой цели. Использование выпадания, например, свяжет вашу правую руку за спиной - заставит вас использовать левую руку. Теперь, сделав мне 20 чашек чая, когда один глаз или одна рука выведены из строя, вы лучше научились пользоваться всем доступным. Возможно, позже вы будете вынуждены заваривать чай на крошечной кухне, где чайник можно использовать только левой рукой ... и после использования у вас есть опыт сделать это! Вы стали более устойчивыми к невидимым данным.
Выпадение фактически не удаляет нейроны, просто эти конкретные нейроны не играют никакой роли (не активируются) для данного пакета данных.
Пример. Предположим, что есть дорога из 8 полос движения. Когда прибывают грузовики, они проходят по полосам 1,2,4,6,7, когда приходят автомобили, они проходят по полосам 2,3,4,7,8, а когда появляются велосипеды. , они проходят по полосам 1,2,5,8. Таким образом, независимо от какого-либо транспортного средства, все полосы есть, но используются только некоторые из них.
Точно так же все нейроны используются во всей модели, но только определенное подмножество нейронов активируется для определенной партии данных. И модель не вырубается позже, сложность модели остается такой, как есть.
Зачем использовать отсев?
Как дано в книге глубокого обучения Яна Гудфеллоу,
Он также говорит:
Эта книга говорит
источник
Другой способ взглянуть на то, что делает выпадение, состоит в том, что он подобен предварительному сглаживанию для коэффициента для ковариаты (то есть некоторого сложного члена взаимодействия исходных ковариат с некоторыми сложными функциональными преобразованиями) в байесовской модели. Это интерпретация, предложенная Яриным Галом в его диссертации (см. Его список публикаций ).
Вот краткий аргумент о том, почему это так:
Зачем нам нужна пластинка с шипами? Это вызывает усреднение байесовской модели между нейтральной сетью без этого нейрона и одной с ней. Другими словами, это позволяет нам выразить неопределенность относительно того, действительно ли нейтральная сеть должна иметь свою полную возможную сложность, и соответствующим образом учитывает эту неопределенность в прогнозы. Это решает основную проблему способности нейтральных сетей приспосабливаться к данным (хотя, конечно, это не единственный возможный способ достичь этого).
источник
Выпадающий слой без разбора отбирает определенную часть нейронов, уменьшая репрезентативную способность рассматриваемой модели. Это препятствует тому, чтобы сеть соответствовала сложным нелинейным границам решения (то есть "шуму" в наборе данных), таким образом предотвращая (или улучшая) перенастройку.
источник
Выпуск помогает улучшить производительность модели машинного обучения по следующим причинам:
источник