Модель нейронной сети: краткое введение, глоссарий и обратное распространение

Опубликовано: 2020-05-22

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

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

Оглавление

Что такое нейронная сеть?

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

Термин «нейронный» происходит от слова «нейрон», которым обозначают одну нервную клетку. Правильно — нейронная сеть по сути означает сеть нейронов, которые выполняют простые действия в нашей повседневной жизни.

Распознавание образов, обнаружение объектов и интеллект — основные аспекты проблем, с которыми мы сталкиваемся каждый день. Хотя они выполняются с такой легкостью, что мы даже не осознаем, правда в том, что эти реакции трудно автоматизировать.

Пример:

  • Дети запоминают, как выглядит яблоко
  • Животное узнает свою мать или хозяина
  • Восприятие того, является ли что-то горячим или холодным

Наши нейронные сети выполняют эти сложные вычисления.

Теперь люди смогли построить вычислительную систему, которая может работать так же, как наша нервная система. Они называются искусственными нейронными сетями (ИНС).

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

Давайте подробно узнаем об ANN в следующем разделе.

Читайте: Учебное пособие по обнаружению объектов TensorFlow для начинающих

Что такое модель искусственной нейронной сети?

Многослойная, полностью связанная нейронная сеть, содержащая входной слой, скрытые слои и выходной слой, называется искусственной нейронной сетью или ИНС.

Изображение ниже представляет ANN.

Источник

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

По мере увеличения количества скрытых слоев сеть становится глубже.

Давайте посмотрим, как выглядит отдельный узел в выходном или скрытом слое.

Источник

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

Этот выход узла становится входом узла в следующем слое.

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

Вот как выглядит уравнение узла.

Источник

В приведенном выше уравнении b — это смещение. Это вход для всех узлов и всегда имеет значение 1.

Смещение помогает сместить результат функции активации влево или вправо.

Глоссарий модели искусственной нейронной сети

Давайте рассмотрим основные термины, которые вы должны знать, когда дело доходит до модели искусственной нейронной сети.

Входы

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

Обучающий набор

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

Выходы

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

Нейрон

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

Как обсуждалось ранее, каждый нейрон получает часть входных данных и передает их через нелинейную функцию активации узлу на следующем уровне. Эти функции активации могут быть TanH, сигмовидными или ReLu. Нелинейность этих функций помогает обучать сеть.

Весовое пространство

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

Что такое обратное распространение в модели нейронной сети?

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

  • Сначала активации должны распространяться вверх или в прямом направлении.
  • Теперь производные функции стоимости должны распространяться в нисходящем или обратном направлении.

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

Заключение

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

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

Если вам интересно узнать больше о машинном обучении, ознакомьтесь с дипломом PG IIIT-B и upGrad в области машинного обучения и искусственного интеллекта, который предназначен для работающих профессионалов и предлагает более 450 часов тщательного обучения, более 30 тематических исследований и заданий, IIIT- Статус B Alumni, более 5 практических практических проектов и помощь в трудоустройстве в ведущих фирмах.

Зачем нужно изучать математику для искусственного интеллекта?

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

Является ли нейронная сеть алгоритмом в машинном обучении?

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

Зачем нужно обратное распространение в нейронных сетях?

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