2

Я видел несколько различных архитектур для сверточной нейронной сети (CNN). Я смущен, какой из них является стандартом, и как я могу решить, что использовать. Меня не смущает количество используемых слоев или количество задействованных параметров; Я смущен КОМПОНЕНТАМИ сети.Какова правильная архитектура для сверточной нейронной сети?

Пусть предположить:

CL = свертка слой SL = подвыборка слой (пулы) CM = свертка карты NN = нейронная сеть Softmax = SoftMax классификатора (аналог линейного классификатора)

  1. Архитектура 1 https://www.youtube.com/watch?v=n6hpQwq7Inw

    CL, SL, CL, SL, CM, Софтмакс

  2. Архитектура 2 (мы действительно нуждаемся в NN в конце снова делать?) http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=5605630&tag=1

    CL, SL, CL, SL, NN, Софтмакс

  3. Архитектура 3 Моя идея

    CL, SL, CL, SL, Softmax

ответ

4

Нет единой одномоментной архитектуры CNN. CNNs, как правило, предназначены для эффективного захвата функций входных данных. Предполагается, что эти функции являются иерархическими, то есть высокоуровневые функции сделаны из низкоуровневых. CNN - это просто фантастический алгоритм извлечения данных, вы можете поместить любой классификатор, который вы хотите, поверх него (NN, Softmax, что угодно).

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

Слой карты свертки не отличается от обычного сверточного слоя, я не уверен, что это обычное явление для этого различия. На самом деле, если вы хотите иметь дело с информацией о цвете, ваш вход (на первый уровень) будет не одним изображением, а несколькими (3, например) изображениями, каждая из которых будет отдельной графикой объектов.

Какой классификатор использовать в верхней части CNN полностью зависит от вас. Вы можете использовать Logistic Regression, SVM, NN или любой другой алгоритм классификации (или регрессии).