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

<Главная процедура>::= Main<Описание статических переменных> <Описание переменных> <Блок инициации> <Блок шага обучения> <Блок завершения>

<Блок инициации>::= Init <Тело функции>

<Блок шага обучения>::= InstrStep <Выражение типа Logic> <Тело функции>

<Блок завершения>::= Close<Тело функции>

<Конец описания учителя> End Instructor

Описание языка описания учителя

Язык описания учителя является наиболее простым из всех языков описания компонент. Фактически все синтаксические конструкции этого языка описаны в разделе «Общий стандарт». В теле функции, являющемся частью главной процедуры недопустим оператор возврата значения, поскольку главная процедура не является функцией. Три раздела главной функции — блок инициации, блок одного шага обучения и блок завершения являются фрагментами одной процедуры. Выделение этих разделов необходимо для выполнения запроса «Выполнить N шагов обучения». Выполнение главной процедуры происходит следующим образом. Выполняется блок инициации. Выполнение блока одного шага обучения сети производится до тех пор, пока не наступит одно из следующих событий:

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

2. нарушится условие, указанное в конструкции InstStep;

3. компонент учитель получит запрос «Прервать обучение сети»;

4. в случае выполнения запроса «Выполнить N шагов обучения» блок одного шага обучения сети выполнен N раз.

Далее выполняется блок завершения обучения.

Пример описания учителя

В данном разделе приведены описания некоторых методов обучения, описанных в разделе «Описание алгоритмов обучения».

Пример 1.

Instructor RandomFire;  {Метод случайной стрельбы с уменьшением радиуса}

Main                                         {Обучение ведется по всему обучающему множеству}

 Label Exit, Exit1;

 Static

  Integer Try Name "Число попыток при одном радиусе" Default 5;

  Real MinRadius Name "Минимальный радиус, при котором + "продолжается работа"Default 0.001;

  String NetName Name "Имя сети" Default "";

  Integer What Name "Что обучать" Default Parameters;

  Color InstColor Name "Цвет примеров обучающего множества" Default HFFFF; {По умолчанию}

  Integer OperColor Name "Операция для отбора цветов" Default CIn;

 Var {все примеры, в цвете которых есть хоть один единичный бит}

  PRealArray Map, DirectMap; {Для хранения текущего и случайного массивов параметров}

  Real Est1, Est2; {Для хранения текущей и случайной оценки}

  Real Radius; {Текущий радиус}

  Integer TryNum, RadiusNum; {Число попыток, номер использованного радиуса}

  Integer Handle; {Номер сеанса задачника}

  String QName; {Имя запроса}

Init

 Begin

  If Not SetInstructionObject(What, @NetName) Then GoTo Exit; {Задаем объекты обучения}

  QName = "InitSession"; {Задаем имя запроса}

  Map = NewArray(mRealArray, 3); {Создаем массив для аргументов запроса}

  If Map = Null Then GoTo Exit;

  TPointer(Map^[1]) = @InstColor; {Заносим адрес первого аргумента}

  TPointer(Map^[2]) = @OperColor; {Заносим адрес второго аргумента}

  TPointer(Map^[3]) = @Handle; {Заносим адрес третьего аргумента}

  If Not GenerateQuest(@QName, Map) Then GoTo Exit;{Открываем сеанс работы с задачником}

  If Not FreeArray(mRealArray, Map) Then GoTo Exit;  {Освобождаем массив для аргументов}

  {Собственно начало обучения}

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

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

История математики. От счетных палочек до бессчетных вселенных
История математики. От счетных палочек до бессчетных вселенных

Эта книга, по словам самого автора, — «путешествие во времени от вавилонских "шестидесятников" до фракталов и размытой логики». Таких «от… и до…» в «Истории математики» много. От загадочных счетных палочек первобытных людей до первого «калькулятора» — абака. От древневавилонской системы счисления до первых практических карт. От древнегреческих астрономов до живописцев Средневековья. От иллюстрированных средневековых трактатов до «математического» сюрреализма двадцатого века…Но книга рассказывает не только об истории науки. Читатель узнает немало интересного о взлетах и падениях древних цивилизаций, о современной астрономии, об искусстве шифрования и уловках взломщиков кодов, о военной стратегии, навигации и, конечно же, о современном искусстве, непременно включающем в себя компьютерную графику и непостижимые фрактальные узоры.

Ричард Манкевич

Зарубежная образовательная литература, зарубежная прикладная, научно-популярная литература / Математика / Научпоп / Образование и наука / Документальное