В чем разница между удалением и отключением соединения?


24

В чем разница между удалением и отключением соединения?

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

Но не является ли удаление соединений эквивалентным удалению скрытых узлов? Разве узлы (или соединения) не являются просто набором весов?

Ответы:


24

DropOut и DropConnect - оба метода, предназначенные, чтобы предотвратить "совместную адаптацию" единиц в нейронной сети. Другими словами, мы хотим, чтобы юниты независимо извлекали объекты из своих входных данных, а не полагались на это для других нейронов.

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

образец сети 5-4-3

Выбывать

Чтобы применить DropOut, мы случайным образом выбираем подмножество единиц и ограничиваем их вывод в ноль, независимо от ввода; это эффективно удаляет эти единицы из модели. Различное подмножество единиц выбирается случайным образом каждый раз, когда мы представляем учебный пример.

Ниже приведены две возможные конфигурации сети. В первой презентации (слева) 1-й и 3-й блоки отключены, но 2-й и 3-й блоки были выбраны случайным образом при следующей презентации. Во время тестирования мы используем всю сеть, но масштабируем веса, чтобы компенсировать тот факт, что все они теперь могут стать активными (например, если вы отбросите половину узлов, веса также должны быть уменьшены вдвое).

Примеры DropOut

DropConnect

DropConnect работает аналогично, за исключением того, что мы отключаем отдельные веса (т. Е. Устанавливаем их на ноль) вместо узлов, чтобы узел мог оставаться частично активным. Схематически это выглядит так:

DropConnect

сравнение

Оба эти метода работают, потому что они позволяют эффективно обучать несколько моделей одновременно, а затем усреднять их для тестирования. Например, желтый слой имеет четыре узла и, следовательно, 16 возможных состояний DropOut (все включены, # 1 отключен, # 1 и # 2 отключены и т. Д.).

DropConnect является обобщением DropOut, потому что он производит даже больше возможных моделей, поскольку почти всегда больше соединений, чем единиц. Тем не менее, вы можете получить аналогичные результаты в отдельном исследовании. Например, сеть DropConnect справа фактически отбросила Блок № 2, так как все входящие соединения были удалены.

Дальнейшее чтение

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


6

Да, но они немного отличаются с точки зрения снижения веса.

Это формулы DropConnect (слева) и dropout (справа).

введите описание изображения здесь введите описание изображения здесь

Таким образом, dropout применяет маску к активациям, а DropConnect применяет маску к весам.

В документе DropConnect говорится, что это обобщение отсева в том смысле, что

DropConnect - это обобщение Dropout, в котором каждое соединение, а не каждый выходной блок, как в Dropout, может быть сброшено с вероятностью p.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.