Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
- Название:Учебное пособие по курсу «Нейроинформатика»
- Автор:
- Жанр:
- Издательство:КРАСНОЯРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
- Год:2002
- Город:Красноярск
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Е. Миркес - Учебное пособие по курсу «Нейроинформатика» краткое содержание
Данное учебное пособие подготовлено на основе курса лекций по дисциплине «Нейроинформатика», читавшегося с 1994 года на факультете Информатики и вычислительной техники Красноярского государственного технического университета.
Несколько слов о структуре пособия. Далее во введении приведены учебный план по данному курсу, задания на лабораторные работы. Следующие главы содержат одну или несколько лекций. Материал, приведенный в главах, несколько шире того, что обычно дается на лекциях. В приложения вынесены описания программ, используемых в данном курсе (Clab и Нейроучебник), и проект стандарта нейрокомпьютера, включающий в себя два уровня — уровень запросов компонентов универсального нейрокомпьютера и уровень языков описания отдельных компонентов нейрокомпьютера.
Данное пособие является электронным и включает в себя программы, необходимые для выполнения лабораторных работ.
Учебное пособие по курсу «Нейроинформатика» - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
TPointer(Map^[1]) = @InstColor; {Заносим адрес первого аргумента}
TPointer(Map^[2]) = @OperColor; {Заносим адрес второго аргумента}
TPointer(Map^[3]) = @Handle; {Заносим адрес третьего аргумента}
If NotGenerateQuMap(@QName, Map) Then GoToExit;{Открываем сеанс работы с задачником}
If NotFreeArray(mRealArray, Map) Then GoToExit;{Освобождаем массив для аргументов}
{Собственно начало обучения}
Map = CreateArray; {Создаем вспомогательные массивы}
DirectMap= CreateArray;
IfMap = Null Then GoToExit;
IfDirectMap = Null Then GoToExit;
Est1 = Accuracy*10; {Задаем оценку, не удовлетворяющую требованию точности}
Step = 0.005; {Задаем начальное значение шагу}
End
InstrStepEst > Accuracy
Begin
If NotSaveArray(Map1) Then GoToExit; {Сохраняем начальный массив параметров}
ForI = 1 Tok Do Begin {Выполняем k межпартанных шагов}
If Direct Then Est = SDM(Handle, Step) Else Est = RDM(Handle, Step);
If Error<> 0 Then GoToExit;
End;
If NotSaveArray(DirectMap) Then GoToExit; {Сохраняем конечный массив параметров}
ForI = 1 To TLong(Map^[0]) Do
DirectMap^[I] = DirectMap^[I] - Map^[I]; {Вычисляем направление ParTan шага}
ParTanStep = 1; {Задаем начальное значение ParTan шагу}
Est =Optimize(DirectMap, ParTanStep); {Вызываем функцию подбора оптимального шага}
If Error<> 0 Then GoToExit;
End
Close
Begin
Exit:
If NotEraseArray(Мар) Then; {Освобождаем вспомогательные массивы}
If NotEraseArray(DirectMap) Then;
QName = "CloseSession"; {Задаем имя запроса}
Map = NewArray(mRealArray, 1); {Создаем массив для аргументов запроса}
IfMap = Null Then GoToExit1;
TPointer(Map^[1]) = @Handle; {Заносим адрес единственного аргумента}
If NotGenerateQuest(@QName, Map) Then;{Открываем сеанс работы с задачником}
If NotFreeArray(mRealArray, Map) Then; {Освобождаем массив для аргументов}
Exit1:
End
End Instructor
Стандарт второго уровня компонента учитель
Компонент учитель одновременно работает только с одним учителем. Запросы к компоненту учитель можно разбить на следующие группы.
1. Обучение сети.
2. Чтение/запись учителя.
3. Инициация редактора учителя.
4. Работа с параметрами учителя.
Обучение сети
К данной группе относятся три запроса — обучить сеть (InstructNet), провести N шагов обучения (NInstructSteps) и прервать обучение (CloseInstruction).
Описание запроса:
Pascal:
Function InstructNet: Logic;
C:
Logic InstructNet()
Аргументов нет.
Назначение — производит обучение сети.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в момент получения запроса учитель не загружен, то возникает ошибка 601 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
3. Выполняется главная процедура загруженного учителя.
4. Если во время выполнения запроса возникает ошибка, а значение переменной Error равно нулю, то генерируется внутренняя ошибка 605 — ошибка исполнения учителя, управление передается обработчику ошибок, а обработка запроса прекращается.
5. Если во время выполнения запроса возникает ошибка, а значение переменной Error не равно нулю, то обработка запроса прекращается.
Описание запроса:
Pascal:
Function NInstructNet(N: Integer): Logic;
C:
Logic NInstructNet(Integer N)
Описание аргумента:
N — число выполнений блока одного шага обучения сети.
Назначение — производит обучение сети.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в момент получения запроса учитель не загружен, то возникает ошибка 601 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
3. Выполняется блок инициации главной процедуры загруженного учителя, N раз выполняется блок одного шага обучения, выполняется блок завершения обучения.
4. Если во время выполнения запроса возникает ошибка, а значение переменной Error равно нулю, то генерируется внутренняя ошибка 605 — ошибка исполнения учителя, управление передается обработчику ошибок, а обработка запроса прекращается.
5. Если во время выполнения запроса возникает ошибка, а значение переменной Error не равно нулю, то обработка запроса прекращается.
Описание запроса:
Pascal:
Function CloseInstruction: Logic;
C:
Logic CloseInstruction()
Аргументов нет.
Назначение — прерывает обучение сети.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в момент получения запроса учитель не загружен, то возникает ошибка 601 — неверное имя компонента, управление передается обработчику ошибок, а обработка запроса прекращается.
3. Если в момент получения запроса не выполняется ни один из запросов обучить сеть (InstructNet) или провести N шагов обучения (NInstructSteps), то возникает ошибка 606 — неверное использование запроса на прерывание обучения, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Завершается выполнение текущего шага обучения сети.
5. Выполняется блок завершения обучения сети.
6. Если во время выполнения запроса возникает ошибка, а значение переменной Error равно нулю, то генерируется внутренняя ошибка 605 — ошибка исполнения учителя, управление передается обработчику ошибок, а обработка запроса прекращается.
7. Если во время выполнения запроса возникает ошибка, а значение переменной Error не равно нулю, то обработка запроса прекращается.
Чтение/запись учителя
В данном разделе описаны запросы, позволяющие загрузить учителя с диска или из памяти, выгрузить учителя и сохранить текущего учителя на диске или в памяти.
Описание запроса:
Pascal:
Function inAdd(CompName: PString): Logic;
C:
Logic inAdd(PString CompName)
Описание аргумента:
CompName — указатель на строку символов, содержащую имя файла компонента или адрес описания компонента.
Назначение — читает учителя с диска или из памяти.
Описание исполнения.
1. Если в качестве аргумента CompName дана строка, первые четыре символа которой составляют слово File, то остальная часть строки содержит имя компонента и после пробела имя файла, содержащего компоненту. В противном случае считается, что аргумент CompName содержит указатель на область памяти, содержащую описание компонента в формате для записи на диск. Если описание не вмещается в одну область памяти, то допускается включение в текст описания компонента ключевого слова Continue, за которым следует четыре байта, содержащие адрес следующей области памяти.
Читать дальшеИнтервал:
Закладка: