Заметим, что
Введем совокупность образов
Параметр n > 0 назовем запасом на инертность среды. Смысл
смысл которого совпадает со смыслом
Запас на инертность введен из следующих соображений. Совершенно очевидно, что бесполезно пытаться уловить закономерность вида “был распознан образ
Теперь сопоставим каждому образу из ФРО некоторое число или оценку. Пусть
где
Теперь можно определить, что такое база знаний.
Определение 4.4. Назовем базой знаний совокупность сформированных образов
Определение 4.5. Обозначим объединение множеств всех образов (4.1) и (4.2) через
5. Система построения и исследования нейронных сетей СПИНС.
5.1. Актуальность системы.
Для моделирования на ЭВМ компонентов УС, сконструированных из нейронов, была осознана необходимость в специальном инструменте, позволяющем с помощью удобного графического интерфейса создавать библиотеки шаблонов блоков, строить сети из блоков, построенных по шаблонам, и просчитывать сеть с возможностью просмотра промежуточных состояний сети, сбора и анализа статистики о работе сети в целях отладки. При создании (или выборе) инструмента использовались следующие критерии:
открытость, или спецификация и реализация (generic) интерфейса и (процедур обработки) форматов данных, позволяющие проводить модификацию и наращивание функциональности системы не затрагивая ядра системы и с минимальными затратами на модификацию связанных компонент, другими словами, минимизация связей между компонентами;
гибкость, возможности по конструированию как можно большего числа классов формальных моделей нейронов и сетей под самые различные приложения от моделей УС спутников и космических аппаратов до систем поддержки принятия решений и систем предсказания курса ценных бумаг;
многоплатформенность, максимальная независимость от операционной системы;
удобство и приспособленность к моделированию именно систем ААУ, простота в использовании и способность эффективно работать на относительно слабых ресурсах ЭВМ (класса персональных компьютеров), дешевизна.
Анализ имеющихся в наличии или доступных систем САПР и других систем (например, LabView или систем с классическими НС), тем или иным образом удовлетворяющих первым трем критериям, показал, что все они являются либо тяжеловесными, либо слишком дорогими, либо очень плохо приспособлены к моделированию систем ААУ и ОУ с формальной моделью нейрона, изложенной в разделе “Аппарат ФРО” или к работе с сетями, состоящими из тысяч нейронов. Таким образом, возникла необходимость в инструменте для научно-исследовательских целей, который бы позволял проверять идеи ААУ и создавать прототипы УС на НС.
5.2. Общая концепция системы.
Рис. 5.1. Общая схема ядра СПИНС.
На приведенной схеме (рис 5.1) указаны основные классы объектов ядра системы и их взаимодействие. Стрелками показаны потоки данных при работе системы. Каждому из основных блоков УС соответствует свой блок в системе. Четыре блока: ФРО, БЗ, БОС и БПР составляют УС. Напомним, что в подразделе “Формализация НС” раздела 1 мы определили такие понятия как блок, выходная функция блока, шаблон, нейронная сеть и формальная модель нейрона. Из формальной модели НС следует, что блок – это иерархическая структура, в которой элементы одного уровня соединены в сеть и каждый из элементов уровня может быть сетью, состоящей из элементов более низкого уровня. Рассматривая выбранный элемент какого-нибудь уровня, можно считать его “черным ящиком”, т.е. абстрагироваться от его содержимого и внутреннего устройства. Например, можно на некотором промежуточном этапе конструирования УС абстрагироваться от нейро-сетевой реализации какого-либо блока верхнего уровня и попробовать различные реализации, причем необязательно нейросетевые. Система не накладывает ограничений на внутреннее устройство каждого блока, поэтому оно может не иметь внутренней иерархии, а просто представляться некоторой функцией выхода. Далее, в процессе развития УС, содержимое отдельных блоков может поменяться, возможно стать более сложным и иерархическим, при этом поведение системы не изменится, если новое содержимое обеспечивает функциональность старого в смысле эквивалентности выходных функций. Таким образом, облегчается разработка системы, т.к. появляется возможность конструирования “сверху вниз”, нет необходимости реализовывать блок сразу через НС, можно поставить временную “заглушку”, а в процессе развития системы усложнять, дополнять или заменять на совершенно иную внутреннюю конструкцию блоков.
Помимо указанных блоков, в систему входят еще два важных класса объектов: конструкторы сети и анализаторы работы сети. Первые, как видно из названия, предназначены для создания рабочих копий НС в памяти компьютера по различным источникам, например по спецификации сети из файла. Собственно, для каждого источника и создается свой объект. (Следует отличать данные объекты от конструкторов сетей, предназначенных для создания с помощью ГИП файлы спецификации сетей; эти конструкторы в ядро СПИНС не входят). Спецификация сети может ссылаться на шаблоны блоков из библиотеки, которые, таким образом, также могут являться источником для конструкции. Анализаторы нужны при отладке сетей. Дело в том, что сети могут содержать тысячи и десятки тысяч элементов (принципиальных ограничений нет,имеют место ограничения только по памяти и производительности компьютера), работу которых одновременно проследить просто невозможно, особенно если временной интервал работы составляет сотни и более тактов. Поэтому необходимо как-то обобщать информацию о состоянии сети (которое есть совокупность состояний каждого элемента) в каждый момент времени и выдавать пользователю суммарную информацию, возможно, с некоторой детализацией по усмотрению пользователя. Для такой задачи и нужны специальные объекты – анализаторы. Эти объекты могут сохранять историю состояний выбранных элементов в выбранные интервалы времени и впоследствии ее анализировать, т.е. определять статистического рода информацию. Каждый объект решает эту задачу по-своему и может быть выбран в зависимости от рода необходимой информации о работе сети.