Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
otvety1.doc
Скачиваний:
466
Добавлен:
14.02.2015
Размер:
12.78 Mб
Скачать

92 Массивы (Pascal, c, c#).

Дисциплина «Информатика и программирование»

В программировании даже при написании самых простых программ возникает необходимость в большом количестве переменных. Обычно они разные по типам и по использованию, но бывают ситуации, когда эти переменные одинаковы и их необходимо очень большое количество.

Пример. Представим работу такой программы, как нахождение среднего арифметического среди 100 чисел. Для написания такой программы потребуются сами числа. Для хранения 100 чисел мы должны использовать 100 переменных. Описать их можно, скажем, следующим образом:

var

n1,n2,n3,n4,n5,

n6,n7, ...,n100:Integer;

Это будет выглядеть крайне громоздко. Здесь и возникает понятие массивов. Массив - это на самом деле одна переменная, но она содержит в себе большое количество отдельных элементов, того типа, который определит программист, и столько, сколько он захочет. (При этом размер массива несколько ограничен). Это означает, что заведя переменную-массив, мы как бы создаем цепочку переменных. После чего мы можем обратиться к любому элементу этой цепочки: прочитать его, изменить, сделать с ним все, что можно сделать с обычной переменной.

Можем создать цепочку и из чисел, и из символов, да и вообще из чего угодно.

Создание (описание) массивов

Создать массив из чисел. Для примера возьмем программу, которая находит среднее арифметическое среди 100 чисел.

Массив - это переменная и как все переменные описывается в разделе var программы. Описание переменной - массива состоит из:

Имени переменной;

Служебного слова Array, означающего "массив";

Описания размера массива (в нашем случае 100 чисел). Диапазон записывается в квадратных скобках - [ и ]. Внутри пишется сам диапазон, в виде двух чисел, разделенных двоeточием: начало..конец;

Задании типа для элементов массива (в нашем случае - целые числа, или Integer). Задание типа начинается со служебного слова of;

Вот пример описания массива на 100 чисел:

var

Mas: Array [1..100] of Integer;

Теперь в программе можно обратиться к любому элементу этого массива - от 1 до 100. Делается это посредством указания имени переменной с номером элемента в квадратных скобках. Вот пример:

begin

Mas[1] := 100;

Readln(Mas[2]);

Write(Mas[4);

if Mas[100] < 18 then Halt;

Mas[50] :=Mas[49] +Mas[1];

end.

93 Математическая модель формального нейрона. Математическое описание нейронной сети. Схемотехника нейронных сетей.

Дисциплина «Интеллектуальные информационные системы»

Матем-ая модель формального нейронаВ 1943 г. У. Мак Каллок и У. Питтс (WarrenMcCullock,WalterPitts) опубликовали статью, в которой предложили теорию обработки данных, с использованием нейронов- переключающих эл-ов. Такие нейроны имеют состояния 0 (невозбужденное) и 1 (активное).

На нейрон поступают сигналы как из внешней среды, так и от других нейронов. В математической модели эти сигналы образуют вектор-строкуy(t) = (у1(t),y2(t), ...yM(t)). Каждый из сигналовyj(t),j=1,2, ..., M, воздействует на нейрон с усилением или ослаблением, определяемым постоянными коэф-ми wj, J=1,2, ..., M, которые имитирует передачу сигнала через синапс ипотому называются синаптическими коэф-ми. Под воздействием сигналаy(t) на нейроне устанавливается потенциалh(t) в соответствии с формулой: где b - начальное смещение потенциала невозбужденного нейрона. Если ввести вектор синаптических коэффициентов w=(w1,w2, ...,wM),то выражение может быть записано в следующей.краткой.форме где T – знак транспортирования вектора или матрицы.Выходной сигнал нейрона n(t+1) на следующем такте дискретного времени рассматривается как результат нелинейногопреобразованияh(t):

Также в кач-ве нелинейного преобразователя исп-ся пороговая единичная ф-.Мат.модель нейрона илюстрир-ся след.схемой

Функция Ɵ[h] наз-ся активационной хар-ой или передаточной ф-цией нейрона. Обычно испол-ся сигмоидальные ф-ци. Они обладают следующими свойствами:бесконечная числовая ось отображается сигмоидальной функцией на конечный интервал,сигмоидальная функция непрерывна и монотонно возрастает.Обычно к указанным требованиям добавляются условия .

Активационная характеристика носит название логистической..

В качестве фун-ции активации нейрона м.б.применена гауссова ф-ция., где где χ и σ - параметры активационной характеристики.

Как следует из математической модели технического нейрона, она содержит ряд параметров. К числу этих параметров относятся синаптические коэффициенты w=(w1,w2, ..., wM) и смещение нейрона (-b). Выбор значений параметров w и (-b) зависит от конкретных условий решаемой практической задачи. Их настройка проводится в специальном режиме функционирования нейронной сети - режиме обучения. Это дало основание называть нейрокомпьютеры машинами, которые обучаются.

Математическое описание нейронной сети Рассмотрим совокупностьNвзаимосвязанных нейронов. Выходi-го нейрона обозначимni(t), потенциал –hi(t),i=1,2, ...,N. Введем векторы-строкиn(t)= (n1(t),n2(t), ...nN(t)),h(t)=(h1(t),h2(t), ...hN(t)). Нейронная сеть, состоящая изNуказанных нейронов, подвергается воздействию внешних сигналов. Это воздействие представлено вектором-строкойz(t)=(z1(t),z2(t), ...zM(t)) размерностиM. Кроме внешнего воздействияz(t),i-й нейрон может получать возбуждение со стороны других нейронов. Допускается обратная связь с собственного выхода, так что совокупность всех возможных входовi-го нейрона образует векторy(t)=(z(t),n(t)) размерностиM+N=Q. По аналогии с выражением потенциалhii-го нейрона может быть представлен в форме:

где wij,j=1,2, ...,N, иvij,j=1,2, ...,M, синаптические коэффициенты передачи соответствующих сигналов наi-ый нейрон, (-b) – смещениеi-го нейрона. Введение матрицW={wij,i,j=1,2, ...,N},V={vij,i=1,2, ...,N,j=1,2, ...,M} и вектораb=(b1,b2, ...,bV) позволяет записать выражение в краткой векторно-матричной форме:

Введем векторную активационную характеристику нейронов:

Нижний индекс в обозначении активационной характеристики Өi[hi]i-го нейрона введен в связи с тем, что нейроны могут иметь разные активационные характеристики. Данное Обозначение позволяет записать совокупность скалярных преобразований в векторной форме

Выходы нейронной сети q1(t),q2(t), ...qL(t)образуют вектор-строку q(t) размерности L и представляет собой некоторое подмножество выходов нейронов n1(t),n2(t), ...nN(t).Математически это представляется формулой:

Совокупность выражений ,,

представляет собой математическую модель нейронной сети, которая эволюционирует во времениt=0,1,2, ..., отталкиваясь от начального состояния .

Конфигурация связей в нейронной сети (ненулевые значенияматриц W и V) определяет ее архитектуру. В общем случае полныйнабор значений n1(t),n2(t), ...nN(t)необходим для формированиясостояния сети n1(t+1),n2(t+1), ...nN(t+1) в следующий тактдискретного времени. Такая сеть содержит внутренние обратныесвязи и называется рекуррентной. Она может эволюционироватьбесконечно долго

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]