Краткое введение в слои CNN

В этом тексте кратко описаны цели различных слоев в сверточных нейронных сетях (также известных как CNN). CNN в основном используются для обработки изображений и считаются лучшим способом распознавания изображений. Он состоит из ряда сверточных, RELU (нелинейных фильтров), объединенных и полносвязных слоев (плотный слой). Дизайн CNN может комбинировать эти уровни, и производительность будет варьироваться в зависимости от архитектуры.

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

Слой RELU, который в основном применяет нелинейную функцию. Подумайте об этом так: если бы CNN была линейной комбинацией весов и входных данных (матрица изображения), то мы не смогли бы изучить нелинейные отношения. Это будет основная проблема типа линейной регрессии. Хорошо, но почему мы выбираем RELU вместо сигмоиды, гиперболического тангенса (тангенса) или любой другой нелинейной функции? Ответ будет заключаться в меньшем количестве проблем с исчезающим градиентом, которые нас больше всего интересуют, поскольку при обратном распространении мы не хотим иметь нули для наших весов.

Я не знаю, что такое обратное распространение? Мы строим модель, которая будет классифицировать изображения. У нас должна быть метрика для оценки того, насколько хороша модель. Модель имеет некоторые веса, как и в линейной регрессии (бета), но намного больше. И мы должны найти эти веса, вернувшись к нашей архитектуре и попытавшись оптимизировать ее, чтобы у нас было меньше ошибок.

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

Полностью связанный или плотный слой, как следует из названия, он будет полностью подключен, принимая все выходные функции из комбинации сверточных слоев, RELU и слоев пула и сопоставляя их с классами (вероятностями).

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

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

Пожалуйста, посетите мой профиль Linkedin по адресу



и связывайся со мной!