Всё, что вам нужно знать о машинном обучении ANN
Чтобы понять, что такое ANN (искусственная нейронная сеть), сначала нужно понять, что представляет собой нейронная сеть. Как и ваш мозг, нейронные сети состоят из множества взаимосвязанных нейронов. Многие приложения используют нейронные сети для моделирования неизвестных взаимосвязей между различными параметрами на основе большого количества примеров
Классификация рукописных цифр, распознавание речи и прогнозирование цен на акции — несколько ярких примеров успешного применения нейронных сетей.
В 1943 году американский нейрофизиолог и кибернетик Уоррен С. Маккаллок (человек, который изобрел искусственные нейронные сети) создал первую концептуальную модель искусственной нейронной сети, согласно которой нейрон называется «логическим исчислением идей, имманентных нервной активности». По сути, это отдельная клетка в сети клеток, которая получает входные данные, обрабатывает их и генерирует выходные данные.
Эта статья от Zilliz, ведущего поставщика технологий vector database и ИИ, дает всестороннее понимание машинного обучения ANN и того, как оно работает.
Что такое искусственная нейронная сеть?
Определение искусственной нейронной сети
Искусственная нейронная сеть (ANN) состоит из входного слоя, нескольких скрытых слоев и выходного слоя, которые вместе образуют базовую структуру нейронной сети. Каждый узел в одном слое связан с каждым узлом в следующем слое. Любой данный узел обрабатывает взвешенную сумму своих входных данных с помощью нелинейной функции активации. Это выход узла, который становится входом другого узла в следующем слое.
Сигнал проходит слева направо, а итоговый выход вычисляется путем повторения этой процедуры для каждого узла, завершая структуру нейронной сети. Обучение этой глубокой нейронной сети заключается в обучении весам, связанным со всеми ребрами.
Архитектура искусственной нейронной сети. Источник: http://scientiairanica.sharif.edu/article_4520_0ed0cd925b330c8798c33c951127b09e.pdf
На рисунке 2 показан типичный искусственный нейрон, а также моделирование многослойной нейронной сети. На этом рисунке поток сигналов от входов x1,...,xn считается однонаправленным, как указано стрелками, как и поток сигналов от выхода нейрона (O).
Нейрон искусственной нейронной сети (ANN). Источник: http://scientiairanica.sharif.edu/article_4520_0ed0cd925b330c8798c33c951127b09e.pdf
Алгоритм обратного распространения ошибки
В feed forward ANN используется алгоритм обратного распространения ошибки. Это означает, что искусственные нейроны организованы в слои и передают сигналы «вперед», при этом ошибки распространяются назад. Нейроны входного слоя подают входные данные в сеть, а нейроны выходного слоя предоставляют выходные данные сети.
Может существовать один или несколько скрытых промежуточных слоев. Алгоритм обратного распространения ошибки использует обучение с учителем, что означает, что мы подаем алгоритму примеры входных и выходных данных, которые хотим, чтобы сеть вычисляла, и рассчитывается ошибка (разница между фактическими и ожидаемыми результатами).
Алгоритм обратного распространения ошибки предназначен для уменьшения этой ошибки до тех пор, пока ANN не изучит обучающие данные.
Сигмоидальная функция является наиболее распространенной выходной функцией. Для больших положительных чисел сигмоидальная функция очень близка к единице, равна 0,5 при нуле и очень близка к нулю для больших отрицательных чисел. Это обеспечивает плавный переход между низким и высоким выходом нейрона (близким к нулю или близким к единице).
Теперь алгоритм обратного распространения ошибки вычисляет связь ошибки с выходом, входами и весами. После того как мы это определили, мы можем использовать метод градиентного спуска для корректировки весов.
Наиболее распространенные функции активации. Источник: Wikipedia
Чтобы представлять более сложные признаки и «читать» все более сложные модели для прогнозирования и классификации данных на основе тысяч или даже миллионов признаков, системам ANN необходимо было эволюционировать, чтобы стать нейронными сетями искусственного интеллекта.
Глубокое обучение — это подраздел машинного обучения, который фокусируется на изучении последовательных «слоев» все более значимых представлений из данных.
Искусственные нейронные сети существуют в различных формах. Сети строятся с использованием набора параметров и математических операций, которые определяют выходные данные.
Основные типы искусственных нейронных сетей
ANN — это система обработки данных, состоящая из большого числа простых, тесно взаимосвязанных обрабатывающих элементов (искусственных нейронов) в архитектуре, вдохновленной структурой коры головного мозга.
Существуют различные типы архитектуры нейронных сетей. Давайте внимательно рассмотрим наиболее часто используемые:
1. Нейронные сети прямого распространения
Самый базовый тип нейронной сети называется нейронными сетями прямого распространения (FNN). Эти FNNsпередают данные в одном направлении через различные входные узлы, пока они не достигнут выходного узла. Сеть может иметь или не иметь скрытые слои узлов, что делает ее работу более понятной. Она настроена на работу с большим количеством шума.
Данные входят в этот тип нейронной сети через входные узлы и выходят через выходные узлы, и она может иметь скрытые слои. В этой нейронной сети используется классифицирующая функция активации. Требуется только волна прямого распространения. Обратное распространение не допускается.
Нейронные сети прямого распространения лежат в основе таких задач, как компьютерное зрение и обработка естественного языка. Нейронная сеть прямого распространения довольно проста и чрезвычайно полезна для некоторых приложений машинного обучения благодаря своей упрощенной архитектуре.
2. Сверточные нейронные сети
Пример сверточной нейронной сети. Источник: https://studentsxstudents.com/training-a-convolutional-neural-network-cnn-on-cifar-10-dataset-cde439b67bf3
Сверточная нейронная сеть (CNN или ConvNet) — самый распространенный тип глубокой нейронной сети. CNN накладывает изученные признаки на входные данные, что делает архитектуру хорошо подходящей для обработки 2D-данных, таких как изображения. CNN устраняют необходимость ручного извлечения признаков, поэтому вам не нужно определять признаки для классификации изображений.
CNN извлекает признаки непосредственно из изображений. Соответствующие признаки не проходят предварительное обучение. Вместо этого они изучаются по мере обучения сети на наборе изображений.
Есть несколько веских причин, по которым сверточные нейронные сети предпочитают другим моделям нейронных сетей. Во-первых, CNN использует концепцию совместного использования весов, которая сокращает количество параметров, требующих обучения, что приводит к улучшенной обобщающей способности. Поскольку параметров меньше, CNN можно обучать легко и без переобучения. Далее, в CNN этап классификации объединен с этапом извлечения признаков, и оба этапа используют процесс обучения. Кроме того, реализация больших сетей с использованием общих моделей ANN намного сложнее, чем реализация с использованием CNN.
CNN широко используются в различных областях благодаря своей исключительной производительности, включая классификацию изображений, обнаружение объектов, обнаружение лиц, распознавание речи и автомобильное распознавание в реальном времени.
3. Рекуррентные нейронные сети
Диаграмма, показывающая архитектуру рекуррентной нейронной сети. Источник: https://www.cs.toronto.edu/~tingwuwang/rnn_tutorial.pdf
Рекуррентные нейронные сети, как и FNN, имеют скрытые слои с дополнительным зацикленным на себя соединением, которое позволяет использовать скрытые слои в один момент времени в качестве входных данных для следующего момента времени. Каждый узел в модели нейронной сети действует как ячейка памяти. Обрабатывая получаемую информацию, эти ячейки работают над обеспечением интеллектуальных вычислений и реализации. Способность этой модели собирать и повторно использовать все обработанные данные делает ее уникальной.
Одним из важнейших компонентов рекуррентной нейронной сети является надежная петля обратной связи. Благодаря рекуррентным нейронным сетям методы нейронных сетей способны «самообучаться» на своих ошибках. Когда данные проходят через алгоритм во второй раз после неверного предсказания, система пытается сделать правильное предсказание с учетом обратной связи.
Рекуррентные нейронные сети часто используются в таких приложениях, как преобразование текста в речь, прогнозирование продаж и прогнозирование фондового рынка.
Но модель Vanilla RNN имеет серьезный недостаток, известный как проблема исчезающего градиента, который мешает ей быть точной. Это означает, что сети трудно запоминать слова, находящиеся дальше в последовательности, и вместо этого она основывает свои предсказания только на самых последних.
Чтобы решить эту проблему, были представлены модели-преемники, такие как LSTM и GRU. Эти сети превосходят традиционные RNN, поскольку они могут поддерживать долгосрочные взаимосвязи, а также нелинейную динамику в случае входного набора данных временного ряда. В этих моделях градиенты проходят без изменений, что позволяет избежать проблемы исчезающих градиентов.
Преимущества использования ANN
Давайте кратко рассмотрим три ключевых преимущества искусственных нейронных сетей:
Возможность параллельной обработки: Искусственная нейронная сеть обладает численной мощностью для выполнения нескольких задач одновременно.
Широкое применение: Поскольку любая нейронная сеть создается для того, чтобы заставить машины функционировать как люди, они имеют несколько преимуществ перед заменой людьми и широкий спектр применений. Технология приносит пользу в областях медицины, инженерии, горнодобывающей промышленности, сельского хозяйства и т. д..
Отсутствие потери данных: Поскольку входные данные хранятся в собственных сетях, а не в базе данных, потеря данных не влияет на ее работу.
Проблемы использования ANN
Проблема масштабируемости, тестирования, проверки и интеграции систем нейронных сетей в современные среды сегодня является одной из основных. При применении к более крупным задачам программы нейронных сетей могут становиться нестабильными. Тестирование и проверка вызывают обеспокоенность в чувствительных отраслях, таких как оборона, ядерные и космические исследования.
ANN нельзя выбрать, разработать, обучить или проверить с использованием какой-либо структурированной методологии. Хорошо известно, что качество решения ANN зависит от размера обучающего набора, количества слоев и количества нейронов в каждом слое.
Многие считают, что результат будет более точным, когда в обучающем наборе больше данных. Однако это неверно. Слишком маленький обучающий набор не позволит сети изучить обобщенные закономерности из входных данных, тогда как слишком большой приведет к распаду обобщенных закономерностей и сделает сеть восприимчивой к входному шуму.
Модель нейронной сети часто называют «абсолютным черным ящиком». Отсутствие объяснений за исследуемыми решениями является существенным недостатком — невозможность объяснить, почему или как решение возникает, порождает недоверие к сети. Именно из-за этой проблемы некоторые отрасли, особенно медицинское сообщество, избегают использования модели нейронной сети.
Применение ANN в машинном обучении
Сегодня нейронные сети используются в широком спектре приложений в разных отраслях, используя мощь машинного обучения. Их использование в бизнесе за последние несколько лет резко выросло на 270%. Вот некоторые области, в которых нейронные сети чрезвычайно эффективны.
Распознавание речи: Искусственные нейронные сети сейчас регулярно используются в технологиях распознавания речи. Ранее в технологиях распознавания речи использовались статистические модели, такие как скрытая марковская модель.
Распознавание изображений: Это приложение относится к более широкой категории распознавания образов. Было разработано множество нейронных сетей для распознавания рукописных символов, будь то буквы или цифры. Благодаря множеству других приложений, включая распознавание лиц в социальных сетях и обработку спутниковых снимков, распознавание изображений является быстро расширяющейся областью.
Классификация текста: Многие приложения, включая веб-поиск, фильтрацию информации, определение языка, проверку удобочитаемости и анализ тональности, зависят от классификации текста.
Прогнозирование: Нейронная сеть может прогнозировать результаты, анализируя исторические тенденции. Нейронные сети регулярно используются в приложениях в областях банковского дела, фондовых рынков и прогнозирования погоды. В этой области ведутся дальнейшие исследования.
Социальные сети: Нейронные сети широко используются для анализа поведения пользователей. Огромные объемы пользовательского контента могут обрабатываться и анализироваться нейронной сетью. Каждое нажатие, которое пользователь делает в приложении, предназначено для получения ценной информации. Используя эти данные, затем отправляют таргетированную рекламу на основе активности пользователей, их предпочтений и покупательского поведения.
Заключение по машинному обучению ANN
Способность нейронных сетей анализировать широкий спектр взаимосвязей позволяет пользователям быстро моделировать явления, которые в противном случае было бы трудно, если не невозможно, понять.
Управление массивными векторами эмбеддингов, генерируемыми глубокими нейронными сетями и другими моделями машинного обучения, имеет решающее значение. Эти многомерные данные делают вычислительный процесс крайне медленным, если используется традиционная база данных. Поэтому они могут храниться в векторной базе данных.
Это один из многих вариантов использования векторных баз данных. И именно здесь на сцену выходит Zilliz, особенно если вы задаетесь вопросом 'что такое векторная база данных?' и стоит ли ее изучить.
Нельзя отрицать, что векторные базы данных — это насущная необходимость в эпоху ИИ. Zilliz предлагает комплексное решение для задач обработки неструктурированных данных, особенно для предприятий, которые создают приложения AI/ML, использующие поиск по векторному сходству.
Если вы хотите привнести мощь ИИ в свое предприятие, свяжитесь с Zilliz и обсудите дальнейшие шаги!
Читать далее

Zilliz Cloud BYOC Now Available Across AWS, GCP, and Azure
Zilliz Cloud BYOC is now generally available on all three major clouds. Deploy fully managed vector search in your own AWS, GCP, or Azure account — your data never leaves your VPC.

Introducing Business Critical Plan: Enterprise-Grade Security and Compliance for Mission-Critical AI Applications
Discover Zilliz Cloud’s Business Critical Plan—offering advanced security, compliance, and uptime for mission-critical AI and vector database workloads.

Zilliz Cloud Delivers Better Performance and Lower Costs with Arm Neoverse-based AWS Graviton
Zilliz Cloud adopts Arm-based AWS Graviton3 CPUs to cut costs, speed up AI vector search, and power billion-scale RAG and semantic search workloads.



