Рефераты. Функциональные модели универсального нейрокомпьютера

Многолетние усилия многих исследовательских групп привели к тому, что к настоящему моменту накоплено большое число различных правил обучения и архитектур нейронных сетей, способов оценивать и интерпретировать их работу, приемов использования нейронных сетей для решения прикладных задач. Каждое правило, архитектура, система оценки и интерпретации составляют отдельный нейрокомпьютер. Причем каждый нейрокомпьютер уникален и отделен от других. Такой тип многообразия принято называть «зоопарком». Многообразие этого типа нетехнологично. Существует другой тип многообразия – технопарк. Такое многообразие строится как совокупность многих «машин» собранных из небольшого набора стандартных деталей. Основная цель данной работы состоит в том, чтобы преобразовать существующий зоопарк нейрокомпьютеров в технопарк.

В качестве примера приведем выдержку из монографии (учебного пособия) одного из наиболее известных Российских ученых–нейроинформатиков А.И. Галушкина [26].

«Основными качественными характеристиками архитектур нейронных сетей являются:

1.       Типы входных сигналов (размерность, дискретность и т. д.).

2.       Тип операций, реализуемых в разомкнутой нейронной сети (дискретные или непрерывные).

3.       Топология связей (прямые, перекрестные, латеральные, обратные и т.д.).

4.       Наличие или отсутствие желания сымитировать в структуре конкретную биологическую систему (зрительный или слуховой анализатор, мозжечок, таламус и т.д.).

5.       Наличие желания максимально повысить скорость вычислительных операций на нейронной сети.

6.       Ограничения архитектуры, связанные с удобством (простотой) или ограничениями принятого способа технической реализации.

7.       Способ объединения в группы процессорных элементов.

8.       Способ функционирования во времени (дискретный или непрерывный).

9.       Способ изменения весов связей (случайный или упорядоченный).

10.   Способ соединения независимо настроенных (или настраиваемых) нейронных сетей вместе.»

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

К сожалению, такая практика, соединения архитектуры нейронной сети и алгоритмов обучения в единое целое, имеет место и в разработках многих западных фирм [25, 141, 142].

Для перехода к разнообразию типа технопарк полезен такой подход: каждый нейрокомпьютер из зоопарка должен быть представлен как реализованный на идеальном нейрокомпьютере, имеющем заданную структуру. В пределах данной структуры возможен почти произвольный выбор комплектующих – архитектур сетей, предобработчиков, интерпретаторов ответа и других компонентов. Несомненно, структура этого идеального нейрокомпьютера со временем будет эволюционировать. Однако преимущества даже от первых шагов стандартизации несомненны. Подтверждением этому служит опыт двенадцатилетней работы Красноярской группы НейроКомп по использованию нейронных сетей в различных задачах: распознавания образов [65, 291, 295], медицинской диагностики [18, 49 – 52, 73, 92, 94, 163 – 165, 168, 188 – 192, 195 – 214, 261, 300 – 302, 321, 322, 351 – 355, 361, 372], прогноза [303–305, 374] и др.[89–91, 156, 157, 166, 167, 175, 181, 238, 337].

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

Особую актуальность приобретает задача создания универсального нейрокомпьютера в связи с тем, что в течении последних десяти лет десятки серьезных компаний заявили о разработке аппаратных нейрокомпьютеров. При этом существует две крайности. С одной стороны, аппаратно реализованные нейронные сети, способные решать только одну конкретную задачу (например, [10 – 12, 21, 26, 105, 159, 221, 225]). С другой стороны – универсальные нейрокомпьютеры типа «Synaps I», предложенный фирмой Сименс-Никсдорф. Автор имел возможность ознакомиться с техническими характеристиками данного нейрокомпьютера и проектом программного обеспечения для него. К сожалению, этот компьютер является нейрокомпьютером только по названию, поскольку в действительности это обычный хороший высокоскоростной параллельный компьютер. Вся реализация всех типов нейронных сетей, заявленная фирмой Сименс-Никсдорф, содержится полностью в программном обеспечении. Основная проблема, встающая на пути таких разработок – попытка реализовать исходный мелкозернистый параллелизм нейронных сетей, состоящих из простых элементов, на базе относительно малого числа сложных универсальных процессоров. Вопросы параллелизма нейронных сетей рассмотрены во многих работах (см. например, [152, 264]).

В данной работе описана функциональная структура идеального универсального нейрокомпьютера для реализации большинства нейронных сетей одного из крупных отделов «зоопарка». Речь идет о сетях работающих в дискретном времени. Изначально предполагалось, что на предложенном нейрокомпьютере можно будет реализовать только сети связанные с методом обратного распространения ошибки - это мощная и широко применяемая технология обучения нейронных сетей (см. например, [236, 312, 313, 355, 358]). К сожалению, она получила распространение в виде алгоритма, а не в виде способа построения алгоритмов. Более общая теория обучения нейронных сетей - принцип двойственности [9, 13, 14, 45, 55, 56, 65, 255. 256, 289, 295] – мало известна. На данный момент в литературе встречается описание более чем двух десятков различных алгоритмов обучения нейронных сетей по методу обратного распространения ошибки. Однако в ходе работы оказалось, что предложенная структура нейрокомпьютера позволяет реализовать любые сети функционирующие в дискретном времени.

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

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

Ранее уже было предложено несколько вариантов языка описания нейронных сетей. Примером таких языков может служить язык для описания нейронных сетей AXON [311, 324 – 326], разработанный и поддерживаемый группой исследователей под руководством Р. Хехт-Нильсона. Изначально, автор с коллегами из группы НейроКомп пошли по тому же пути [46]. Однако он оказался бесперспективным. Основным отличием способа описания нейрокомпьютера, предложенного в данной работе, от языка AXON является полнота охвата всех компонентов нейрокомпьютера. Язык AXON служит для описания только нейронных сетей, тогда как приведенный в приложении стандарт охватывает все компоненты нейрокомпьютера и средства интерфейса между ними.

Предложенная функциональная модель была частично реализована в ряде программных продуктов, разработанных Красноярской группой Нейрокомп. Так в программе Eye [83, 171], разработанной автором в 1989 году, впервые были реализованы и опробованы эффективные функции оценки. Данная программа широко использовалась в учебном процессе и послужила одной из базовых программ при проведении Первой Всесоюзной олимпиады по нейрокомпьютингу (Омск, 1990 год). В 1993 году автором была разработана серия программ, под общим названием «Нейроучебник», которые до сих пор используются в учебном процессе в ряде красноярских вузов. В программе Sigmoid1 из этой серии впервые было реализовано контрастирование. На этой программе была получена первая логически прозрачная нейронная сеть. В программе Hopfield из той же серии впервые была реализована ортогональная сеть ассоциативной памяти.

В 1993-1995 годах на ВЦ СО РАН в г. Красноярске под руководством автора работал программистский семинар по разработке нейросетевых приложений. Одним из результатов работы семинара явилось появление программы MultyNeuron. Результаты использования программы в медицине опубликованы различными исследователями более чем в 50 работах [18, 49 – 52, 73, 93 – 95, 121, 163, 164, 168, 188 – 192, 195 – 201, 203 – 214, 287, 300 – 302, 321, 322, 351 – 355, 361, 371].

В 1996-2000 годах по проекту «Разработка и программная реализация технологии производства явных знаний из данных с помощью обучаемых нейронных сетей» № 05.04.1291 подпрограммы «Перспективные информационные технологии» Федеральной целевой программы на 1996-2000 годы «Исследования и разработки по приоритетным направлениям развития науки и техники гражданского назначения» под руководством автора были разработаны три программы FAMaster, NeuroPro и GISNNA. На базе этих программ защищено три кандидатские диссертации [180, 186, 237]. В приложении к диссертации приведены 26 актов о внедрении.

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.