Нейронные сети

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

Рассмотрим строение биологического нейрона. Каждый нейрон имеет отростки нервных волокон двух типов — дендриты, по которым принимаются импульсы, и единственный аксон, по которому нейрон может передавать импульс. Аксон контактирует с дендритами других нейронов через специальные образования — синапсы, которые влияют на силу импульса (рис. 6.4).

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

Строение нейрона

Рис. 6.4. Строение нейрона

Искусственная нейронная сеть (ИНС, нейросеть) — это набор нейронов, соединенных между собой.

Для обучения нейронной сети требуются обучающие данные, которые должны отвечать свойствам представительности и случайности или последовательности. Все зависит от класса решаемой задачи. Такие данные представляют собой ряды примеров с указанием для каждого из них значения выходного параметра, которое было бы желательно получить. Действия, происходящие при этом, можно назвать контролируемым обучением: «учитель» подает на вход сети вектор исходных данных, а на выходной узел — желаемое значение результата вычислений (рис. 6.5).

База

данных

~т~

Выбор

примера

Процесс обучения нейросети

Рис. 6.5. Процесс обучения нейросети

После многократного предъявления примеров веса сети стабилизируются, причем сеть дает правильные ответы на все (или почти все) примеры из базы данных. В таком случае говорят, что

Схема простой нейросети

Рис. 6.6. Схема простой нейросети

«сеть выучила все примеры», «сеть обучена», или «сеть натренирована». В программных реализациях можно видеть, что в процессе обучения величина ошибки (сумма квадратов ошибок по всем выходам) постепенно уменьшается. Когда величина ошибки достигает нуля или приемлемого малого уровня, тренировку останавливают, а полученную сеть считают натренированной и готовой к применению на новых данных.

Важно отметить, что вся информация, которую сеть имеет о задаче, содержится в наборе примеров.

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Таблица 6.1. Сравнительные характеристики нейронной системы

Параметр сравнения

Машина фон Неймана

Биологическая нейронная система

Процессор

Сложный.

Высокоскоростной.

Один или несколько

Простой.

Низкоскоростной.

Большое количество

Память

Отделена от процессора. Локализована.

Адресация не по содержанию

Интегрирована в процессор. Распределенная.

Адресация по содержанию

Надежность

Высокая уязвимость

Живучесть

Вычисления

Централизованные.

Последовательные.

Хранимые программы

Распределенные.

Параллельные.

Самообучение

Специализация

Численные и символьные операции

Проблемы восприятия

Среда функционирования

Строго определенная.

Строго ограниченная

Плохо определенная.

Без ограничений

Развитие искусственных нейронных сетей вдохновлялось биологией.

Мозг состоит из различных типов клеток. Большинство нейрофизиологов считает, что объяснить феномены работы мозга можно, изучая функционирование объединенных в единую сеть клеток, называемых нейронами. Мозг включает К)10—10" нейронов. Уникальными способностями нейронов являются прием, обработка и передача электрохимических сигналов по нервным путям, которые образуют коммуникационную систему мозга.

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

Обычно лишь 2—3 % нейронов мозга активны. Мозг обладает огромным запасом «прочности» и «пластичности», позволяющих ему работать даже при серьезных повреждениях и приспосабливаться к значительно меняющимся внешним условиям. Для того чтобы создать нейрочип, исследователям пришлось уместить на кремнии размером 1 мм2 более 16 000 электронных транзисторов и сотни конденсаторов. Посредством использования обнаруженных в мозге специальных белков к чипу были «приклеены» мозговые клетки, называемые нейронами. Тем не менее роль белков не СЕЮДИЛаСЬ лишь к клеевым функциям.

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

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

Ниже приведена структура работ в области нейрокибернетики.

Аналог

Левое полушарие

Правое полушарие

Основные характеристики

Режим функционирования

Характер операций

Традиционные компьютеры

В основном последовательный

Иерархическая структура алгоритмов.

Разбиение сложных задач на простые составляющие.

Жесткие математические модели

Нейрокомпьютеры

Алгоритмы формируются на основе обучения И НС на примерах

Непосредственное манипулирование образами. Мягкие математические модели

Программная система, эмулирующая среду нейрокомпьютера (НК), называется нейропакетом (НП). Существуют следующие НК:

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

Примеры НП первого класса:

. OWL;

  • • Neuro Windows;
  • • NNet+;
  • • Neural NetWork Toolbox for Matlab;
  • • Neuro Office.

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

С середины 1980-х гг. нейронные сети стали использоваться на Западе — преимущественно в финансовых и военных приложениях. Однако, несмотря на впечатляющие успехи первых экспериментов, поначалу это были единичные заказные системы — слишком сложен был инструмент и слишком дорога его разработка. Ситуация коренным образом изменилась в начале 1990-х гг., когда на рынке появилось новое поколение нейросете-вых пакетов — мощных, недорогих и простых в использовании. И практически сразу одним из лидеров рынка стал нейросетевой пакет Brain Maker фирмы California Scientific Software (США). Первоначально разработанный по заказу военных, пакет был адаптирован для бизнес-приложений и уже в 1990 г. удостоен престижной премии журнала PC Magazine «Лучший программный продукт года». С тех пор пакет ежегодно становится победителем различных конкурсов, пережил 20 тыс. инсталляций (что для специализированного пакета весьма немало) и сегодня является самым продаваемым нейропакетом США. Что же касается российского рынка, то пользователями Brain Maker Pro 3.12 (последней профессиональной версии пакета) стали уже около 200 банков, финансовых и торговых компаний, а в последнее время — и аналитических учреждений верхних эшелонов власти.

  • [1] См.: Башмаков А. И., Башмаков И. А. Интеллектуальные информационные технологии: учеб, пособие. М.: Изд-во МГТУ им. Н. Э. Баумана, 2005.