Читаем Учебное пособие по курсу «Нейроинформатика» полностью

В ходе выполнения функции для каждого элемента массива параметров генерируется случайное значение. Для генерации используется генератор случайных чисел, равномерно распределенных на отрезке от нуля до единицы. После получения случайной величины a она преобразуется по формуле a′ = a(amaxamin)–amin к случайной величине, распределенной на отрезке [amin, amax]. Величины amin и amax для параметров сети определяются их типом (см. раздел «Описание элементов»). Для входных сигналов принимается amin=–1, amax=1. Если обучаемым объектом являются параметры, то генерация случайного массива производится путем генерации запроса RandomDirection компонента сеть. Если при выполнении функции возникла ошибка, то генерируется внутренняя ошибка 605 — ошибка при исполнении внешнего запроса, управление передается обработчику ошибок, функция возвращает значение ложь. В противном случае возвращается значение истина.

Модификация массива (Modify)

Заголовок функции:

Function Modify(Direct: PRealArray; OldStep, NewStep: Real): Logic;

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

Direct — указатель на массив направления модификации сети.

OldStep — вес старого массива параметров в модифицированном.

NewStep — вес массива направления модификации в модифицированном массиве параметров.

Эта функция генерирует запрос на модификацию параметров сети (см. раздел «Провести обучение (Modify)»). Вызов запроса имеет вид:

Modify(Net, OldStep, NewStep, Tipe, Direct)

Аргументами запроса являются:

Net — указатель на пустую строку (используется сеть по умолчанию).

OldStep, NewStep — аргументы функции.

Tipe — значение аргумента What в запросе InstructionObject.

Direct — аргумент функции.

Аргумент функции Direct может быть пустым указателем. В этом случае для модификации используется массив градиента, хранящийся вместе с сетью. В случае возникновения ошибки в ходе модификации сети (запрос Modify возвращает значение ложь) генерируется внутренняя ошибка 605 — ошибка при исполнении внешнего запроса, управление передается обработчику ошибок, функция возвращает значение ложь. В противном случае возвращается значение истина.

Оптимизация шага (Optimize)

Заголовок функции:

Function Optimize (Direct: PRealArray; Step: Real): Real;

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

Direct — указатель на массив направления модификации сети.

Step — начальный шаг в направлении Direct.

Действия, выполняемые функцией Optimize, описаны в разделе «Подбор оптимального шага». В случае возникновения ошибки при выполнении функции она генерирует внутреннюю ошибку 605 — ошибка при исполнении внешнего запроса, передает управление обработчику ошибок, функция возвращает значение 0. В противном случае возвращается значение оценки при оптимальном шаге. Следует отметить, что после завершения выполнения функции, параметры сети соответствуют результату выполнения функции Modify(Direct, 1, Step), где Step — значение оптимального шага.

Сохранить массив (SaveArray)

Заголовок функции:

Function SaveArray(Vec: PRealArray): Logic;

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

Vec — указатель на массив.

Функция генерирует запрос nwGetData. После выполнения функции в массиве, на который указывает аргумент Vec, содержится текущий массив параметров. В случае возникновения ошибки в ходе выполнения функции генерируется внутренняя ошибка 605 — ошибка при исполнении внешнего запроса, управление передается обработчику ошибок, функция возвращает значение ложь. В противном случае возвращается значение истина.

Установить параметры (SetArray)

Заголовок функции:

Function SetArray(Vec: PRealArray): Logic;

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

Vec — указатель на массив, содержащий параметры, которые необходимо установить.

Функция генерирует запрос nwSetData.После выполнения функции параметры сети совпадают с параметрами, содержащимися в массиве, на который указывает аргумент Vec. В случае возникновения ошибки в ходе выполнения функции генерируется внутренняя ошибка 605 — ошибка при исполнении внешнего запроса, управление передается обработчику ошибок, функция возвращает значение ложь. В противном случае возвращается значение истина.

Вычислить оценку (Estimate)

Заголовок функции:

Function Estimate(Handle: Integer; All: Logic): Real;

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

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

All — признак обучения по всему обучающему множеству.

Перейти на страницу:

Похожие книги

Все жанры