Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #38, ЯНВАРЬ 2004 г.

Возьми нейродруга в помощники

Елманов Олег (Spy_Dr@comail.ru)

Спецвыпуск Xakep, номер #038, стр. 038-086-2


После такого прорыва в развитии нечетких алгоритмов многие ученые, изобретатели и просто предприимчивые люди ринулись на поля нейрокомпьютинга. Эта область науки стала модной. Однако большинство из них постигли неудачи. Перцептрон отлично справлялся с одними задачами и совершенно не решал другие. Точку в поисках растерянных ученых поставил Марвин Минский, который в своей книге "Перцептроны", вышедшей в 1969 году, математически доказал, что нейросетям доступен лишь очень узкий круг задач. Естественно, направление стало бесперспективным, и масштабные исследования в области нейронных сетей были свернуты.

А спустя десятилетие про нейросети вновь вспомнили. В 1982 году физик Джон Хопфилд с помощью методов теоретической физики разработал модель ассоциативной памяти нейронной сети.

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

Качественный скачок в развитии нейрокомпьютинга произошел в 1986 году, после публикации Дэвидом Румельхатом метода обучения многослойного перцептрона, названного им "Методом обратного распространения ошибки" (Error Back-Propagation). Эта модель нейронной сети и метод ее обучения пришлись как раз ко времени и к месту: во-первых, многослойный перцептрон преодолел ограничения простейших нейросетей, а во-вторых, возможности вычислительной техники достигли достаточного уровня для реализации этой модели и решения с ее помощью прикладных задач.

Принципы работы

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

Применение

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

Назад на стр. 038-086-1  Содержание  Вперед на стр. 038-086-3