Нейрокомпьютеры
При проектировании любого вычислительного устройства всегда стоит вопрос о классе задач, который наиболее эффективно будет на нем решен.
Что касается нейрокомпьютеров, то это не только неформализуемые или плохо формализуемые задачи, в алгоритм решения которых включается процесс обучения на реальном экспериментальном материале (как правило, задачи распознавания образов), но и задачи с естественным параллелизмом (например, обработка изображений).
Нейрокомпьютерные архитектуры в будущем будут завоевывать все большее место среди других архитектур. Уже сегодня существенно расширяется интерес к общематематическим задачам, решаемым в нейросетевом компьютерном базисе. Среди таких задач:
·
линейные и нелинейные алгебраические уравнения;
· системы нелинейных дифференциальных уравнений;
· уравнения в частных производных;
· линейное и нелинейное программирование.
На сегодняшний день в основном сформировались три раздела нейроматематики: общий, прикладной и специальный.
Нейроматематика – это раздел вычислительной математики, связанный с решением задач с помощью алгоритмов, представимых в нейросетевом логическом базисе.
Раздел общей нейроматематики представляет собой решение общих математических задач в нейросетевом логическом базисе с целью исключить потери на разработку специальных алгоритмов и повысить эффективность их решения. Даже, казалось бы, такие простые задачи, как извлечение корня, сложение и умножение чисел, пытаются решать на нейрокомпьютерах, ибо при их ориентации на нейросетевую физическую реализацию алгоритмы можно выполнить значительно эффективнее, чем на известных булевских элементах.
Прикладная нейроматематика включает задачи, в принципе не решаемые известными типами вычислительных устройств. Примерами таких задач являются:
* контроль кредитных карточек (диагностика фактической принадлежности карточки владельцу с настройкой нейронной сети в пространстве признаков покупаемых товаров);
* система скрытого обнаружения веществ с помощью устройств на базе типовых нейронов и нейрокомпьютера на заказных цифровых нейрочипах, что необычайно важно в аэропортах при обнаружении наркотиков, ядерных материалов и т. д.
Сюда можно отнести задачи обработки изображений (сжатие с большим коэффициентом с последующим восстановлением, выделение на изображении движущихся целей и т. д.), задачи обработки сигналов (определение координат цели, прогнозирование надежности электродвигателей и т. д.).
Специальная нейроматематика включает задачи повышения качества и увеличения динамических свойств изображения в системах виртуальной реальности, прямые и обратные задачи в системах защиты информации и т. д.
Логической основой нейрокомпьютеров является теория нейронных сетей (НС). Нейронная сеть – это сеть с конечным числом слов из однотипных элементов – аналогов нейронов с различными типами связей между слоями нейронов.
Основные преимущества НС как логического базиса алгоритмов реше-
ния сложных задач являются:
· инвариантность методов синтеза НС по отношению к размерности пространства признаков и размеров НС;
· отказоустойчивость в смысле монотонного, а не катастрофического изменения качества решения задачи в зависимости от числа вышедших из строя элементов.
Развитие технологий в микроэлектронике позволяет реализовать новые идеи в архитектурных решениях. В середине 70-х годов появление СИС породило ЭВМ с архитектурой SIMD, в начале 80-х появление БИС позволило создать транспьютер и компьютер с архитектурой MIMD. Во второй половине 80-х годов, когда появилась возможность в одном кристалле аппаратной реализации каскадируемого фрагмента НС с настраиваемыми или фиксированными коэффициентами стали активно проектироваться нейрокомпьютеры.
Определение нейрокомпьютера наиболее реально давать, рассматривая его с точки зрения конкретной области применения.
С точки зрения вычислительной техники нейрокомпьютер –это вычислительная система с архитектурой MSIMD, в которой реализованы следующие принципиальные решения:
• упрощен до уровня нейрона процессорный элемент однородной структуры;
• резко усложнены связи между элементами;
• программирование вычислительной структуры перенесено на изменение весовых связей между процессорными элементами.
Наиболее общее определение нейрокомпьютера может быть следующим.
Нейрокомпьютер – это вычислительная система с архитектурой программного и аппаратного обеспечения, адекватной выполнению алгоритмов, представленных в нейросетевом логическом базисе.