I.Введение

Прошло уже много лет с того момента, когда появилась первая ЭВМ. За это время сменилось уже несколько поколений вычислительных машин. Менялись элементная база, конструктивные решения, языки программирования, программ­ное обеспечение, но основы архитектуры, заложенные при создании машин первого поколения, практически без изменения перешли на машины последующих и успешно работают до настоящего времени.Нет сомнений, что идеи машин первого поколения ещё послужат человеку. Однако всё настоятельнее требуются системы, наделённые элементами интеллекта при обработке колоссального объёма информации и в то же время работающие в темпе управляемых процессов.

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

На сегодняшний день высокие технические характеристики реализуется только с помощью дорогостоящих уникальных архитектур от CRAY, SGI, Fujitsu, Hitachi с несколькими тысячами процессоров.

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

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

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

1. Что такое нейрокомпьютер

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

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

Приведем некоторые наиболее устоявшиеся определения нейрокомпьютера

Научное направление Определение нейровычислительной системы
1 Математическая статистика Нейрокомпьютер – это вычислительная система автоматически формирующая описание характеристик случайных процессов или их совокупности, имеющих сложные, зачастую многомодальные или вообще априори неизвестные функции распределения.
2 Математическая логика Нейрокомпьютер – это вычислительная система алгоритм работы которой представлен логической сетью элементов частного вида – нейронов, с полным отказом от булевых элементов типа И, ИЛИ, НЕ.
3 Пороговая логика Нейрокомпьютер – это вычислительная система, алгоритм решения задач в которой представлен в виде сети пороговых элементов с динамически перестраиваемыми коэффициентами и алгоритмами настройки, независимыми от размерности сети пороговых элементов и их входного пространства
4. Вычислительная техника Нейрокомпьютер – это вычислительная система с MSIMD архитектурой, в которой процессорный элемент однородной структуры упрощен до уровня нейрона, резко усложнены связи между элементами и программирование перенесено на изменение весовых коэффициентов связей между процессорными элементами.
5. Медицина (нейробиологический подход) Нейрокомпьютер – это вычислительная система представляющая собой модель взаимодействия клеточного ядра, аксонов и дендридов, связанных синаптическими связями (синапсами) (т.е. модель биохимических процессов протекающих в нервных тканях).
6. Экономика и финансы Устоявшегося определения нет, но чаще всего под нейровычислителем понимают систему обеспечивающую параллельное выполнение “бизнес”-транзакций.

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

Общее определение нейрокомпьютера может быть представлено в следующем виде:

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

2. История нейрокомпьютеров

Нейрокомпьютеры – это ЭВМ нового поколения, качественно отличающиеся от других классов вычислительных систем параллельного типа тем, что для решения задач они используют не заранее разработанные алгоритмы, а специальным образом подобранные примеры, на которых учатся. Их появление обусловлено объективными причинами: развитие элементной базы, позволяющее на одной плате реализовать персональный компьютер – полнофункциональный компьютер (модель нейрона), и необходимость решения важных практических задач, поставленных действительностью. Попытки создания ЭВМ, моделирующих работу мозга, предпринимались ещё в 40-х гг. специалистами по нейронной кибернетике. Они стремились разработать самоорганизующиеся системы, способные обучаться интеллектуальному поведению в процессе взаимодействия с окружающим миром, причём компонентами их систем обычно являлись модели нервных клеток. Однако зарождавшаяся в это же время вычислительная техника и связанные с нею науки, особенно математическая логика и теория автоматов, оказали сильное влияние на области исследования, связанные с мозгом.

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

К настоящему времени сформировался обширный рынок нейросетевых продуктов. Подавляющее большинство продуктов представлено в виде моделирующего программного обеспечения. Ведущие фирмы разрабатывают также и специализированные нейрочипы или нейроплаты в виде приставок персональным ЭВМ. Наиболее ярким прототипом супернейрокомпьютера является система обработки аэрокосмических изображений, разработанная в США по программе «Силиконовый мозг». Объявленная производительность супернейрокомпьютера составляет 80 PFLOPS (80?1015 операций с плавающей точкой в 1 с) при физическом объёме, равном объёму человеческого мозга, и потребляемой мощности 20 Вт.

В июле 1992 г. в Японии была принята Пятая Программа (действующая и поныне), связанная с созданием координационного исследовательского центра по реализации международного проекта Real World Computing Partnership (RWCP), основной целью которого являлась разработка практических методов решения реальных задач на основе гибких и перспективных информационных технологий.

В настоящее время в рамках развития этого проекта создана трансконтинентальная сеть на базе гетерогенной вычислительной среды, объединяющей Суперкомпьютерный центр в Штутгарте (Германия), Компьютерный центр в Питсбурге (шт. Пенсильвания), Электротехническую лабораторию в Тшукубе (Япония), Компьютерный центр в Манчестере (Великобритания), в которой часть пользовательских компьютеров выполнена по нейросетевой технологии. Пиковая производительность образованного сверхсуперкомпьютера составила 2.2 TFLOPS.

Считается, что теория нейронных сетей, как научное направление, впервые была обозначена в классической работе МакКаллока и Питтса[1] 1943 г., в которой утверждалось, что, в принципе, любую арифметическую или логическую функцию можно реализовать с помощью простой нейронной сети. В 1958 г. Фрэнк Розенблатт [2] придумал нейронную сеть, названную перцептроном, и построил первый нейрокомпьютер Марк-1 . Перцептрон был предназначен для классификации объектов. На этапе обучения “учитель” сообщает перцептрону к какому классу принадлежит предъявленный объект. Обученный перцептрон способен классифицировать объекты, в том числе не использовавшиеся при обучении, делая при этом очень мало ошибок. Примерно в это же время вышла работа Минского и Пейперта[3], указавшая ограниченные возможности простейшего перцептрона. Результаты Минского и Пейперта погасили энтузиазм большинства исследователей, особенно тех, кто работал в области вычислительных наук.

С начала 80-х годов ИНС вновь привлекли интерес исследователей, что связано с энергетическим подходом Хопфилда[4] и алгоритмом обратного распространения для обучения многослойного перцептрона (многослойные сети прямого распространения), впервые предложенного Вербосом[5] . При этом важную роль сыграли работы группы PDP (Parallel Distributed Processing) . В них рассматривались нейронные сети, названные многослойными перцептронами, которые оказались весьма эффективными для решения задач распознавания, управления и предсказания. (Многослойные перцептроны занимают ведущее положение, как по разнообразию возможностей использования, так и по количеству успешно решенных прикладных задач .)

3. Преимущества нейрокомпьютеров.

По сравнению с обычными компьютерами нейрокомпьютеры обладают рядом преимуществ.

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

Во вторых — нейросистемы делаются очень устойчивыми к помехам и разрушениям.

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

4. Недостатки нейрокомпьютеров.

Несмотря на перечисленные выше преимущества эти устройства имеют ряд недостатков:

1. Они создаются специально для решения конкретных задач, связанных с нелинейной логикой и теорией самоорганизации. Решение таких задач на обычных компьютерах возможно только численными методами.

2. В силу своей уникальности эти устройства достаточно дорогостоящи.

5. Практическое применение нейрокомпьютеров.

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

— Управление в режиме реального времени: самолетами, ракетами и технологическими процессами непрерывного производства (металлургического, химического и др.);

— Распознавание образов: человеческих лиц, букв и иероглифов, сигналов радара и сонара, отпечатков пальцев в криминалистике, заболеваний по симптомам (в медицине) и местностей, где следует искать полезные ископаемые (в геологии, по косвенным признакам);

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

— Оптимизация и поиск наилучших вариантов: при конструировании технических устройств, выборе экономической стратегии и при лечении больного.

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

Что же представляет из себя нейрокомпьютер? Нейрокомпьютеры бывают двух типов:

1. Большие универсальные компьютеры построенные на множестве нейрочипов.

2. Нейроимитаторы, представляющие собой программы для обычных компьютеров, имитирующие работу нейронов. В основе такой программы заложен алгоритм работы нейрочипа с определенными внутренними связями. Что — то типа “Черного ящика”, по принципу которого он и работает. На вход такой программы подаются исходные данные и на основании закономерностей, связанных с принципом работы головного мозга, делаются выводы о правомерности полученных результатов.

III.Основы нейроинформатики

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

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

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

С коннекционизмом тесно связан следующий блок идей:

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

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

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

Самый важный элемент нейросистем адаптивный сумматор, который вычисляет скалярное произведение вектора входного сигнала x на вектор параметров a. Адаптивным он называется из-за наличия вектора настраиваемых параметров a.

Нелинейный преобразователь сигнала получает скалярный входной сигнал x и переводит его в заданную нелинейную функцию f(x).

Точка ветвления служит для рассылки одного сигнала по нескольким адресам. Она получает скалярный входной сигнал x и передает его на все свои выходы.

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

Линейная связь синапс отдельно от сумматоров не встречается, однако для некоторых рассуждений бывает удобно выделить этот элемент. Он умножает входной сигнал x на “вес синапса” a.

Итак, мы коротко описали основные элементы, из которых состоят нейронные сети.

IV.Задачи для нейронных сетей

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

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

V.Заключение

Нейронные сети возникли из исследований в области искусственного интеллекта, а именно, из попыток воспроизвести способность биологических нервных систем обучаться и исправлять ошибки.
Такие системы основывались на высокоуровневом моделировании процесса мышления на обычных компьютерах. Скоро стало ясно, чтобы создать искусственный интеллект, необходимо построить систему с похожей на естественную архитектурой, т. е. перейти от программной реализации процесса мышления к аппаратной.
Естественным продолжением аппаратного и программного подхода к реализации нейрокомпьютера является программно-аппаратный подход.
Аппаратный подход связан с созданием нейрокомпьютеров в виде нейроподобных структур (нейросетей) электронно-аналогового, оптоэлектронного и оптического типов. Для таких компьютеров разрабатываются специальные СБИС (нейрочипы).
Основу нейросетей составляют относительно простые, в большинстве случаев – однотипные, элементы (ячейки), имитирующие работу нейронов мозга – искусственные нейроны. Нейрон обладает группой синапсов – однонаправленных входных связей, соединенных с выходами других нейронов, а также имеет аксон – выходную связь данного нейрона, с которой сигнал (возбуждения или торможения) поступает на синапсы следующих нейронов. Каждый синапс характеризуется величиной синаптической связи или ее весом, который по физическому смыслу эквивалентен электрической проводимости в электрических связях.
Для решения отдельных типов задач существуют оптимальные конфигурации нейронных сетей. Если же задача не может быть сведена ни к одному из известных типов, разработчику приходится решать сложную проблему синтеза новой конфигурации. При этом он руководствуется несколькими основополагающими принципами: возможности сети возрастают с увеличением числа ячеек сети, плотности связей между ними и числом слоев нейронов. Одной из важных особенностью нейронной сети является возможность к обучению. Обучение нейросети может вестись с учителем или без него. В первом случае сети предъявляются значения как входных, так и желательных выходных сигналов, и она по некоторому внутреннему алгоритму подстраивает веса своих синаптических связей. Во втором случае выходы нейросети формируются самостоятельно, а веса изменяются по алгоритму, учитывающему только входные и производные от них сигналы. После обучения на достаточно большом количестве примеров можно использовать обученную сеть для прогнозирования, предъявляя ей новые входные значения. Это важнейшее достоинство нейрокомпьютера, позволяющие ему решать интеллектуальные задачи, накапливая опыт.

VI.Список используемой литературы:

А.Горбань, Д. Россиев. Нейронные сети на персональном компьютере. //Новосибирск: Наука, 1996.
Ф.Уоссермен, Нейрокомпьютерная техника, М.,Мир, 1992.
Итоги науки и техники: физические и математические модели нейронных сетей, том 1, М., изд. ВИНИТИ, 1990.

4. http://therocker.narod.ru/doc/neuro.htm#comp1

5. http://www.bmstu.ru

6. http://neurnews.iu4.bmstu.ru

7. http://www.module.ru.