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

<Описание распределения данных>::= <Описание распределения Данных, Предобработчика, Частного предобработчика, Data>

<Конец описания предобработчика>::= End Preparator

Описание языка описания предобработчика

Структура описания предобработчика имеет вид: заголовок; описание функций; описание частных предобработчиков; описание состава; установление параметров; описание сигналов; описание данных; описание распределения сигналов; описание распределения данных; конец описания предобработчика.

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

Описание функций — фрагмент описания, в котором описаны функции, необходимые для работы предобработчиков.

Описание частного предобработчика — это описание процедуры, вычисляющей входные сигналы нейронной сети по входным данным. Формальные аргументы служат для задания размерностей обрабатываемых векторов. При выполнении частный предобработчик получает в качестве аргументов два вектора — входных данных и входных сигналов. Формально, при исполнении частный предобработчик имеет описание следующего вида:

Pascal:

Procedure Preparator(Data, Signals: PRealArray);

C:

void Preparator(PRealArray Data; PRealArray Signals);

В разделе описания состава перечисляются частные предобработчики, входящие в состав предобработчика. Признаком конца раздела служит символ «;».

В необязательном разделе установления параметров производится задание значений параметров (статических переменных) частных предобработчиков. После ключевого слова SetParameters следует список значений параметров в том порядке, в каком параметры были объявлены при описании частного интерпретатора (для стандартных интерпретаторов порядок параметров соответствует порядку, приведенному в описании стандартных предобработчиков в разделе «Стандартные предобработчики»). При использовании одного оператора задания параметров для задания параметров нескольким экземплярам одного частного предобработчика после ключевого словаsetparameters указывается столько выражений, задающих значения параметров, сколько необходимо для одного экземпляра.

В необязательном разделе «описание сигналов» указывается число сигналов, вычисляемых предобработчиком. Если этот раздел опущен, то полагается, что число вычисляемых предобработчиком сигналов равно сумме сигналов, вычисляемых всеми частными предобработчиками. В константном выражении возможно использование функции NumberOf, аргументом которой является имя частного предобработчика (или его псевдоним) и ключевое слово Signals, в качестве второго аргумента.

В необязательном разделе «описание данных» указывается число входных данных, предобрабатываемых предобработчиком. Если этот раздел опущен, то полагается, что число предобрабатываемых предобработчиком данных равно сумме данных, предобрабатываемых всеми частными предобработчиками. В константном выражении возможно использование функции NumberOf, аргументом которой является имя частного предобработчика (или его псевдоним) и ключевое слово Data, в качестве второго аргумента.

В необязательном разделе описания распределения сигналов (данных) указывается для каждого частного предобработчика какие сигналы (входные данные) из общего вектора сигналов (данных) передаются ему для обработки.

Наиболее часто встречающиеся интерпретаторы объявлены стандартными. Для стандартных интерпретаторов описание частных интерпретаторов отсутствует.

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

Пример описания предобработчика

В этом разделе приведены два примера описания одного и того же предобработчика для метеорологической задачи. Используется следующий состав предобработчика: первый элемент вектора входных данных (температура воздуха) обрабатывается простейшим предобработчиком (EmptyPrep); второй (облачность) — бинарным предобработчиком (BinaryPrep); третий (направление ветра) — предобработчиком неупорядоченных качественных признаков (UnOrdered); четвертый (осадки) — предобработчиком неупорядоченных качественных признаков (Ordered).

В первом примере приведено описание дубликатов всех стандартных предобработчиков. Во втором — использованы стандартные предобработчики.

Пример 1.

Preparator Meteorology

Function Sigmoid(X Real): Real;

Begin

 Sigmoid = X / (1 + Abs(X))

End;

Prep BinaryPrep1 {Предобработка бинарного признака}

Static

 Real MinSignals Name "Нижняя граница интервала приемлемых сигналов";

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

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