О разработках нейрокомпьютеров в россии. Современные направления развития нейрокомпьютерных технологий в россии

Детальный анализ зарубежных разработок нейрокомпьютеров позволил выделить основные перспективные направления современного развития нейрокомпьютерных технологий: нейропакеты, нейросетевые экспертные системы, СУБД с включением нейросетевых алгоритмов, обработка изображений, управление динамическими системами и обработка сигналов, управление финансовой деятельностью, оптические нейрокомпьютеры, виртуальная реальность. Сегодня разработками в этой области занимается более 300 зарубежных компаний, причем число их постоянно увеличивается. Среди них такие гиганты как Intel, DEC, IBM и Motorolla. Сегодня наблюдается тенденция перехода от программной эмуляции к программно-аппаратной реализации нейросетевых алгоритмов с резким увеличением числа разработок СБИС нейрочипов с нейросетевой архитектурой. Резко возросло количество военных разработок, в основном направленных на создание сверхбыстрых, "умных" супервычислителей.

Если говорить о главном перспективном направлении - интеллектуализации вычислительных систем, придания им свойств человеческого мышления и восприятия, то здесь нейрокомпьютеры - практически единственный путь развития вычислительной техники. Многие неудачи на пути совершенствования искусственного интеллекта на протяжении последних 30 лет связаны с тем, что для решения важных и сложных по постановке задач выбирались вычислительные средства, не адекватные по возможностям решаемой задаче, в основном из числа компьютеров, имеющихся под рукой. При этом как правило не решалась задача, а показывалась принципиальная возможность ее решения. Сегодня активное развитие систем MPP создало объективные условия для построения вычислительных систем, адекватных по возможностям и архитектуре практически любым задачам искусственного интеллекта.

В Японии с 1993 года принята программа "Real world computing program". Ее основная цель - создание адаптивной, эволюционирующей ЭВМ. Проект рассчитан на 10 лет. Основой разработки является нейротехнология, используемая для распознавания образов, обработки семантической информации, управления информационными потоками и роботами, которые способны адаптироваться к окружающей обстановке. Только в 1996 году было проведено около сотни международных конференций по нейрокомпьютерам и смежным проблемам. Разработки нейрокомпьютеров ведутся во многих странах мира и даже в Австралии создан свой образец коммерческого супернейрокомпьютера.

Теория нейронных сетей

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

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

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

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

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

Таблица 1. Сравнение метода обратного распространения и российских методов адаптации в многослойных нейронных сетях.

NN Признак Российские методы адаптации в многослойных нейронных сетях Метод обратного распространения Примечание
1. Срок разработки и опубликования 1965 - 1971, 1970 - 1974 1976 - 1984
Характеристики входных сигналов
2. Число классов образов (градаций по уровню сигнала указаний учителя о принадлежности входных образов полученному классу 2, К, континуум 2
3. Характеристика стационарности входных образов, как случайных сигналов стационарные, нестационарные стационарные
4. Характеристика "квалификации" учителя произвольная обучение (в=1) редко самообуче ние (в=0)
5. Собственное мнение учителя о своих способностях + -
6. Априорные вероятности появления классов образов произвольные равные
Характеристика пространства решений
7. Количество решений 2, К, континуум 2 для любого варианта числа классов
8. Априорная информация об условной плотности распределения вероятностей относительно образов классов может быть учтена не учитывается
Критерии первичной оптимизации
9. Класс критериев первичной оптимизации средняя функция риска, без учета и при наличии ограничений на составляющие для различных классов, максимум апостериорной информации и другие критерии, соответствующие физике задач энергетическая функция, сред неквадратическая ошибка Российская методика: -min R (средней функции риска) -min R при (составляющей средней фун-ции риска) - min R при и др. критерии
10. Матрица (функция) потерь произвольная диагональная симметричная
Структуры многослойных нейронных сетей
11. Типы структур многослойных нейронных сетей многослойные нейронные сети с полными, и неполными последовательными, перекрестными и обратными связями. Произвольные структуры, адекватные решаемым задачам трехслойные сети с полными последовательными связями
Функционал вторичной оптимизации
12. Метод выбора функционала вторичной оптимизации, соответствующего функционалу первичной оптимизации + -
Методы поиска экстремума функционала вторичной оптимизации
13. Использование комбинированных (градиентных и случайных методов поиска) + -
14. Использование метода стохастической аппроксимации + -
15. Учет информации об ограничениях на настраиваемые коэффициенты (например, по величине или скорости изменения) + -
16. Возможность использования поисковых колебаний + -
17. Возможность фильтрации в контуре адаптации при оценке градиента функционала вторичной оптимизации + -
18. Выбор начальных условий в контуре адаптации весовых коэффициентов + -
Типовые входные сигналы
19. Выбор типовых входных сигналов + -

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

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

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

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

Нейроматематика

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

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

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

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

Прикладная нейроматематика

Как правило множество задач прикладной нейроматематики не решается известными типами вычислительных машин.

Общие задачи

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

  • контроль кредитных карточек. Сегодня 60% кредитных карточек в США обрабатываются с помощью нейросетевых технологий;
  • система скрытого обнаружения веществ с помощью системы на базе тепловых нейронов и с помощью нейрокомпьютера на заказных цифровых нейрочипах. Подобная система фирмы SAIC эксплуатируется уже во многих аэропортах США при досмотре багажа для обнаружения наркотиков, взрывчатых веществ, ядерных и других материалов;
  • система автоматизированного контроля безопасного хранения ядерных изделий.

Обработка изображений

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

Обработка сигналов

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

  • прогнозирование финансовых показателей;
  • прогнозирование надежности электродвигателей;
  • упреждение мощности АЭС и прогнозирование надежности систем электропитания на самолетах;
  • обработка траекторных измерений.

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

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

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

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

Перспективной считается разработка нейрокомпьютера для управления двигательной установкой гиперзвукового самолета. Фактически единственным вариантом реализации высокопараллельной вычислительной системы управления зеркалами (100-400 зеркал) адаптивного составного телескопа сегодня является нейрокомпьютер. Адаптивные режимы управления этим сложным объектом по критерию обеспечения максимального высокого качества изображения и компенсации атмосферных возмущений может обеспечить мощный нейрокомпьютер, в свою очередь реализующий адаптивный режим собственного функционирования.

Весьма адекватной нейрокомпьютеру является задача обучения нейронной сети выработке точного маневра истребителя. Обучение системы с достаточно слабой нейронной сетью требовало 10 часов на ПК 386. Тоже можно сказать и о задаче управления роботами: прямая, обратная кинематические и динамические задачи, планирование маршрута движения робота. Переход к нейрокомпьютерам здесь связан в первую очередь с ограниченностью объемов размещения вычислительных систем, а также с необходимостью реализации эффективного управления в реальном масштабе времени.

Нейросетевые экспертные системы

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

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

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

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

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

  • это направление позволяет создать уникальные суперкомпьютеры на отечественной элементной базе, поскольку для них не так важен уровень развития технологии;
  • разработки нейрочипов и нейрокомпьютеров характеризуются переходом от цифровой обработки к аналого-цифровой и аналоговой с целью резкого увеличения отношения производительность/цена при контролируемой точности вычислений;
  • для разработки нейрочипов больше подходит полузаказная технология, нежели заказная, из-за относительной "сырости" идей архитектуры алгоритмов и нейрочипов, нехватки времени и средств для проведения работ;
  • нейросетевые архитектуры по сравнению с другими приводят к активизации использования новых технологических направлений реализации: нейросистемы на пластине, оптоэлектронные и оптические нейрокомпьютеры, молекулярные нейрокомпьютеры и нанонейроэлементы;
  • возникает потребность в универсализации САПР нейрочипов. Сейчас основное внимание разработчиков нейрочипов сосредоточено на системах Компас и SPICE, которые становятся базовыми для таких предприятий как НИИ "Квант", АО "Ангстрем", "Ангстрем РТМ", НИИМЭ, НИИ "Научный центр", НИИМА "Прогресс";
  • рождение технологии систем на пластине и нанотехнологии приведет к появлению новых сверхпараллельных архитектур. Уже сейчас ясна адекватность нейросетевых архитектур технологии на пластине (американская и японская разработки). Поэтому попытки на уровне наноэлементов делать функциональные блоки со старой архитектурой, соответствующей однопроцессорным машинам, можно считать бесплодными. Начиная с нанонейроэлементов, мы вплотную подходим к другим принципиально новым архитектурным элементам, образующим сверхпараллельные высокопроизводительные вычислительные системы.

Оценка производительности нейрокомпьютеров

Иллюстрацией преимуществ нейрокомпьютеров по сравнению с другими типами суперкомпьютеров может быть диаграмма из рис. 1, подготовленная известным американским специалистом в области нейрокомпьютеров Хехт-Нильсеном.

Рис. 1. Сравнительная диаграмма по соотношению цена/производительность.

***

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

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

Сегодня начинает расширяться сфера коммерческой деятельности в области нейрокомпьютеров или подобных им систем, в частности: нейропакеты; нейроплаты (CNAPS и другие); нейрокомпьютеры (Sinapse и другие); видеокурсы; нейросетевые системы управления электроэррозионными станками; охранные системы с нейросетевыми алгоритмами выделения движущихся объектов; системы "электронного ключа" с распознаванием отпечатков пальцев, рисунка радужной оболочки глаза; экспертная система G2.

Несколько определений

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Построение модели структуры расходов семьи.

4. Перспективы развития нейрокомпьютеров.

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

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

Основные правила выделения функциональных компонентов идеального нейрокомпьютера (по Миркесу):

· Относительная функциональная обособленность: каждый компонент имеет чёткий набор функций. Его взаимодействие с другими компонентами может быть описано в виде небольшого числа запросов.

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

Постепенно складывается рынок нейрокомпьютеров. В настоящее время широко распространены различные высокопараллельные нейро-ускорители (сопроцессоры) для различных задач. Моделей универсальных нейрокомпьютеров на рынке мало отчасти потому, что большинство из них реализованы для спецприменений. Примерами нейрокомпьютеров являются нейрокомпьютер Synapse (Siemens, Германия), процессор NeuroMatrix. Издаётся специализированный научно-технический журнал «Нейрокомпьютеры: разработка, применение». С технической точки зрения сегодняшние нейрокомпьютеры - это вычислительные системы с параллельными потоками одинаковых команд и множественным потоком данных (MSIMD-архитектура). Это одно из основных направлений развития вычислительных систем с массовым параллелизмом.

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

Одним из способов подготовки нейронной сети для передачи является её вербализация: обученную нейронную сеть минимизируют с сохранением полезных навыков. Описание минимизированной сети компактнее и часто допускает понятную интерпретацию.

В нейрокомпьютинге постепенно созревает новое направление, основанное на соединении биологических нейронов с электронными элементами. По аналогии с Software (программное обеспечение - «мягкий продукт») и Hardware (электронное аппаратное обеспечение - «твёрдый продукт»), эти разработки получили наименование Wetware «влажный продукт».

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

(Распространено также и другое определение термина «Wetware» - человеческий компонент в системах «человек-компьютер».)

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

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

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

Естественным продолжением аппаратного и программного подхода к реализации нейрокомпьютера является программно-аппаратный подход.

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

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

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

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

1. Галушкин А.И. Некоторые исторические аспекты развития элементной базы вычислительных систем с массовым параллелизмом (80- и 90-е годы) // Нейрокомпьютер. 2000. № 1

2. Власов А.И. Нейросетевая реализация микропроцессорных систем активной акусто- и виброзащиты // Нейрокомпьютеры: разработка и применение. 2000. № 1.


^

Рисунок 10.1 – Информационная среда в обществе ближайшего будущего

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

Электронная почта Internet позволяет получить почтовое отправление из любой точки Земли (где есть терминалы этой сети) через 5 секунд, а не через неделю или месяц, как при использовании обычной почты.

Широкое внедрение средств мультимедиа (аудио- и видеосредств ввода и вывода информации) позволит общаться с компьютером на естественном языке.

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

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

Информационная революция затронет все стороны жизнедеятельности, появятся системы, создающие виртуальную реальность:

1. Компьютерные системы – при работе на ЭВМ абоненты по видеоканалу каналу будут видеть виртуального собеседника, активно общаться с ним на естественном речевом уровне с аудио- и видео-разъяснениями, советами, подсказками. «Компьютерное одиночество» так вредно влияющее на психику активных пользователей ЭВМ, исчезнет.

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

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

^ 10.1.4 Нейрокомпьютеры и перспективы их развития

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

Основная идея нейрокибернетики заключается в следующем: единственный объект, способный мыслить, - это человеческий мозг. Поэтому, любое «мыслящее» устройство должно каким-то образом воспроизводить его структуру.

Таким образом нейрокибернетика ориентирована на аппаратное моделирование структур, подобных структуре мозга. Физиологами давно установлено, что основой человеческого мозга является большое количество (до 10 21) связанных между собой и взаимодействующих нервных клеток – нейронов. Поэтому усилия нейрокибернетики были сосредоточены на создании элементов, аналогичным нейронам, и их объединении в функционирующие системы. ЭВМ, в которых предполагается широко использовать сети из формальных нейронов, получили название нейрокомпьютеров.

Нейрокомпьютер – это ЭВМ, в основе которой лежит не типовая структура, включающая в себя арифметическое устройство, память, устройство ввода-вывода и управляющее между собой, а нейронная сеть, объединяющая все эти функции в своей структуре.

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

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

^ 10.2 Перспективы развития информационных технологий

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

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

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

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

Искусственный интеллект развивается по следующим направлениям:

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

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

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

4. Распознавание образов. Традиционное направление искусственного интеллекта, берущее начало у самых его истоков. Каждому объекту ставится в соответствие матрица признаков, по которой происходит его распознавание. Это направление близко к машинному обучению, тесно связано с нейрокибернетикой.

5. Новые архитектуры компьютеров. Это направление занимается разработкой новых аппаратных решений и архитектур, направленных на обработку символьных и логических данных. Создаются Пролог- и Лисп-машины, компьютеры V и VI поколений. Последние разработки посвящены компьютерам баз данных и параллельным компьютерам.

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

7. Специальное программное обеспечение. В рамках этого направления разрабатываются специальные языки для решения задач невычислительного плана. Эти языки ориентированы на символьную обработку информации – LISP, PROLOG, РЕФАЛ и др. Создаются пакеты прикладных программ, ориентированные на промышленную разработку интеллектуальных систем, или программные инструментарии искусственного интеллекта, например KEE, ARTS. Достаточно популярно создание пустых экспертных систем, или «оболочек», - EXSYS, MI и др., в которых можно наполнять базы знаний, создавая различные системы.

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

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

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

Выделим условия, при выполнении которых компьютерную программу можно назвать экспертом:

1. Эта программа должна обладать знаниями.

2. Знания, которыми обладает программа, должны быть сконцентрированы на определенную предметную область и предполагают определенную их организацию и интеграцию.

3. Из этих знаний должно непосредственно вытекать решение проблемы.

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

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

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

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

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

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

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

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

Подсистема объяснений – программа, позволяющая пользователю получить ответы на вопросы: «Как была получена та или иная рекомендация?» и «Почему система приняла такое решение?». Ответ на вопрос «как» - пошаговый процесс всего процесса получения решения с указанием использованных фрагментов базы знаний. Ответ на вопрос «почему» - ссылка на умозаключение, непосредственно предшествовавшее полученному решению, т.е. отход на один шаг назад.

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

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

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

^ 11. Модели решения функциональных и вычислительных задач

11.1 Этапы решения задач на ЭВМ

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


  • Постановка задачи;

  • математическое описание задачи;

  • выбор и обоснование метода решения;

  • алгоритмизация вычислительного процесса;

  • составление программы;

  • решение задачи на ЭВМ и анализ результатов.
В задачах другого класса некоторые этапы могут отсутствовать, например, в зада-чах системного программного обеспечения отсутствует математическое описание.

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

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

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

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

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

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

^ Алгоритмизация вычислительного процесса . На данном этапе составляется алгоритм решения задачи согласно действиям, задаваемым выбранным методом решения. Процесс обработки данных разбивается на отдельные относительно самостоятельные блоки, и устанавливается последовательность выполнения блоков. Разрабатывается блок-схема алгоритма.

^ Составление программы . При составлении программы алгоритм решения задачи переводится на конкретный язык программирования. Для программирования обычно используются языки высокого уровня, поэтому составленная программа требует перевода ее на машинный язык ЭВМ. После такого перевода выполняется уже соответствующая машинная программа.

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

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

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

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

Разработанная программа длительного использования устанавливается на ЭВМ, как правило, в виде готовой к выполнению машинной программы. К программе прилагается документация, включая инструкция для пользователя.

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

^ 11.2 Понятие модели, классификация моделей

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

Что же такое модель? Что общего между игрушечным корабликом и рисунком на экране компьютера, изображающим сложную математическую абстракцию? И все же общее есть: и в том, и в другом случае мы имеем образ реального явления, «заместителя» некоторого «оригинала», воспроизводящего его с той иной достоверностью и подробностью. Или то же самое другими словами: модель является представлением объекта в некоторой форме, отличной от формы реального существования.

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

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

Модель – это объект, который замещает оригинал и отражает наиболее важные для данного исследования черты свойства оригинала.

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

I) традиционное (прежде всего для теоретической физики, а также механики, химии, биологии, ряда других наук) математическое моделирование без какой-либо привязки к техническим средствам информатики;

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

Порядковый номер оператора, независимо от его типа, обозначается индексом. Операторы записываются в строку, для пояснения схемы переходов после логических операторов ставятся сверху или снизу горизонтальные стрелки, указывающие место перехода. Если операторы выполняются в естественном порядке, между ними не ставится разделитель, если после i-го оператора (i+1)-й не выполняется, между ними ставится разделитель – точка с запятой. Для логических операторов возможно указание условия, по которому программа разветвляется на ветви.

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

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

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

Таблица 12.3.1. – Схемы алгоритмов, программ, данных и систем


Наименование

Символ

Функция

Терминатор



Начало или конец

Процесс



Обработка данных любого вида

Данные



Данные, носитель не определен, указывает ввод и вывод данных

Предопределенный процесс



Процедура или функция

Подготовка



Цикл с заданным числом повторений

Решение



Условный оператор или переключатель

Соединитель



Обрыв и продолжение линии

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

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

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

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

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

Научное направление

Определение нейровычислительной системы

Математическая статистика

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

Математическая логика

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

Пороговая логика

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

Вычислительная техника

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

Медицина (нейробиологический подход)

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

Экономика и финансы

Устоявшегося определения нет, но чаще всего под нейровычислителем понимают систему обеспечивающую параллельное выполнение “бизнес”-транзакций.

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

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

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

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

3.2.1. Сферы применения

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

Управление в режиме реального времени: самолетами, ракетами и

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

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

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

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

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

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

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

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

3.2.2. Применение нейрокомпьютеров в финансовой и экономической деятельности.

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

Задача

Пример использования нейрокомпьютеров

Прогнозирование временных рядов на основе нейросетевых методов обработки

Валютный курс, спрос и котировки акций, фьючерсные контракты и др.

Прогнозирование банкротств на основе нейросетевой системы распознавания

Составление прогнозирующих отчетов

Применение нейронных сетей к задачам биржевой деятельности

Определение курсов облигаций и акций предприятий с целью вложения средств в эти предприятия

Прогнозирование экономической эффективности финансирования экономических и инновационных проектов

Предсказание результатов вложений

2. Страховая деятельность банков.

Оценка риска страхования инвестиций на основе анализа надежности проекта

Оценка риска страхования вложенных средств

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

3. Прогнозирование банкротств на основе нейросетевой системы распознавания.

Анализ надежности фирмы с точки зрения возможности ее банкротства с помощью нейросетевой системы распознавания и выдача результата в дискретном виде (да. нет)

Анализ величины вероятности банкротства фирмы на основе многокритериальной оценки с построением нелинейной модели с помощью нейронных сетей (пример результата - 74% вероятности банкротства).

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

4. Определение курсов облигаций и акций предприятий с целью вложения средств в эти предприятия.

Выделение долгосрочных и краткосрочных скачков курсовой стоимости акций на основе нелинейной нейросетевой модели

Предсказание изменения стоимости акций на основе нейросетевого анализа временных экономических рядов

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

Определение соотношения котировок и спроса

Прогнозирующая система может состоять из нескольких нейронных сетей, которые обучаются взаимосвязям между различными техническими и экономическими показателями и периодами покупки и продажи акций. Целью прогноза является выбор наилучшего времени для покупки и продажи акций. Здесь рассматриваются также задачи формирования портфеля ценных бумаг и распознавания шаблонов на графике изменения курсов акций, которые позволяют прогнозировать курс акций на последующем отрезке времени. На рынке акций шаблон <треугольника> в диаграмме (графике) изменений курса акций является индикатором важного направления будущего изменения цены акций. Однако никакие методы основанные на правилах не дают хорошего результата, только высококвалифицированные эксперты. «Нейросетевой подход дал весьма многообещающие результаты для Токийской фондовой биржи после обучения сети на 15 обучающих шаблонах треугольника и проверке на одном нейросетевом шаблоне. После чего были проведены 16 экспериментов на данных по ценам акций за последние 3 года. Шаблон треугольника был успешно определен в 15 случаях.»

5. Применение нейронных сетей к задачам анализа биржевой деятельности.

Нейросетевая система распознавания всплесков биржевой активности - анализ деятельности биржи на основе нейросетевой модели

Предсказание цен на товары и сырье с выделением трендов вне зависимости от инфляции и сезонных колебаний - нейросетевая система выделения трендов по методикам <японских свечей> и других гистографических источников отображения информации

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

6. Прогнозирование экономической эффективности финансирования экономических и инновационных проектов.

Предсказание на основе анализа реализованных ранее проектов;

Предсказание на основе соответствия предлагаемого проекта экономической ситуации

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

7. Предсказание результатов займов.

Определение возможности кредитования предприятий

Предоставление кредитов и займов без залога

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

8. Общие приложения нейронных сетей

Применение нейронных сетей в задачах маркетинга и розничной торговли

Одно из самых <модных> применений нейрокомпьютеров в финансовой области. Один из решаемых вопросов - установление цены на новый вид товара на основе многокритериальной оценки.

Моделирование динамики цен на сельскохозяйственную продукцию в зависимости от климатических условий

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

Построение модели структуры расходов семьи.


Одним из способов подготовки нейронной сети для передачи является её вербализация: обученную нейронную сеть минимизируют с сохранением полезных навыков. Описание минимизированной сети компактнее и часто допускает понятную интерпретацию.



В нейрокомпьютинге постепенно созревает новое направление, основанное на соединении биологических нейронов с электронными элементами. По аналогии с Software (программное обеспечение - «мягкий продукт») и Hardware (электронное аппаратное обеспечение - «твёрдый продукт»), эти разработки получили наименование Wetware «влажный продукт».

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

(Распространено также и другое определение термина «Wetware» - человеческий компонент в системах «человек-компьютер».)

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

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

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

Естественным продолжением аппаратного и программного подхода к реализации нейрокомпьютера является программно-аппаратный подход.

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

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

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

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

1. Галушкин А.И. Некоторые исторические аспекты развития элементной базы вычислительных систем с массовым параллелизмом (80- и 90-е годы) // Нейрокомпьютер. 2000. № 1

2. Власов А.И. Нейросетевая реализация микропроцессорных систем активной акусто- и виброзащиты // Нейрокомпьютеры: разработка и применение. 2000. № 1.

3. Ф.Уоссермен, Нейрокомпьютерная техника, М.,Мир, 1992.

4. Итоги науки и техники: физические и математические модели нейронных сетей, том 1, М., изд. ВИНИТИ, 1990.

5. http://ru.wikipedia.org/wiki/Нейрокомпьютер

6. http://www.chipinfo.ru/literature/chipnews/200005/34.html

7. http://works.tarefer.ru/30/100032/index.html

8. http://www.tiptoptech.net/neirokomputer.html

9. http://www.iam.ru/world/neuron.htm

10. http://www.intuit.ru/department/expert/neurocomputing/2/2.html


Http://ru.wikipedia.org/wiki/Нейрокомпьютер

Http://works.tarefer.ru/30/100032/index.html

Уоссермен Ф., Нейрокомпьютерная техника - М., Изд. «Мир», 1992. – С.93

Http://www.chipinfo.ru/literature/chipnews/200005/34.html

Http://ru.wikipedia.org/wiki/Нейрокомпьютер

  • Сергей Савенков

    какой то “куцый” обзор… как будто спешили куда то