Как выпадение работает в тензорном потоке - PullRequest
0 голосов
/ 30 января 2020

как выпадение работает для 3D-ввода. например, для tf.nn.dropout(x, 0.1), если размер x равен 3-мерному размеру 2 * 10 * 10

, то применяется пропадание по каналам, значит, в каждом канале он случайным образом игнорирует 10 значений (так что в этом примере для первый канал случайным образом игнорирует 10, а для второго канала - 10) или применяется ко всему входу, значит, он случайным образом игнорирует 20 значений из целых 2 * 10 * 10 функций?

1 Ответ

0 голосов
/ 30 января 2020

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

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

Теперь рассмотрим глубокую нейронную сеть с 5 слоями с 3 скрытыми элементами: [7, 7, 3, 2, 1], где последний слой - это выходной слой. Теперь в этом примере мы можем добавить выпадение для каждого слоя, но вот как это меняется. При применении к первому слою, который имеет 7 единиц, мы используем скорость = 0,3, что означает, что мы должны отбрасывать 30% единиц из 7 единиц случайным образом. Для следующего слоя, который имеет 7 единиц, мы добавляем коэффициент отсева = 0,5, потому что здесь единицы предыдущего уровня 7 и единицы этого слоя 7 делают этот слой более подходящим для данных, поэтому мы отбрасываем 50% единиц. Для третьего уровня мы должны уменьшить скорость, потому что скрытые слои для третьего уровня - 7, а четвертый уровень - 3, что означает, что только несколько соединений. И теперь со следующими слоями нам не нужно применять выпадение, потому что в нем только несколько скрытых единиц.
Теперь мы можем применить выпадение для входного слоя, но это не часто. Если это может быть сделано, то скорость снижения будет почти 0,1 и меньше, чем это.

Это все из-за отсева. Я прошел курс глубокого обучения на Coursera, поэтому делюсь этой информацией с этими знаниями.

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