Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
- Название:Учебное пособие по курсу «Нейроинформатика»
- Автор:
- Жанр:
- Издательство:КРАСНОЯРСКИЙ ГОСУДАРСТВЕННЫЙ ТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ
- Год:2002
- Город:Красноярск
- ISBN:нет данных
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Е. Миркес - Учебное пособие по курсу «Нейроинформатика» краткое содержание
Данное учебное пособие подготовлено на основе курса лекций по дисциплине «Нейроинформатика», читавшегося с 1994 года на факультете Информатики и вычислительной техники Красноярского государственного технического университета.
Несколько слов о структуре пособия. Далее во введении приведены учебный план по данному курсу, задания на лабораторные работы. Следующие главы содержат одну или несколько лекций. Материал, приведенный в главах, несколько шире того, что обычно дается на лекциях. В приложения вынесены описания программ, используемых в данном курсе (Clab и Нейроучебник), и проект стандарта нейрокомпьютера, включающий в себя два уровня — уровень запросов компонентов универсального нейрокомпьютера и уровень языков описания отдельных компонентов нейрокомпьютера.
Данное пособие является электронным и включает в себя программы, необходимые для выполнения лабораторных работ.
Учебное пособие по курсу «Нейроинформатика» - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Раздел описания состава следует сразу после заголовка блока за разделом описания сигналов и параметров и начинается с ключевого слова Contents, за которым следуют имена подсетей (блоков или элементов) со списками фактических аргументов, разделенные запятыми. Все имена подсетей должны предваряться псевдонимами. В дальнейшем указание псевдонима полностью эквивалентно указанию имени подсети со списком фактических аргументов или без, в зависимости от контекста. Признаком конца раздела описания состава подсети служит имя подсети за списком фактических аргументов которого не следует запятая.
Раздел описания сигналов и параметров следует за разделом описания состава и состоит из указания числа входных и выходных сигналов и числа параметров блока. В константных выражениях, указывающих число входных и выходных сигналов и параметров можно использовать дополнительно функцию NumberOf с двумя параметрами. Первым параметром является одно из ключевых слов InSignals, OutSignals, Parameters, а вторым — имя подсети со списком фактических аргументов. Функция NumberOf возвращает число входных или выходных сигналов или параметров (в зависимости от первого аргумента) в подсети, указанной во втором аргументе. Использование этой функции необходимо в случае использования блоком аргументов-подсетей. Концом раздела описания сигналов и параметров служит одно из ключевых слов ParamDef, Static или Connections.
Раздел определения типов параметров является необязательным разделом в описании блока и начинается с ключевого слова ParamDef. В каждой строке этого раздела можно задать минимальную и максимальную границы изменения одного типа параметров. Если в описании сети встречаются параметры неопределенного типа, то этот тип считается совпадающим с типом DefaultType. Описание типа не обязано предшествовать описанию параметров этого типа. Так, например, определение типа параметров может находиться в описании главной сети. Концом этого раздела служит одно из ключевых слов Connections.
Раздел описания связей следует за разделом описания сигналов и параметров и начинается с ключевого слова Connections. В разделе «Описание распределения сигналов»детально описано распределение связей.
Раздел конца описания блока состоит из ключевого слова End, за которым следует имя блока.
Пример описания блоковПри описании блоков используются элементы, описанные в библиотеке Elements, приведенной в разделе «Пример описания элементов».
NetBiblSubNets UsedElements;
{Библиотека подсетей, использующая библиотеку Elements}
{Сигмоидный нейрон с произвольным сумматором на N входов}
CascadNSigm(aSum : Block; N : Long;Char : Real)
{В состав каскада входит произвольный сумматор на N входов и сигмоидный нейрон с необучаемой характеристикой}
ContentsaSum(N), S_NotTrain(Char)
InSignals NumberOf( InSignals,aSum(N)) {Число входных сигналов определяет сумматор}
OutSignals1 {Один выходной сигнал}
Parameters NumberOf( Parameters,aSum(N)) {Число параметров определяет сумматор}
Connections
{Входные сигналы каскада – входные сигналы сумматора}
InSignals[1.. NumberOf( InSignals,aSum(N))] <=> aSum. InSignals[1.. NumberOf( InSignals,aSum(N))]
{Выход сумматроа – вход нелинейного преобразователя}
aSum. OutSignals <=>S_NotTrain. InSignals
{Выход преобразователя – выход каскада}
OutSignals<=> S_NotTrain. OutSignals
Parameters[1.. NumberOf( Parameters,aSum(N))] <=> aSum. Parameters[1.. NumberOf( Parameters,aSum(N))]
End {Конец описания сигмоидного нейрона с произвольным сумматором}
{Слой сигмоидных нейронов с произвольными сумматорами на N входов}
LayerLay1(aSum : Block; N,M : Long;Char : Real)
ContentsSigm: NSigm(aSum,N,Char)[M] {В состав слоя входит M нейронов}
InSignalsM * NumberOf( InSignals,Sigm)
{Число входных сигналов определяется как взятое M раз число входных сигналов нейронов. Вместо имени нейрона используем псевдоним}
OutSignalsM {Один выходной сигнал на нейрон}
ParametersM * NumberOf( Parameters,Sigm)
{Число параметров определяется как взятое M раз число параметров нейронов}
Connections
{Первые NumberOf( InSignals,NSigm(aSum,N,Char)) сигналов первому нейрону, и т.д.}
InSignals[1..M * NumberOf( InSignals,Sigm)] <=> Sigm[1..M]. InSignals[1.. NumberOf( InSignals,Sigm)]
{Выходные сигналы нейронов - выходные сигналы сети}
OutSignals[1..M]<=> Sigm[1..M]. OutSignals
{Параметры слоя – параметры нейронов}
Parameters[1..M * NumberOf( Parameters,Sigm)] <=> Sigm[1..M]. Parameters[1.. NumberOf( Parameters,Sigm)]
End {Конец описания слоя сигмоидных нейронов с произвольным сумматором}
{Слой точек ветвления}
LayerBLay(N,M : Long)
ContentsBranch(N)[M] {В состав слоя входит M точек ветвления}
InSignalsM {По одному входному сигналу на точку ветвления}
OutSignalsM * N {N выходных сигналов у каждой точки ветвления}
Connections
InSignals[1..M] <=> Branch[1..M]. InSignals {По одному входу на точку ветвления}
{Выходные сигналы в порядке первый с каждой точки ветвления, затем второй и т.д. }
OutSignals[1..N * M]<=> Branch[+:1..M]. OutSignals[1..N]
End {Конец описания слоя Точек ветвления}
{Полный слой сигмоидных нейронов с произвольными сумматорами на N входов}
CascadFullLay(aSum : Block; N,M : Long;Char : Real)
ContentsBr: BLay1(M,N) ,Ne: Lay1(aSum,N,M ,Char) {Слой точек ветвления и слой нейронов}
InSignalsN {Число входных сигналов – число точек ветвления}
OutSignalsM {Один выходной сигнал на нейрон}
Parameters NumberOf( Parameters,Ne)
{Число параметров определяется как взятое M раз число параметров нейронов}
Connections
{Входные сигналы – слою точек ветвления}
InSignals[1..N]<=> Br. InSignals[1..N]
{Выходные сигналы нейронов - выходные сигналы сети}
OutSignals[1..M]<=> Ne. OutSignals[1..M]
{Параметры слоя – параметры нейронов}
Parameters[1.. NumberOf( Parameters,Ne)] <=> Ne. Parameters[1.. NumberOf( Parameters,Ne)]
{Выход слоя точек ветвления – вход слоя нейронов}
Интервал:
Закладка: