Искусственные нейронные сети | Статья в журнале «Молодой ученый»

Отправьте статью сегодня! Журнал выйдет 7 декабря, печатный экземпляр отправим 11 декабря.

Опубликовать статью в журнале

Автор:

Рубрика: Информационные технологии

Опубликовано в Молодой учёный №4 (138) январь 2017 г.

Дата публикации: 26.01.2017

Статья просмотрена: 4268 раз

Библиографическое описание:

Степанов, П. П. Искусственные нейронные сети / П. П. Степанов. — Текст : непосредственный // Молодой ученый. — 2017. — № 4 (138). — С. 185-187. — URL: https://moluch.ru/archive/138/38781/ (дата обращения: 23.11.2024).



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

Головной мозг человека содержит около 65 миллиардов нейронов, на каждый нейрон приходится около ста синапсов. Более того, нейроны достаточно интересный предмет для изучения, поскольку все нейроны не работают по одной формуле. Существует примерно 100 видов нейронов.

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

И тем не менее, за годы существования это дисциплины было разработано много топологий сети и были найдены свои ниши применения. Рассмотрим типовую структуру нейронной сети на Рисунке 1.

Картинки по запросу структура нейронной сети

Рис. 1. Типовая структура нейронной сети

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

Картинки по запросу структура нейрона

Рис. 2. Структура нейрона

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

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

Из топологий нейронных сетей выделяют сети прямого распространения (Feedforward), радиально-базисные функции (RBF), рекурентные нейронные сети, сверточные сети (LeNet-5, неокогнитрон), самоорганизующаяся карта Кохонена (SOM), а также адаптивно-резонансная теория.

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

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

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

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

Показательным примером является московская компания ABBY и её продукт FineReader, который умеет читать текст с изображения, например, найти текст на сканированном изображении. При распознавании текста, до поступления на вход нейронной сети, информация обрабатывается специальным графическим интерфейсом, который выделяет отдельный символ, полученное изображение отдельного символа избавляют от шума и только после этого передают на вход нейронной сети. Подобные сети достаточной сложны и требовательны к вычислительным ресурсам, например, для распознавания древнеегипетских иероглифов нейросеть обучалась в течении недели беспрерывной работы и насчитывала более 700 000 нейронов [1]. Для распознавания образов, обычно, используют сверточные сети (LeNet-5(Франция), неокогнитрон (Япония)), а для распознавания видео- и аудио-потока рекурентные сети. Обучение происходит только с учителем, когда вы четко даем понять нейронной сети, что это изображение человека, машины, буквы, слова и т. д.

Для решения задач прогнозирования используют сети GRNN, RMLP, сеть Эльмана, сеть Фальмана. Самая популярная и качественная по работе это сеть GRNN, которая дает то же качество распознавания, что и обычный регрессионный анализ в математике, но при этом менее требовательна к входным данным.

Для решения задач связанных с ассоциативной памятью используют сеть Коско (двунаправленная ассоциативная память).

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

Подводя итог необходимо отметить, что для решения многих задач, например, распознавания образов, существуют решения-аналоги, не использующие нейронные сети. Это, во-первых, структурные методы распознавания, практически попиксельное изучение картинок. Во-вторых, синтаксические методы распознавания, когда изображение той же буквы разбивается на элементарные «черточки» и потом из набора «черточек» формируется буква. В-третьих, векторное квантование, а также байесовский классификатор, построенный на применении теоремы Байеса. В-четвертых, машина опорных векторов, но у всех вышеперечисленных способов качество решения задачи ниже 72 %. У нейронных сетей, в частности сверхточных, качество распознавания 86 %. Но есть и методы работающие на ровне с нейросетями. Это такие алгоритмы как «boosting», «рандомизированный решающий лес» и машина опорных векторов.

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

Литература:

  1. «Модели и методы распознавания иероглифических текстов на примере древнеегипетского языка», диссертация к. т.н. Кугаевских Александра Владимировича.
  2. http://www.dissercat.com/content/modeli-i-metody-raspoznavaniya-ieroglificheskikh-tekstov-na-primere-drevneegipetskogo-yazyka
  3. Рассел С. Искусственный интеллект. Современный подход / С. Рассел, П. Норвиг. — 2-е изд. — М.: Вильямс, 2007. — 1408 с.
  4. Каляев И. А. Модели и алгоритмы коллективного управления в группах роботов / И. А. Каляев, А. Р. Гайдук, С. Г. Капустян. — М.: ФИЗМАТЛИТ, 2009. — 280 с.
  5. «Об интеллекте». Джефф Хокинс, Сандра Блейксли, 2004 год.
  6. Игнатьев Н. А. Выбор минимальной конфигурации нейронных сетей // Вычисл. технологии. 2001. Т. 6, № 1. С. 23–28.
  7. Игнатьев Н. А. Извлечение явных знаний из разнотипных данных с помощью нейронных сетей // Вычисл. технологии. 2003. Т. 8, № 2. С. 69–73.
  8. Игнатьев Н. А., Мадрахимов Ш. Ф. О некоторых способах повышения прозрачности нейронных сетей // Вычисл. технологии. 2003. Т. 8, № 6. С. 31–37.
  9. Прикладная статистика: Классификация и снижение размерности: Справочное издание / С. А. Айвазян, В. М. Бухштабер, И. С. Енюков, Л. Д. Мешалкин. М.: Финансы и статистика, 1989.
Основные термины (генерируются автоматически): нейронная сеть, сеть, GRNN, вход, задача, нейрон, распознавание образов, типовая структура, адаптивно-резонансная теория, ассоциативная память.


Задать вопрос