Чтение онлайн

ЖАНРЫ

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

Миркес Е. М.

Шрифт:

OutSignals[1] =InSignals[1] * InSignals[2] {Выходной сигнал равен произведению входных сигналов}

 End {Конец описания прямого функционирования}

 Back {Начало описания обратного функционирования}

 Begin

{Поправка к каждому входному сигналу равна произведению поправки выходного сигнала на другой входной сигнал}

Back.InSignals[1] = Back.OutSignals[1] * InSignals[2];

Back.InSignals[2] = Back.OutSignals[1] * InSignals[1]

 End {Конец
описания обратного функционирования}

End Mul {Конец описания умножителя}

Element S_Train {Обучаемый гиперболический сигмоидный элемент}

 InSignals 1 {Один входной сигнал}

 OutSignals 1 {Один выходной сигнал}

 Parameters 1 {Один параметр – характеристика}

 Forw {Начало описания прямого функционирования}

 Begin

{Выходной сигнал равен отношению входного сигнала к сумме параметра и абсолютной величины входного сигнала}

OutSignals[1] =InSignals[1] / (Parameters[1] +Abs(InSignals[1])

 End {Конец описания прямого функционирования}

 Back {Начало описания обратного функционирования}

 Var Real R; {R – действительное}

 Begin

{R – вспомогательная величина для вычисления поправок, равная отношению поправки выходного сигнала к квадрату суммы параметра и абсолютной величины входного сигнала}

R= Back.OutSignals[1] / Sqr(Parameters[1] +Abs(InSignals[1]);

{Поправка к входному сигналу равна произведению вспомогательной величины на параметр}

Back.InSignals[1] = R *Parameters[1];

{Поправка к параметру равна сумме ранее вычисленной величины поправки и произведения вспомогательной величины на входной сигнал}

Back.Parameters[1] = Back.Parameters[1] + R * InSignals[1]

 End {Конец описания обратного функционирования}

End S_Train {Конец описания обучаемого гиперболического сигмоидного элемента}

Element S_NotTrain(Char : Real) {Не обучаемый гиперболический сигмоидный элемент Char – характеристика}

 InSignals 1 {Один входной сигнал}

 OutSignals 1 {Один
выходной сигнал}

 Forw {Начало описания прямого функционирования}

 Begin

{Выходной сигнал равен отношению входного сигнала к сумме характеристики и абсолютной величины входного сигнала}

OutSignals[1] =InSignals[1] / (Char +Abs(InSignals[1])

 End {Конец описания прямого функционирования}

 Back {Начало описания обратного функционирования}

 Begin

{Поправка к входному сигналу равна отношению произведения поправки выходного сигнала на характеристику к квадрату суммы характеристики и абсолютной величины входного сигнала}

Back.InSignals[1] =Back.OutSignals[1] * Char / Sqr(Char +Abs(InSignals[1]);

 End {Конец описания обратного функционирования}

End S_NotTrain {Конец описания гиперболического сигмоидного элемента}

Element Pade(Char : Real) {Паде преобразователь Char – характеристика}

 InSignals 2 {Два входных сигнала}

 OutSignals 1 {Один выходной сигнал}

 Forw {Начало описания прямого функционирования}

 Begin

{Выходной сигнал равен отношению первого входного сигнала к сумме характеристики и второго входного сигнала}

OutSignals[1] =InSignals[1] / (Char+InSignals[2])

 End {Конец описания прямого функционирования}

 Back {Начало описания обратного функционирования}

 Var Real R; {R – действительное}

 Begin

{Вспомогательная величина равна поправке к первому входному сигналу – отношению поправки выходного сигнала к сумме характеристики и второго входного сигнала}

R= Back.OutSignals[1] / (Char+ InSignals[2]);

Back.InSignals[1] = R;

{Поправка ко второму входному сигналу равна минус отношению произведения первого входного сигнала на поправку выходного сигнала к квадрату суммы характеристики и второго входного сигнала}

Back.InSignals[2] = -R *OutSignals[1];

 End {Конец описания обратного функционирования}

End Pade {Конец описания Паде преобразователя}

Поделиться с друзьями: