Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
- Название:Учебное пособие по курсу «Нейроинформатика»
- Автор:
- Жанр:
- Издательство:КРАСНОЯРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
- Год:2002
- Город:Красноярск
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Е. Миркес - Учебное пособие по курсу «Нейроинформатика» краткое содержание
Данное учебное пособие подготовлено на основе курса лекций по дисциплине «Нейроинформатика», читавшегося с 1994 года на факультете Информатики и вычислительной техники Красноярского государственного технического университета.
Несколько слов о структуре пособия. Далее во введении приведены учебный план по данному курсу, задания на лабораторные работы. Следующие главы содержат одну или несколько лекций. Материал, приведенный в главах, несколько шире того, что обычно дается на лекциях. В приложения вынесены описания программ, используемых в данном курсе (Clab и Нейроучебник), и проект стандарта нейрокомпьютера, включающий в себя два уровня — уровень запросов компонентов универсального нейрокомпьютера и уровень языков описания отдельных компонентов нейрокомпьютера.
Данное пособие является электронным и включает в себя программы, необходимые для выполнения лабораторных работ.
Учебное пособие по курсу «Нейроинформатика» - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Temp SetParameters-1, 1, 1E-40, 273, 293;
Cloud SetParameters-1, 1, 0, True;
Wind SetParameters-1, 1, 0;
Rain SetParameters-1, 1, 0
Signals NumberOf( Signals,Temp) + NumberOf( Signals, Cloud) + NumberOf( Signals, Wind(8)) + NumberOf( Signals, Rain(3))
Data NumberOf( Data,Temp) + NumberOf( Data, Cloud) + NumberOf( Data,Wind(8)) + NumberOf( Data, Rain(3))
Connections
Temp. Data<=> Data[1];
Cloud. Data<=> Data[2];
Wind. Data<=> Data[3];
Rain. Data<=> Data[4];
Temp. Signals<=> Signals[1];
Cloud. Signals<=> Signals[2];
Wind. Signals[1..8] <=> Signals[3..10];
Rain. Signals[1..3] <=> Signals[11..13]
End Preparator
Пример 2.
PreparatorMeteorology
ContentsTemp : EmptyPrep, Cloud : BinaryPrep, Wind : UnOrdered(8), Rain : Ordered(3);
Temp SetParameters-1, 1, 1E-40, 273, 293
End Preparator
Стандарт второго уровня компонента предобработчик
Запросы к компоненту предобработчик можно разбить на пять групп:
1. Предобработка.
2. Изменение параметров.
3. Работа со структурой.
4. Инициация редактора предобработчика.
5. Обработка ошибок.
Поскольку нейрокомпьютер может работать одновременно с несколькими сетями, то и компонент предобработчик должна иметь возможность одновременной работы с несколькими предобработчиками. Поэтому большинство запросов к предобработчику содержат явное указание имени предобработчика. Ниже приведено описание всех запросов к компоненту предобработчик. Каждый запрос является логической функцией, возвращающей значение истина, если запрос выполнен успешно, и ложь — при ошибочном завершении исполнения запроса.
В запросах второй и третьей группы при обращении к частным интерпретаторам используется следующий синтаксис:
<���Полное имя частного интерпретатора>::= <���Имя интерпретатора>.
<���Псевдоним частного интерпретатора> [ [ <���Номер экземпляра> ] ]
При вызове ряда запросов используются предопределенные константы. Их значения приведены в табл. 23.
Таблица 23. Значения предопределенных констант компонента предобработчик
Название | Значение | Значение |
---|---|---|
BinaryPrep | 0 | Стандартный предобработчик бинарных признаков |
UnOrdered | 1 | Стандартный предобработчик неупорядоченных качественных признаков |
Ordered | 2 | Стандартный предобработчик упорядоченных качественных признаков. |
EmptyPrep | 3 | Стандартный простейший предобработчик |
ModPrep | 4 | Стандартный модулярный предобработчик |
FuncPrep | 5 | Стандартный функциональный предобработчик |
PositPrep | 6 | Стандартный позиционный предобработчик |
UserType | -1 | Предобработчик, определенный пользователем. |
Запрос на предобработку
Единственный запрос первой группы выполняет основную функцию компонента предобработчик — предобрабатывает входные данные, вычисляя вектор входных сигналов.
Описание запроса:
Pascal:
Function Prepare(CompName: PString; Data: PRealArray; Var Signals: PRealArray): Logic;
C:
Logic Prepare(PString CompName, PRealArray Data; PRealArray* Signals)
Описание аргумента:
CompName — указатель на строку символов, содержащую имя предобработчика.
Data — массив входных данных.
Signals — вычисляемый массив входных сигналов.
Назначение — предобрабатывает массив входных данных Data, вычисляя массив входных сигналов Signals используя предобработчик, указанный в параметре CompName.
Описание исполнения.
1. Если Error <> 0, то выполнение запроса прекращается.
2. Если в качестве аргумента CompName дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является текущий предобработчик — первый в списке предобработчиков компонента предобработчик.
3. Если список предобработчиков компонента предобработчик пуст или имя предобработчика, переданное в аргументе CompName в этом списке не найдено, то возникает ошибка 201 — неверное имя предобработчика, управление передается обработчику ошибок, а обработка запроса прекращается.
4. Производится предобработка предобработчиком, имя которого было указано в аргументе CompName.
5. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 204 — ошибка предобработки. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.
Остальные запросы
Ниже приведен список запросов к компоненту предобработчик, исполнение которых описано в разделе «Общий стандарт»:
prSetCurrent — Сделать предобработчик текущим
prAdd — Добавление нового предобработчика
prDelete — Удаление предобработчика
prWrite — Запись предобработчика
prGetStructNames — Вернуть имена структурных единиц предобработчика
prGetType — Вернуть тип структурной единицы предобработчика
prGetData — Получить параметры предобработчика
prGetName — Получить имена параметров предобработчика
prSetData — Установить параметры предобработчика
prEdit — Редактировать предобработчик
OnError — Установить обработчик ошибок
GetError — Дать номер ошибки
FreeMemory — Освободить память
В запросе prGetType в переменной TypeId возвращается значение одной из предопределенных констант, перечисленных в табл. 23.
Ошибки компонента предобработчик
В табл. 24 приведен полный список ошибок, которые могут возникать при выполнении запросов компонентом предобработчик, и действия стандартного обработчика ошибок.
Таблица 24. Ошибки компонента предобработчик и действия стандартного обработчика ошибок.
№ | Название ошибки | Стандартная обработка |
---|---|---|
201 | Неверное имя предобработчика | Занесение номера в Error |
202 | Ошибка считывания предобработчика | Занесение номера в Error |
203 | Ошибка сохранения предобработчика | Занесение номера в Error |
204 | Ошибка предобработки | Занесение номера в Error |
Стандарт первого уровня компонента сеть
Данный раздел посвящен описанию стандарта хранения компонента сеть на внешних носителях.
Структура компонента
Рассмотрим более подробно структуры данных сети. Как уже было описано ранее, сеть строится иерархически от простых подсетей к сложным. Простейшими подсетями являются элементы. Подсеть каждого уровня имеет свое имя и тип. Существуют следующие типы подсетей: элемент, каскад, слой, цикл с фиксированным числом тактов функционирования и цикл, функционирующий до тех пор, пока не выполнится некоторое условие. Последние четыре типа подсетей будем называть блоками. Имена подсетей определяются при конструировании. В разделе «Имена структурных единиц компонентов»приведены правила построения полного и однозначного имен подсети. В качестве примера рассмотрим сеть, конструирование которой проиллюстрировано в главе «Описание нейронных сетей»на рис. 2. В описании сети NW однозначное имя первого нейрона второго слоя имеет вид K[2].SN.N[1]. При описании слоя однозначное имя первого нейрона записывается как N[1]. В квадратных скобках указываются номер экземпляра подсети, входящей в непосредственно содержащую ее структуру в нескольких экземплярах.
Читать дальшеИнтервал:
Закладка: