|
В запросах не указываются используемые сеть, оценка и интерпретатор ответа, поскольку компонент исполнитель всегда использует текущие сеть, оценку и интерпретатор ответа.
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
При использовании материалов активная ссылка на источник обязательна.