Важность узла смещения в нейронных сетях


19

Мне любопытно узнать, насколько важен узел смещения для эффективности современных нейронных сетей. Я легко могу понять, что это может быть важно в мелкой сети с несколькими входными переменными. Однако современные нейронные сети, такие как глубокое обучение, часто имеют большое количество входных переменных, чтобы решить, запущен ли определенный нейрон. Будет ли какое-либо реальное влияние иметь их простое удаление, например, из LeNet5 или ImageNet?


@ Gung - Я видел, что вы отредактировали заголовок, чтобы использовать фразу "узел смещения". Мне интересно, почему вы предпочитаете этот титул? Я никогда не слышал такого использования раньше. Более того, кажется странным использовать слово «узел», когда смещение не является отдельным узлом в сети.
пир

2
Если вам это не нравится, вы можете откатить редактирование с моими извинениями. Я всегда думал, что название было довольно стандартным, хотя я не играл w / ANN годами, и некоторые называют его «нейрон смещения». FWIW, «смещение» немного неоднозначно в статистике / ML; чаще всего это относится к оценщику, распределение выборки которого не центрировано на истинном значении параметра, или на прогнозирующей функции / прогнозируемом значении, которое отличается от истинной функции / среднего значения и т. д., тогда как узел смещения является специфической частью ЭНН.
gung - Восстановить Монику

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

Хорошо, это имеет смысл - это правда, что «предвзятость» довольно неоднозначна. Спасибо за объяснение.
пир

1
Для нейронов смещение кажется неожиданным, это происходит в природе.
user3927612

Ответы:


15

Удаление смещения определенно повлияет на производительность, и вот почему ...

Каждый нейрон похож на простую логистическую регрессию, и у вас есть . Входные значения умножаются на весовые коэффициенты, и смещение влияет на начальный уровень сжатия в сигмовидной функции (tanh и т. Д.), Что приводит к желаемой нелинейности.y=σ(Wx+b)

Например, предположим, что вы хотите, чтобы нейрон когда все входные пиксели черного цвета . Если нет смещения независимо от того, какой у вас вес , учитывая уравнение нейрон всегда будет .x 0 W y = σ ( W x ) y 0,5y1x0Wy=σ(Wx)y0.5

Следовательно, удалив термины смещения, вы существенно снизите производительность своей нейронной сети.


2
Спасибо, в этом есть какой-то смысл. Я предполагаю, что даже при том, что большинство современных сетей используют ReLU в качестве функции активации (см., Например, paper.nips.cc/paper/4824-imagenet ), это все равно может иметь значение, если сеть должна срабатывать, когда все входные пиксели черные. ReLU определяется как f (x) = max (0, x).
Пир

точно! это тот же случай ...
Яннис Ассаэль

4
График изображает активации сигмовидного нейрона с учетом ввода. Теперь предположим, что мы хотим, чтобы нейрон когда все пиксели черного цвета . Это было бы невозможно без члена смещения, и когда он всегда будет . x 0 x 0 y 0.5y1x0x0y0.5
Яннис Ассаэль

2
Хотя я согласен с теорией, стоит отметить, что с современными большими сетями шансы получить нулевой вход незначительны. Это также основывается на предположении, что сеть захочет запустить сети 1 - глубины, скорее всего, не будет заботиться о выходе одного нейрона - отчасти, поэтому отсев так популярен для регуляризации сетей.
Макс Гордон

2
@MaxGordon прав. Этот ответ не относится к этому вопросу. Попробуйте удалить смещение из большой сети, и вы увидите, что это мало что меняет.
Нил Дж

10

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

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


3

Я бы прокомментировал ответ @ NeilG, если бы у меня было достаточно репутации, но увы ...

Я не согласен с тобой, Нил, по этому поводу. Ты говоришь:

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

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

Если я не понимаю ваш ответ.

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