3. Если список сетей компонента сеть пуст или имя сети, переданное в аргументе Net в этом списке не найдено, то возникает ошибка 301 — неверное имя сети, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Вызывается метод Forw сети, имя которой было указано в аргументе Net.
4. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 304 — ошибка прямого функционирования. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.
Описание запроса:
Pascal:
Function Back(Net: PString; BackOutSignals: PRealArray): Logic;
C:
Logic Back(PString Net, PRealArray BackOutSignals)
Описание аргумента:
Net — указатель на строку символов, содержащую имя сети.
BackOutSignals — массив производных функции оценки по выходным сигналам сети.
Назначение — проводит обратное функционирование сети, указанной в параметре Net.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента Net дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первая сеть в списке сетей компонента сеть.
3. Если список сетей компонента сеть пуст или имя сети, переданное в аргументе Net в этом списке не найдено, то возникает ошибка 301 — неверное имя сети, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Вызывается метод Back сети, имя которой было указано в аргументе Net.
5. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 305 — ошибка обратного функционирования. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.
Ко второй группе запросов относятся четыре запроса: Modify — модификация параметров, обычно называемая обучением, ModifyMask — модификация маски обучаемых синапсов, NullGradient — обнуление градиента и RandomDirection — сгенерировать случайное направление спуска.
Описание запроса:
Pascal:
Function Modify(Net: PString; OldStep, NewStep: Real; Tipe: Integer; Grad: PRealArray): Logic;
C:
Logic Modify(PString Net, Real OldStep, Real NewStep, Integer Tipe, PRealArray Grad)
Описание аргументов:
Net — указатель на строку символов, содержащую имя сети.
OldStep, NewStep — параметры обучения.
Tipe — одна из констант InSignals или Parameters.
Grad — адрес массива поправок или пустой указатель.
Назначение — проводит обучение параметров или входных сигналов сети, указанной в параметре Net.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента Net дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первая сеть в списке сетей компонента сеть.
3. Если список сетей компонента сеть пуст или имя сети, переданное в аргументе Net в этом списке не найдено, то возникает ошибка 301 — неверное имя сети, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Если аргумент Grad содержит пустой указатель, то поправки берутся из массива Back.Parameters или Back.InputSignals в зависимости от значения аргумента Tipe.
5. В зависимости от значения аргумента Tipe для каждого параметра или входного сигнала P, при условии, что соответствующий ему элемент маски обучаемости, соответствующей аргументу Tipe равен –1 (значение истина) выполняется следующая процедура:
• P1=P*OldStep+DP*NewStep
• Если для типа, которым описан параметр P, заданы минимальное и максимальное значения, то:
• P2=Pmin, при P1
• P2=Pmax, при P1>Pmax
• P2=P1 в противном случае
Описание запроса:
Pascal:
Function ModifyMask(Net: PString; Tipe: Integer; NewMask: PLogicArray): Logic;
C:
Logic Modify(PString Net, Integer Tipe, PLogicArray NewMask)
Описание аргументов:
Net — указатель на строку символов, содержащую имя сети.
Tipe — одна из констант InSignals или Parameters.
NewMask — новая маска обучаемости.
Назначение — Заменяет маску обучаемости параметров или входных сигналов сети, указанной в параметре Net.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента Net дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первая сеть в списке сетей компонента сеть.