Запросы к учителю
«Начать обучение сети». По этому запросу учитель начинает процесс обучения сети.
«Прервать обучение сети». Этот запрос приводит к прекращению процесса обучения сети. Этот запрос требуется в случае необходимости остановить обучение сети до того, как будет удовлетворен критерий остановки обучения, предусмотренный в учителе.
«Провести N шагов обучения» — как правило, выдается контрастером, необходим для накопления показателей чувствительности.
Запрос к контрастеру
«Отконтрастировать сеть». Ответом является код завершения операции контрастирования.
Запрос к оценке
Оценка не генерирует никаких запросов. Она выполняет только один запрос — «Оценить пример». Результатом выполнения запроса является оценка примера и, при необходимости, вектор производных оценки по выходным сигналам сети.
Запрос к интерпретатору ответа
Интерпретатор ответа не генерирует никаких запросов. Он выполняет только один запрос — «Интерпретировать ответ». Ответом является результат интерпретации.
Запросы к сети
Сеть не генерирует никаких запросов. Набор исполняемых сетью запросов можно разбить на три группы.
Запрос, обеспечивающий тестирование.
«Провести прямое функционирование». На вход сети подаются данные примера. На выходе сети вычисляется ответ сети, подлежащий оцениванию или интерпретации.
Запросы, обеспечивающие обучение сети.
«Обнулить градиент». При исполнении этого запроса градиент оценки по обучаемым параметрам сети кладется равным нулю. Этот запрос необходим, поскольку при вычислении градиента по очередному примеру сеть добавляет его к ранее вычисленному градиенту по сумме других примеров.
«Вычислить градиент по примеру». Проводится обратное функционирование сети. Вычисленный градиент добавляется к ранее вычисленному градиенту по сумме других примеров.
«Изменить карту с шагами Н1 и H2». Генерируется учителем во время обучения.
Запрос, обеспечивающие контрастирование.
«Изменить карту по образцу». Генерируется контрастером при контрастировании сети.
Таким образом, выделено семь основных компонентов нейрокомпьютера, определены их функции и основные исполняемые ими запросы.
Лекция 7.2. Задачник и обучающее множество
Эта глава посвящена одному из наиболее важных и обделенных вниманием компонентов нейрокомпьютера — задачнику. Важность этого компонента определяется тем, что при обучении сетей всех видов с использованием любых алгоритмов обучения сети необходимо предъявлять примеры, на которых она обучается решению задачи. Источником данных для сети является задачник. Кроме того, задачник содержит правильные ответы для сетей, обучаемых с учителем. Аппаратная реализация этого компонента в общем случае неэффективна.
В этой главе рассматриваются основные структуры и функции компонента задачник. Отметим, что задачник рассматривается только с точки зрения его использования нейронной сетью. Совершенно очевидно, что невозможно предусмотреть всех вариантов интерфейса между пользователем и задачником. Действительно, было бы странно, если бы в одном и том же интерфейсе обрабатывались задачники, содержащие только числовые поля, задачники, содержащие исключительно графическую информацию и задачники смешанного типа.
Структуры данных задачника
С точки зрения нейрокомпьютера задачник представляет собой прямоугольную таблицу, поля которой содержат информацию о входных данных примеров задачи, правильные ответы и другую информацию. На данный момент существует три основных способа хранения однотипных данных — базы данных, электронные таблицы, текстовые файлы. Основными критериями выбора являются удобство в использовании, компактность и универсальность. Поскольку задачник должен хранить однотипные данные и предоставлять их для обработки другим компонентам нейрокомпьютера, а не производить вычисления, то функционально задачник должен являться базой данных. Наиболее подходящим кажется формат табличных (реляционных) баз данных.
В современных операционных системах предусмотрены различные способы обмена данными между приложениями (устройства, передающие информацию с датчиков, так же будем считать приложениями). Наиболее универсальным является обмен в символьном формате. Вопрос конкретной реализации обмена выходит за рамки данной работы, поскольку это чисто технический вопрос. Вне зависимости от того, каким путем и из какого приложения данные попали в задачник, их представление должно быть одинаковым (принятым в данной реализации задачника). То есть, откуда бы не получал данные задачник, остальные компоненты нейрокомпьютера всегда получают данные от задачника в одном и том же виде. Этот вид зафиксирован в приложении при описании стандарта компонента задачник.