1. Взять пример у задачника.
2. Предъявить его сети для решения.
3. Предъявить результат оценке с вычислением производных.
4. Предъявить результат работы оценки сети для вычисления градиента.
4. Оценивание и тестирование решения примера.
1. Взять пример у задачника.
2. Предъявить его сети для решения.
3. Предъявить результат оценке.
4. Предъявить результат интерпретатору ответа.
Заметим, что все четыре варианта работы с сетью, задачником, интерпретатором ответа и оценкой легко объединить в один запрос, параметры которого позволяют указать последовательность действий. Таким образом, исполнитель исполняет всего один запрос — обработать пример. Однако выделение этого компонента позволяет исключить необходимость в прямых связях таких компонентов, как контрастер и учитель, с компонентами оценка и интерпретатор ответа, а их взаимодействие с компонентом сеть свести исключительно к запросам связанным с модификацией обучаемых параметров сети.
Последним компонентом, которого необходимо выделить, является контрастер нейронной сети. Этот компонент является надстройкой над учителем. Его назначение — сводить число связей сети до минимально необходимого или до «разумного» минимума (степень разумности минимума определяется пользователем). Кроме того, контрастер, как правило, позволяет свести множество величин весов связей к 2–4, реже к 8 выделенным пользователем значениям. Наиболее важным следствием применения процедуры контрастирования является получение логически прозрачных сетей — сетей, работу которых легко описать и понять на языке логики [76, 83].
Для координации работы всех компонент нейрокомпьютера вводится макрокомпонента Нейрокомпьютер. Основная задача этого компонента — организация интерфейса с пользователем и координация действий всех остальных компонентов.
Запросы компонентов нейрокомпьютера
В этом разделе приводится основной список запросов, которые обеспечивают функционирование нейрокомпьютера. За редким исключением приводятся только запросы, которые генерируются компонентами нейрокомпьютера (некоторые из этих запросов могут поступать в нейрокомпьютер от пользователя). Здесь рассматривается только форма запроса и его смысл. Полный список запросов каждого компонента, детали их исполнения и форматы данных рассматриваются в соответствующих разделах приложения 3.
На рис. 1. приведена схема запросов в нейрокомпьютере. При построении схемы предполагается, что на каждый запрос приходит ответ. Вид ответа описан при описании запросов. Стрелки, изображающие запросы, идут от объекта, инициирующего запрос, к объекту его исполняющему.
Рис 1. Схема запросов в нейрокомпьютере
Запросы к задачнику
Запросы к задачнику позволяют последовательно перебирать все примеры обучающей выборки, обращаться непосредственно к любому примеру задачника и изменять обучающую выборку. Обучающая выборка выделяется путем «раскрашивания» примеров задачника в различные «цвета». Понятие цвета и способ работы с цветами описаны в разделе «Переменные типа цвет и операции с цветами».
Запросы последовательного перебора обучающей выборки:
«Инициировать выдачу примеров цвета К». По этому запросу происходит инициация выдачи примеров К-го цвета.
«Дать очередной пример». По этому запросу задачник возвращает предобработанные данные очередного примера и, при необходимости, правильные ответы, уровень достоверности и другие данные этого примера.
«Следующий пример». По этому запросу задачник переходит к следующему примеру обучающей выборки. Если такого примера нет, то возвращается признак отсутствия очередного примера.
Для непосредственного доступа к примерам задачника служит запрос «Дать пример номер N». Действия задачника в этом случае аналогичны выполнению запроса «Дать очередной пример».
Для изменения обучающей выборки служит запрос «Окрасить примеры в цвет К». Этот запрос используется редко, поскольку изменение обучающей выборки, как правило, осуществляется пользователем при редактировании задачника.
Запрос к предобработчику
Предобработчик сам никаких запросов не генерирует. Единственный запрос к предобработчику — «Предобработать пример» может быть выдан только задачником.
Запрос к исполнителю
«Обработать очередной пример». Вид ответа зависит от параметров запроса.