Читать книги » Книги » Компьютеры и Интернет » Программирование » Е. Миркес - Учебное пособие по курсу «Нейроинформатика»

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

Читать книгу Е. Миркес - Учебное пособие по курсу «Нейроинформатика», Е. Миркес . Жанр: Программирование.
Е. Миркес - Учебное пособие по курсу «Нейроинформатика»
Название: Учебное пособие по курсу «Нейроинформатика»
Автор: Е. Миркес
ISBN: нет данных
Год: -
Дата добавления: 3 июль 2019
Количество просмотров: 210
(18+) Внимание! Книга может содержать контент только для совершеннолетних. Для несовершеннолетних просмотр данного контента СТРОГО ЗАПРЕЩЕН! Если в книге присутствует наличие пропаганды ЛГБТ и другого, запрещенного контента - просьба написать на почту для удаления материала.
Читать онлайн

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

Учебное пособие по курсу «Нейроинформатика» - читать онлайн , автор Е. Миркес
Данное учебное пособие подготовлено на основе курса лекций по дисциплине «Нейроинформатика», читавшегося с 1994 года на факультете Информатики и вычислительной техники Красноярского государственного технического университета.Несколько слов о структуре пособия. Далее во введении приведены учебный план по данному курсу, задания на лабораторные работы. Следующие главы содержат одну или несколько лекций. Материал, приведенный в главах, несколько шире того, что обычно дается на лекциях. В приложения вынесены описания программ, используемых в данном курсе (Clab и Нейроучебник), и проект стандарта нейрокомпьютера, включающий в себя два уровня — уровень запросов компонентов универсального нейрокомпьютера и уровень языков описания отдельных компонентов нейрокомпьютера.Данное пособие является электронным и включает в себя программы, необходимые для выполнения лабораторных работ.
1 ... 94 95 96 97 98 ... 112 ВПЕРЕД
Перейти на страницу:

MyEst[I:1..10] SetParameters0.01*I

В данном примере первая оценка будет иметь уровень надежности равный 0.01, вторая — 0.02 и т. д.

В необязательном разделе описания связей с интерпретаторами можно указать интерпретатор ответа, связанный с данной оценкой. Для связи интерпретатор и оценка должны иметь одинаковое число параметров и одинаковый порядок их описания. Так, в приведенном ниже примере, невозможно связывание оценки Temp с одноименным интерпретатором из-за различия в числе параметров. Если в левой части выражения Link указан диапазон оценок, то в правой части должен быть указан диапазон, содержащий столько же интерпретаторов. Указание связи влечет идентичность параметров оценки и связанного с ней интерпретатора ответов. Идентичность обеспечивается при исполнении запросов aiSetData и esSetData.

В необязательном разделе описания весов указываются веса частных оценок. Если этот раздел опущен, то все частные оценки равны единице, то есть все частные оценки имеют равную значимость.

В необязательном разделе описания сигналов указывается число сигналов, оцениваемых всеми частными оценками. Если этот раздел опущен, то полагается, что число оцениваемых оценкой сигналов равно сумме сигналов, оцениваемых всеми частными оценками. В константном выражении может вызываться функция NumberOf, аргументом которой является имя частной оценки (или ее псевдоним) с указанием фактических аргументов.

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

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

Кроме того, в любом месте описания оценки могут встречаться комментарии, заключенные в фигурные скобки.

Пример описания оценки

В этом разделе приведены два примера описания одной и той же оценки следующего состава: первый сигнал интерпретируется как температура путем умножения на 10 и добавления 273; следующие два сигнала интерпретируются как наличие облачности, используя знаковый интерпретатор; следующие три сигнала интерпретируются как направление ветра, используя двоичный интерпретатор (восемь румбов); последние три сигнала интерпретируются максимальным интерпретатором как сила осадков (без осадков, слабые осадки, сильные осадки). Для трех последних интерпретаторов используются соответствующие им оценки типа расстояние до множества. В первом примере приведено описание дубликатов всех стандартных оценок. Во втором — использованы стандартные оценки.

Пример 1.

Estimation Meteorology

Est Empty1()  {Оценка для интерпретатора, осуществляющего масштабирование и сдвиг сигнала}

Static

 Real B Name "Масштабный множитель";

 Real C Name "Сдвиг начала отсчета";

 Real E Name "Требуемаяточность совпадения";

Var

 Real A;

Begin

 A = Signals[1] – (Answer – C) / B;

 D = E * Reliability; {Допуск определяем произведением}

 If Abs(A)<D Then Estim = 0

 Else If A > 0 Then Begin

  Estim =Weight * Sqr(A – D) / 2;

  If Direv Then Back[1] = Weight * (A – D);

 End Else Begin

  Estim =Weight * Sqr(A + D) / 2;

  If Direv Then Back[1] = Weight * (A + D);

 End

End

{Кодирование номером канала. Оценка для знакового интерпретатора.}

Est Binary1(N : Long)   

Static

 Real E Name "Уровень надежности";

Var

 Long I, J;

 Real A, B, C;

Begin

 J = Answer; {Правильный ответ – номер правильного класса}

 B = 0;

 C = E * Reliability; {Допуск определяем произведением}

 For I = 1 To N Do

  If I = J Then Begin

   If Signals[I] < С Then Begin

    B = B + Sqr(Signals[I] – С);

    If Direv Then Back[I] = 2 * Weight * (Signals[I]-С);

   End;

  End Else Begin

   If Signals[I] > -C Then Begin

    B = B + Sqr(Signals[I] + C);

    If Direv Then Back[I] = 2 * Weight * (Signals[I] + C);

   End

  End;

 Estim = Weight*B

End

{Кодирование номером канала. Оценка для максимального интерпретатора.}

Est Major1(N : Long)

Static

 Real E Name "Уровень надежности";

Var

 Real A, B;

 Long I, J, K, Ans;

 RealArray[N+1] Al,Ind;

Begin

 Ans = Answer;

 Ind[1] = Ans;

 Al[1] = Signals[Ans] – E *Reliability;

 Ind[N+1] = 0;

 Al[N+1] = -1.e40;

 K:=1;

 For I = 1 To N Do

  If I <> Ans Then Begin

   Al[K] = Signals[I];

   Ind[K] = I;

   K = K + 1;

  End; {Подготовлен массив сигналов}

 For I = 2 To N-1 Do Begin

  A = Al[I];

  K = I;

  For J = I+1 To N Do

   If Al[J] > A Then Begin

    K = J;

    A = Al[J];

   End; {Найден следующий по величине}

  Al[K] = Al[I];

  Al[I] = A;

  J = Ind[K];

  Ind[K] = Ind[I];

  Ind[I] = J;

 End; {Массивы отсортированы}

 A = Al[1]; {Сумма первых I членов}

 I = 1;

 While (A / I <= Al[I+1]) Do Begin

  A = A + Al[I];

  I = I + 1;

 End; {В конце цикла I-1 равно числу корректируемых сигналов}

 B = A / I; {B – величина, к которой должны стремиться}

 A = 0; {корректируемые сигналы}

 For J = 1 To I Do Begin

  A = A + Sqr(Al[J] – B);

  If Direv Then Back[Ind[J]] = -2* Weight * (Al[J] – B);

 End;

 Estim = Weight * A

End;

Est BynaryCoded1: (N : Long) {Оценка для кодирования номером канала}

Static

 Real E Name "Уровень надежности";

Var

 Long I, J, A, K;

 Real B, C;

Begin

 A = Answer;

 B = 0;

 C = E * Reliability; {Допуск определяем произведением}

 For I = N To 1 By -1 Do Begin

  J = A / 2;

  K = A – 2 * J;

  A = J;

  If A = 1 Then Begin

   If Signals[I] < C Then Begin

    B = B + Sqr(Signals[I] – C);

    If Direv Then Back[I] = 2 * Weight * (Signals[I]-C);

   End;

  End Else Begin

   If Signals[I] > -C Then Begin

    B = B + Sqr(Signals[I] + C);

    If Direv Then Back[I] = 2 * Weight * (Signals[I] + C);

   End;

  End;

  Estim = Weight*B

 End

Contents Temp : Empty1, Cloud : Binary1(2), Wind : BynaryCoded1(3), Rain : Major1(3);

1 ... 94 95 96 97 98 ... 112 ВПЕРЕД
Перейти на страницу:
Комментарии (0)