Рефераты. Функциональные модели универсального нейрокомпьютера

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

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

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

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

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

6.2.               Запросы к компоненту исполнитель

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

Таблица 3

Предопределенные константы компонента исполнитель

Название

Иденти-
фикатор

Значение

Десят.

Шестн

Вычислять оценку

Estimate

1

H0001

Интерпретировать ответ

Interpret

2

H0002

Вычислять градиент

Gradient

4

H0004

Подготовка к контрастированию

Contrast

8

H0008

Перейти к следующему примеру

NextExample

16

H0010

Остановиться в конце обучающего множества

StopOnEnd

32

H0020

Устанавливать ответы

PutAnswers

64

H0040

Устанавливать оценки

PutEstimations

128

H0080

Устанавливать уверенность в ответе

PutReliability

256

H0100

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

6.2.1.                       Позадачная обработка (TaskWork)

Описание запроса:

Pascal:

Function TaskWork(Instruct, Handle : Integer; Var Answers, Reliability : PRealArray; Var Estim : Real) : Logic;

C:

Logic TaskWork(Integer Instruct, Integer Handle, PRealArray* Answers, PRealArray* Reliability; Real* Estim)

Описание аргументов:

Instruct – содержит инструкции о способе исполнения.

Handle – номер сеанса в задачнике.

Answers – указатель на массив вычисленных ответов.

Reliability – указатель на массив коэффициентов уверенности сети в ответах.

Estim – оценка решения примера.

Назначение – производит обработку одного примера.

Переменные, используемые при исполнении запроса

InArray, RelArray – адреса массивов для обменов с задачником.

Back – адрес массива для обменов с оценкой.

Описание исполнения.

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

1.      Если в аргументе Instruct установлен бит Gradient и не установлен бит Estimate, то выполнение запроса прекращается, и генерируется ошибка 001 – Некорректное сочетание флагов в аргументе Instruct.

2.      Если в аргументе Instruct установлен бит Gradient, то генерируется запрос к сети NullGradient с аргументом Null.

3.      Если в аргументе Instruct установлен бит NextExample, то генерируется запрос к задачнику Next с аргументом Handle. (Переход к следующему примеру)

4.      Генерируется запрос к задачнику Last с аргументом Handle. (Проверка, существует ли пример)

5.      Если запрос Last вернул значение истина, то

5.1.     Если в аргументе Instruct установлен бит StopOnEnd, то исполнение запроса прекращается, возвращается значение ложь. (Примера нет, переход на начало не нужен)

5.2.     Генерируется запрос к задачнику Home с аргументом Handle. (Переход на начало обучающего множества)

6.      Переменной InArray присваивается значение Null и генерируется запрос к задачнику Get с аргументами Handle, InArray, tbPrepared (Получает от задачника предобработанные входные сигналы)

7.      Генерируется запрос к сети Forw, с аргументами Null, InArray (выполняется прямое функционирование сети).

8.      Освобождается массив InArray

9.      Присваивает переменной Data значение Null и генерирует запрос к сети GetNetData с аргументами Null, OutSignals, Data (Получает от сети выходные сигналы).

10.  Если в аргументе Instruct установлен бит Interpret, то

10.1. Генерируется запрос к интерпретатору ответа Interpretate с аргументами Data, Answers, Reliability. (Производит интерпретацию ответа)

10.2. Если в аргументе Instruct установлен бит PutAnswers, то генерируется запрос к задачнику Put с аргументами Handle, Answers, tbCalcAnswers (Передает задачнику вычисленные ответы)

10.3. Если в аргументе Instruct установлен бит PutReliability, то генерируется запрос к задачнику Put с аргументами Handle, Reliability, tbCalcReliability (Передает задачнику вычисленные коэффициенты уверенности в ответе)

11.  Если в аргументе Instruct установлен бит Gradient, то создается массив Back того же размера, что и Data. В противном случае переменной Back присваивается значение Null.

12.  Если в аргументе Instruct установлен бит Estimate, то

12.1. Переменной InArray присваивается значение Null и генерируется запрос к задачнику Get с аргументами Handle, InArray, tbAnswers (Получает от задачника правильные ответы)

12.2. Переменной RelArray присваивается значение Null и генерируется запрос к задачнику Get с аргументами Handle, RelArray, tbCalcReliability (Получает от задачника достоверности ответов)

12.3. Генерируется запрос к оценке Estimate с аргументами Data, Back, InArray, RelArray, Direv, Estim. Вместо Direv передается ноль, если в аргументе Instruct установлен бит Gradient, и 1 в противном случае. (Вычисляет оценку примера и, возможно, производные)

12.4. Если в аргументе Instruct установлен бит PutEstimations, то генерируется запрос к задачнику Put с аргументами Handle, Estim, tbEstimations (Передает задачнику оценку примера)

12.5. Освобождает массивы InArray и RelArray.

13.  Если в аргументе Instruct установлен бит Gradient, то генерируется запрос к сети Back, с аргументами Null, Back. Освобождает массив Back. (Выполняется обратное функционирование сети)

14.  Освобождается массив Data.

15.  Если в аргументе Instruct установлен бит Contrast, то генерируется запрос к контрастеру ContrastExample с аргументом истина.

16.  Завершает исполнение, возвращая значение истина

6.2.2.                       Обработка обучающего множества (TaskSetWork)

Описание запроса:

Pascal:

Function TaskSetWork(Instruct, Handle : Integer; Var Tasks : Integer; Var Correct : PRealArray; Var Estim : Real) : Logic;

C:

Logic TaskSetWork(Integer Instruct, Integer Handle, Integer* Tasks, PRealArray* Correct, Real* Estim)

Описание аргументов:

Instruct – содержит инструкции о способе исполнения.

Handle – номер сеанса в задачнике.

Tasks – число примеров в обучающем множестве.

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

Estim – средняя оценка решения всех примеров обучающего множества.

Назначение – производит обработку всех примеров обучающего множества.

Переменные, используемые при исполнении запроса

InArray, AnsArray, RelArray – адреса массивов для обменов с задачником.

Answers – указатель на массив вычисленных ответов.

Reliability – указатель на массив коэффициентов уверенности сети в ответах.

Back – адрес массива для обменов с оценкой.

Work – рабочая переменная типа Real для подсчета суммарной оценки.

Weight – рабочая переменная типа Real для веса примера.

Описание исполнения.

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

Страницы: 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76



2012 © Все права защищены
При использовании материалов активная ссылка на источник обязательна.