Kniga-Online.club
» » » » Е. Миркес - Учебное пособие по курсу «Нейроинформатика»

Е. Миркес - Учебное пособие по курсу «Нейроинформатика»

Читать бесплатно Е. Миркес - Учебное пособие по курсу «Нейроинформатика». Жанр: Программирование издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

 Contents

 In: FullLay(aSum,N,Input,Char),

 Hid1: FullLay(aSum,Input,Hidden,Char)

 Hid2: FullLay(aSum,Hidden,Hidden,Char)[H-1] {Пусто при H=1}

 Out: FullLay(aSum,Hidden,Output,Char)

End

{Полносвязная сеть с M сигмоидными нейронами на К тактов функционирования с невыделенным входным слоем на M сигналов. Все параметры ограничены по абсолютному значению единицей}

Loop Circle(aSum : Block; Char : Real; M, K : Long) K

 Contents

  FullLay(aSum,M,M,Char)

 ParamDef DefaultType -1 1

End

{Полносвязная сеть с М сигмоидными нейронами на К тактов функционирования с выделенным входным слоем на N сигналов.

Cascad Net2: (aSum : Block; Char : Real; M, K, N : Long)

 Contents

  In: FullLay(aSum,N,M,Char), {Входной слой}

  Net: Circle(aSum,Char,M,K) {Полносвязная сеть}

End

Cascad Hopf(N : Long) {Нейрон сети Хопфилда из N нейронов}

 Contents Sum(N),Sign_Easy {Сумматор и пороговый элемент}

End

{Слой нейронов Хопфилда}

Layer HLay(N : Long)

 Contents Hop: Hopf(N)[N] {В состав слоя входит N нейронов}

End

{Сеть Хопфилда из N нейронов}

Until Hopfield(N : Long) InSignals=OutSignals

 Contents BLay(N,N),HLay(N) {Слой точек ветвления и слой нейронов}

End

End NetLib

Стандарт второго уровня компонента сеть

В данном разделе рассмотрены все запросы, исполняемые компонентом сеть. Прежде чем приступать к описанию стандарта запросов компонента сеть следует выделить выполняемые им функции. Что должен делать компонент сеть? Очевидно, что прежде всего он должен уметь выполнять такие функции, как функционирование вперед (работа обученной сети) и назад (вычисление вектора поправок или градиента для обучения), модернизацию параметров (обучение сети) и входных сигналов (обучение примера). Кроме того компонент сеть должен уметь читать сеть с диска и записывать ее на диск. Необходимо так же предусмотреть возможность создавать сеть и редактировать ее структуру. Эти две функциональные возможности не связаны напрямую с работой (функционированием и обучением) сети. Таким образом, необходимо выделить сервисную компоненту — редактор сетей. Компонент редактор сетей позволяет создавать и изменять структуру сети, модернизировать обучаемые параметры в «ручном» режиме.

Запросы к компоненту сеть

Запросы к компоненту сеть можно разбить на пять групп:

1. Функционирование.

2. Изменение параметров.

3. Работа со структурой.

4. Инициация редактора и конструктора сетей.

5. Обработка ошибок.

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

Таблица 26. Значения предопределенных констант

Название Величина Значение InSignals 0 Входные сигналы прямого функционирования OutSignals 1 Выходные сигналы прямого функционирования Рarameters 2 Параметры InSignalMask 3 Маска обучаемости входных сигналов ParamMask 4 Маска обучаемости параметров BackInSignals 5 Входные сигналы обратного функционирования BackOutSignals 6 Выходные сигналы обратного функционирования BackРarameters 7 Поправки к параметрам Element 0 Тип подсети — элемент Layer 1 Тип подсети — слой Cascad 2 Тип подсети — простой каскад CicleFor 3 Тип подсети — цикл с заданным числом проходов CicleUntil 4 Тип подсети — цикл по условию

При вызове ряда запросов используются предопределенные константы. Их значения приведены в табл. 26.

Запросы на функционирование

Два запроса первой группы позволяют проводить прямое и обратное функционирование сети. По сути эти запросы эквивалентны вызову методов Forw и Back сети или ее элемента.

Выполнить прямое Функционирование (Forw)

Описание запроса:

Pascal:

Function Forw (Net: PString; InSignals: PRealArray): Logic;

C:

Logic Forw(PString Net, PRealArray InSignals)

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

Net — указатель на строку символов, содержащую имя сети.

InSignals — массив входных сигналов сети.

Назначение — проводит прямое функционирование сети, указанной в параметре Net.

Описание исполнения.

1. Если Error <> 0, то выполнение запроса прекращается.

2. Если в качестве аргумента Net дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первая сеть в списке сетей компонента сеть.

3. Если список сетей компонента сеть пуст или имя сети, переданное в аргументе Net в этом списке не найдено, то возникает ошибка 301 — неверное имя сети, управление передается обработчику ошибок, а обработка запроса прекращается.

4. Вызывается метод Forw сети, имя которой было указано в аргументе Net.

4. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 304 — ошибка прямого функционирования. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.

Выполнить обратное Функционирование (Back)

Описание запроса:

Pascal:

Function Back(Net: PString; BackOutSignals: PRealArray): Logic;

C:

Logic Back(PString Net, PRealArray BackOutSignals)

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

Net — указатель на строку символов, содержащую имя сети.

BackOutSignals — массив производных функции оценки по выходным сигналам сети.

Назначение — проводит обратное функционирование сети, указанной в параметре Net.

Описание исполнения.

1. Если Error <> 0, то выполнение запроса прекращается.

2. Если в качестве аргумента Net дан пустой указатель, или указатель на пустую строку, то исполняющим запрос объектом является первая сеть в списке сетей компонента сеть.

3. Если список сетей компонента сеть пуст или имя сети, переданное в аргументе Net в этом списке не найдено, то возникает ошибка 301 — неверное имя сети, управление передается обработчику ошибок, а обработка запроса прекращается.

4. Вызывается метод Back сети, имя которой было указано в аргументе Net.

5. Если во время выполнения запроса возникает ошибка, то генерируется внутренняя ошибка 305 — ошибка обратного функционирования. Управление передается обработчику ошибок. Выполнение запроса прекращается. В противном случае выполнение запроса успешно завершается.

Запросы на изменение параметров

Ко второй группе запросов относятся четыре запроса: Modify — модификация параметров, обычно называемая обучением, ModifyMask — модификация маски обучаемых синапсов, NullGradient — обнуление градиента и RandomDirection — сгенерировать случайное направление спуска.

Провести обучение (Modify)

Описание запроса:

Pascal:

Function Modify(Net: PString; OldStep, NewStep: Real; Tipe: Integer; Grad: PRealArray): Logic;

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

Е. Миркес читать все книги автора по порядку

Е. Миркес - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


Учебное пособие по курсу «Нейроинформатика» отзывы

Отзывы читателей о книге Учебное пособие по курсу «Нейроинформатика», автор: Е. Миркес. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*