Разве несколько фильтров в сверточном слое не будут учить один и тот же параметр во время тренировки?


11

Основываясь на том, что я узнал, мы используем несколько фильтров в Conv Layer CNN для изучения различных детекторов функций. Но так как эти фильтры применяются одинаково (то есть скользят и умножаются на области ввода), разве они не изучат одни и те же параметры во время обучения? Следовательно, использование нескольких фильтров было бы излишним?

Ответы:


6

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

так как эти фильтры применяются аналогично

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

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

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


Спасибо, что ответили. Что именно делает их разными? Как мы можем гарантировать, что они изучают различные параметры во время обучения? Это их начальные значения?
Cjbayron

1
разные значения каждой ячейки делают их разными. Как некоторые обнаружат наклонную линию, некоторые обнаружат 45-градусную кривую и т. Д. Так что все они разные.
Железный человек

1
Да, я понимаю, что разные значения заставляют фильтры обнаруживать разные функции. Но как эти фильтры учатся по-разному во время тренировки?
cjbayron

3
Если все фильтры запускаются одинаково, они останутся такими же. Случайная инициализация означает, что они начинают по-разному, и оттуда они изучают разные вещи. Ищите нарушение симметрии в нейронных сетях для получения дополнительной информации.
Аарон

4

Я нашел ответ на этот вопрос: https://www.quora.com/Why-does-each-filter-learn-different-features-in-a-convolutional-neural-network

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

Спасибо за ответы. Ценить это :)

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