Плотные слои называются полностью связанными, потому что каждый нейрон в плотном слое связан с каждым нейроном в предыдущем слое. Это отличается от сверточных слоев, где нейроны подключены к небольшой области ввода. Подробнее о сверточных слоях можно узнать здесь:

Но прежде чем мы продолжим, нам нужно понять концепцию "выравнивания" или "изменения формы".

В контексте CNN сглаживание (или изменение формы) — это процесс преобразования многомерного тензора в одномерный массив.

Вы также можете прочитать мою предыдущую статью о объединении слоев.

Предположим, у нас есть выходные данные предыдущего слоя пула, которые имеют размер 11x11x98. Чтобы подготовить данные для плотного слоя, нам нужно преобразовать этот тензор в одномерный вектор, сохранив при этом общее количество элементов. В этом случае мы преобразовываем тензор в вектор, просто сглаживая данные как 11x11x98 = 11858. С помощью этой операции мы получаем вектор из 11858 элементов, который будет входом для нейронов в плотном слое.

Каждый элемент в сглаженном векторе соответствует определенной входной функции, и каждый нейрон в плотном слое получает входные данные от всех элементов в сглаженном векторе.

Снова плотный слой…

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