Интеллектуализация вычислительных систем
Современные компьютеры превосходят человека по способности производить числовые и символьные вычисления. Однако человек может без усилий решать сложные задачи, непосильные компьютерам. В чем причина столь значительного различия?
Подобно биологической нейронной системе интеллектуальная система (ИНС) является вычислительной системой с огромным числом параллельно функционирующих простых процессоров и множеством связей. Модели ИНС в некоторой степени воспроизводят «организационные» принципы, свойственные мозгу человека.
Глубокое изучение ИНС требует знания нейрофизиологии, науки о познании, психологии, статистической механики, теории управления, теории вычислений, проблем искусственного интеллекта, статистики/математики, распознавания образов, компьютерного зрения, параллельных вычислений и аппаратных средств (цифровых, аналоговых, оптических).
Если говорить об интеллектуализации вычислительных систем, придания им свойств человеческого мышления и восприятия, то здесь нейрокомпьютеры – практически единственный путь развития вычислительной техники.
Нейрокомпьютер – это вычислительная система с архитектурой аппаратного и программного обеспечения, адекватной выполнению алгоритмов, представленных в нейросетевом логическом базисе.
Нейрокомпьютеры отличаются от обычных компьютеров не просто большими возможностями – принципиально меняется способ использования машины. Место программирования занимает обучение, нейрокомпьютер учится решать задачи. Обучение – это корректировка связей, в результате которой каждое входное воздействие приводит к формированию соответствующего выходного сигнала. После обучения сети можно применять полученные навыки к новым входным сигналам. При переходе от программирования к обучению повышается эффективность решения «интеллектуальных» задач.
Вычисления в нейронных сетях существенно отличаются от традиционных; в силу высокой распараллеленности их можно рассматривать как коллективное явление. В нейронной сети нет локальных областей запоминания конкретной информации: вся информация запоминается во всей сети.
Основные перспективные направления современного развития нейрокомпьютерных технологий: нейропакеты, нейросетевые экспертные системы, СУБД с включением нейросетевых алгоритмов, обработка изображений, управление динамическими системами и обработка сигналов, управление финансовой деятельностью, оптические нейрокомпьютеры, виртуальная реальность.
Наблюдается тенденция перехода от программной эмуляции к программно-аппаратной реализации нейросетевых алгоритмов с резким увеличением числа разработок СБИС, нейрочипов с нейросетевой архитектурой. Резко возросло количество военных разработок, в основном направленных на создание сверхбыстрых, «умных» супервычислителей. Приведем примеры. Сегодня 60% кредитных карточек в США обрабатываются с помощью нейросетевых технологий; разработана система скрытого обнаружения веществ на базе тепловых нейронов и с помощью нейрокомпьютера на заказных цифровых нейрочипах. Подобная система фирмы SAIC эксплуатируется уже во многих аэропортах США при досмотре багажа для обнаружения наркотиков, взрывчатых веществ, ядерных и других материалов. Существует система автоматизированного контроля безопасного хранения ядерных изделий.
Перспективными задачами обработки изображений с помощью нейрокомпьютеров являются обработка аэрокосмических изображений (сжатие с восстановлением, сегментация, контрастирование и обработка текстур), выделение на изображении движущихся целей, поиск и распознавание на нем объектов заданной формы, обработка потоков изображений, обработка информации в высокопроизводительных сканерах.
Актуален класс задач, связанных с прогнозированием временных зависимостей: прогнозирование финансовых показателей; прогнозирование надежности электродвигателей и систем электропитания на самолетах; обработка траекторных измерений. При решении этих задач сейчас все переходят от простейших регрессионных и других статистических моделей прогноза к существенно нелинейным адаптивным экстраполирующим фильтрам, реализованным в виде сложных нейронных сетей.
При обработке гидролокационных сигналов нейрокомпьютеры применяются при непосредственной обработке сигнала, распознавании типа надводной или подводной цели, определении ее координат. Сейсмические сигналы по структуре весьма близки к гидролокационным. Обработанные нейрокомпьютером позволяют получить с достаточной точностью данные о координатах и мощности землетрясения или ядерного взрыва.
Нейрокомпьютеры начали активно использовать при обработке сейсмических сигналов в нефтегазоразведке.
Нейрокомпьютеры в системах управления динамическими объектами – это одна из самых перспективных областей применения нейрокомпьютеров. США и Финляндия уже ведут работы по использования нейрокомпьютеров для управления химическими реакторами.
В 1995 г. была завершена разработка первого отечественного нейрокомпьютера на стандартной микропроцессорной элементной базе, а сегодня проводится разработка на базе отечественных нейрочипов, в том числе супернейрокомпьютера для решения задач, связанных с системами уравнений математической физики: аэро-, гидро- и газодинамики.
Главный результат разработки нейросетевого алгоритма решения задачи – возможность создания архитектуры нейрочипа, адекватного решаемой задаче. Для эмуляции нейросетевых алгоритмов с использованием универсальных микропроцессорных средств эффективнее создать архитектуры, ориентированные на выполнение нейросетевых операций, чем использовать стандартные, ориентированные на модификацию однопроцессорных алгоритмов решения задач.
Рынок программных продуктов
Программный продукт (ПП) – это комплекс взаимосвязанных программ для решения определенной проблемы (задачи) массового спроса, подготовленный к реализации как любой вид промышленной продукции.
Программный продукт должен быть соответствующим образом подготовлен к эксплуатации, иметь необходимую техническую документацию, предоставлять сервис и гарантию надежной работы программы, иметь товарный знак изготовителя, а также (желательно) код государственной регистрации.
Отличием программных продуктов является их системность – функциональная полнота и законченность реализуемых функций обработки, которые применяются в совокупности.
По характеру использования и категориям пользователей программные продукты можно разбить на две группы:
· утилитарные программы («программы для себя»), предназначенные для удовлетворения нужд разработчиков, которые чаще всего играют роль сервиса в технологии обработки данных либо являются программами решения функциональных задач, не предназначенных для широкого распространения;
· программные продукты, предназначенные для удовлетворения потребностей пользователей, широкого распространения и продажи.
Таблица 6