Полный обзор искусственных нейронных сетей (ИНС)

Опубликовано: 2020-07-17

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

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

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

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

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

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

Иерархия ИНС


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

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

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

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

нейронная сеть

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

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

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

Диаграмма визуализации ИНС

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

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

«Сеть, смоделированная по образцу человеческого мозга, путем создания искусственной нейронной системы с помощью компьютерного алгоритма распознавания образов, который учится, интерпретирует и классифицирует сенсорные данные».

Как работают и учатся искусственные нейронные сети?

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

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

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

Возьмем, к примеру, цену шоколада и количество конфет. Предположим, что одна шоколадка стоит 1 доллар. Сколько будет стоить 100 шоколадок? Вероятно, 100 долларов. Сколько будет стоить 10000 шоколадок? Не 10 000 долларов; потому что либо продавец добавит стоимость использования дополнительной упаковки, чтобы собрать все шоколадные конфеты вместе, либо он уменьшит стоимость, поскольку вы перемещаете так много ее запасов из ее рук за один раз. Это концепция нелинейности.

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

  • Функция бинарного шага: эта функция активирует нейрон на основе порога. Если функция имеет конечный результат, который выше или ниже эталонного значения, нейрон активируется.
  • Логистическая функция: эта функция имеет математический конечный результат в форме кривой «S» и используется, когда вероятности являются ключевыми критериями для определения того, следует ли активировать нейрон. Таким образом, в любой точке можно вычислить наклон этой кривой. Значение этой функции находится между 0 и 1.

    Уклон рассчитывается с использованием дифференциальной функции. Эта концепция используется, когда две переменные не имеют линейной зависимости. Наклон — это значение касательной, которая касается кривой именно в той точке, где проявляется нелинейность. Проблема с логистической функцией заключается в том, что она не подходит для обработки информации с отрицательными значениями.
  • Функция гиперболического тангенса: она очень похожа на логистическую функцию, за исключением того, что ее значения находятся в диапазоне от -1 до +1. Таким образом, проблема с тем, что отрицательное значение не обрабатывается в сети, уходит.
  • Выпрямленные линейные единицы (ReLu): значения этой функции лежат в диапазоне от 0 до положительной бесконечности. ReLu упрощает несколько вещей — если вход положительный, он даст значение «x». Для всех остальных входных данных значение будет равно «0». Вы можете использовать Leaky ReLu со значениями между отрицательной бесконечностью и положительной бесконечностью. Он используется, когда связь между обрабатываемыми переменными очень слабая и может вообще не учитываться функцией активации.

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

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

Даже проделав всю эту математику и поняв, как работает скрытый слой, вам может быть интересно, как на самом деле обучается искусственная нейронная сеть? Давайте начнем с основного вопроса о том, что такое обучение. Проще говоря, обучение — это установление причинно-следственной связи между двумя вещами (деятельностью, процессом, переменными и т. д.). Когда вы «научитесь» бросать крученый мяч, вы устанавливаете причинно-следственную связь между физическим действием броска мяча определенным образом и тем, что траектория мяча изгибается определенным образом.

Так вот, эту причинно-следственную связь очень трудно установить. Помните поговорку: корреляция не равна причинно-следственной связи? Довольно легко определить, когда две переменные движутся в одном и том же направлении. Очень трудно сказать с абсолютной уверенностью, какая переменная вызывает движение какой переменной. Очевидно, мы часто можем установить это интуитивно; но как заставить алгоритм понимать интуицию?

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

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

С каждым циклом мы стремимся минимизировать функцию стоимости. Процесс перехода от входа к выходу называется прямым распространением. А процесс использования выходных данных для минимизации функции стоимости путем корректировки веса в обратном порядке от последнего скрытого слоя к входному слою называется обратным распространением.

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

Рекуррентные нейронные сети (RNN) и сверточные нейронные сети (CNN)

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

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

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

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

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

сверточная функция
Сверточная функция
функция объединения

Функция объединения

5 приложений искусственных нейронных сетей

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

1. Персонализируйте рекомендации на платформах электронной коммерции

Одним из первых применений ИНС была персонализация платформы электронной коммерции для каждого пользователя. Помните действительно эффективные рекомендации на Netflix? Или в самый раз правильный продукт предлагает Amazon? Они являются результатом ANN.

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

2. Использование обработки естественного языка для разговорных чат-ботов

Не так давно чаты начали набирать обороты на веб-сайтах. Агент будет сидеть с одной стороны и помогать вам с вашими запросами, введенными в поле. Затем в чат-боты было введено явление, называемое обработкой естественного языка (NLP), и все изменилось.

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

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

3. Прогнозирование исхода громкого события

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

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

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

4. Кредитные санкции

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

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

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

5. Беспилотные автомобили

Tesla, Waymo и Uber используют аналогичные ИНС. Исходные данные и разработка продукта могли отличаться, но они использовали сложные визуальные вычисления, чтобы сделать беспилотные автомобили реальностью.

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

Вывод

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

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