Сверточная нейронная сеть — это большая шишка в машинном обучении. Возможно, вы слышали о «вычислительном зрении», «распознавании лиц», «обработке графики» и так далее — да! Они все исходят от CNN! Эти термины могут показаться пугающими, в то время как логику и концепции на самом деле несложно понять.

Полносвязная нейронная сеть и сверточная нейронная сеть

Прежде чем представить CNN, давайте рассмотрим, что такое нейронные сети. Нейронная сеть (или нейронные сети) — это инструмент моделирования, который ученый по машинному обучению использовал для обучения данных. В макроскопическом масштабе мы видим, что входные данные x (называемые сигналом в CNN), поступающие в модель, вычисляются с весами (называемыми ядром или фильтровать в CNN) и смещение (оба уже предварительно инициализированы), получать выходные данные, проверять и изменять веса и смещение в соответствии с результатами теста, а затем выполнять дальнейшие вычисления (в нескольких эпохах) до тех пор, пока ошибка не станет достаточно малой. Измененные веса и смещения являются наиболее ценным результатом работы этой массивной вычислительной машины.

На микроуровне мы видим, что эта гигантская модель представляет собой просто набор маленьких одинаковых шестеренок, называемых нейронами. Каждый нейрон отвечает за один крошечный бит вычислений и посылает сигнал детям, к которому подключен — идеальная аналогия человеческого мозга. Эти нейроны могут иметь несколько разные функции активации, такие как softmax, Sigmoid, ReLU,, но в основном то, что они делают, это просто вычисления, судя по активации уравнение, затем отправьте 1 с правильной логикой и 0 для False.

Каждый нейрон в нейронной сети мал, но объединенная сила выразительна! Их можно специально обучить выполнять на нем не только простые математические вычисления и логические операции, такие как вентиль И, НЕ, исключающее ИЛИ (что удивительно, поскольку он решает как линейные, так и нелинейные задачи), но и некоторые невообразимые задачи, такие как распознавание лиц и прогноз акций.

CNN — это просто один из типов уровня нейронной сети. В основном мы рассматриваем три типа нейронных сетей: один — сверточная (или Conv Net), как мы только что представили, другой называется Fully Connected Neural Network (или FC Net). . Мы поговорим об слое пула в следующих статьях.

Отличия и свойства

Каковы различия? Как следует из названия, сети FC полностью соединяют все блоки ввода и вывода, в то время как сети Conv не обязательно делают это. По сравнению с сетями FC, сети Conv соединяют только единицы таким образом, что сохраняются два свойства:

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

Возьмем, к примеру, этот стул. Каждое входное изображение представляет собой огромную коллекцию цветных пикселей. Например, входные данные — 256*256 пикселей с цветовыми каналами RGB 3, а выходные данные — 1000 единиц (считается типом стульев в наши дни), тогда между ними будет как минимум 256*256*1000 связей, даже без нейронов. слои. Вычисления будут гигантскими в нейронных сетях FC, потому что они не могут обнаруживать и повторно использовать доступные общие структуры, как это делают сети Conv. Кроме того, сети FC будут очень чувствительными, и их легко ввести в заблуждение деталями, такими как один и тот же стул разного цвета или разные стулья с одинаковым декором. Это делает нейронные сети FC непригодными для обработки изображений.

Вывод:

С большим дебютом CNN мы уже получили представление о том, что такое CNN и что делает его уникальным среди всех нейронных сетей. В следующих статьях я продолжу тему математики, лежащей в основе CNN, способов реализации в коде (Python, модель самообразования, PyTorch и Scikitlearn) и некоторых реальных проектов, чтобы выразить великую силу этой модели.

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