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

Лабораторная работа № 10 Исследование радиальных базисных сетей типа pnn

Цель работы: изучение архитектурных особенностей радиальных базисных нейронных сетей типа PNN и специальных функций для их создания, автоматической настройки весов и смещений и конкурирующей активации; ознакомление с демонстрационным примером и его скриптом; приобретение навыков построения таких сетей для решения задач классификации на основе подсчёта вероятности принадлежности векторов к рассматриваемым классам и для решения других вероятностных задач.

Теоретические сведения

Радиальная базисная сеть типа PNN (Probabilistic Neural Networks), или вероятностная нейронная сеть, имеет архитектуру, аналогичную архитектуре радиальной базисной сети общего вида, и отличается от неё структурой второго слоя, в котором используются функция взвешивания dotprod (скалярное произведение сигналов и весов), функция накопления netsum и передаточная функция compet – конкурирующая функция, преобразующая вектор входа слоя нейронов таким образом, чтобы нейрон с самым большим входом имел выход, равной единице, а все другие нейроны имели выходы, равные нулю. Смещения используются только в первом слое.

Создание вероятностей сети осуществляется функцией

net=newpnn(P,T,spread),

где Р – массив размера R*Q из Q входных векторов с R элементами;

T – массив размера S*Q из Q векторов цели и S классов;

SPREAD – параметр влияния, значение по умолчанию 1.0.

Для вероятностей сети необходимо задать обучающее множество из Q пар векторов входа и целей. Каждый вектор цели имеет K элементов, указывающих класс принадлежности и, таким образом, каждый вектор входа ставится в соответствие одному из К классов. В результате образуется матрица связанности T размера K*Q, состоящая из нулей и единиц, строки которой соответствуют классам принадлежности, а столбцы – векторам входа. Таким образом, если элемент Т(i,j) матрицы связанности равен единице, то это означает, что j-й входной вектор принадлежит к классу i.

Весовая матрица входного слоя IW формируется как и для радиальной базисной сети общего вида с использованием векторов входа из обучающего множества.

Весовая матрица второго слоя соответствует матрице связан- ности Т, которая строится с помощью функции ind2vec.

Практические задания

Задание 1. Создать вероятностную нейронную сеть для обучающей последовательности, состоящей из вектора входа Р=[1 2 3 4 5 6 7] и индекса классов Тс=[1 2 3 2 2 3 1], проанализировать её структурную схему и параметры вычислительной модели, выполнить моделирование сети и оценить правильность классификации, выполнив следующие команды:

Р=[1 2 3 4 5 6 7]; % значения входа;

Tc=[1 2 3 2 2 3 1]; % индексы классов (3);

T=ind2uec(Tc); % матрица связанности (целей);

net=newpnn(P,T); % создание сети PNN;

gensim(net); % структура сети;

net; % параметры сети;

Y=sim(net,P); % моделирование сети;

Yc=iecc2ind(Y); % классы входных векторов;

% 1 2 3 2 2 3 1.

Задание 2. Создать вероятностную нейронную сеть для определения принадлежности двухэлементных входных векторов к одному из трёх классов на основании обучающей последовательности 7 входов Р[0 0; 1 1; 0 3; 1 4; 3 1; 4 1; 4 3] и индекса классов Тс=[1 1 2 2 3 3 3], значения в котором определяют класс соответствующего вектора входа, выполнив команды:

Р=[0 0; 1 1; 0 3; 1 4; 3 1; 4 1; 4 3 ]’; % 7 векторов.

Тс=[1 1 2 2 3 3 3 ]; % классы.

T= ind2vec(Tc); % формирование разряженной матрицы

% связанности;

T= full (T); % преобразование к полной матрице;

net= newpnn; % создание вероятностной сети;

net.layers {1}.size % число нейронов 1-го слоя;

net.layers {2}.size % число нейронов 2-го слоя;

Y= sim (net, P); % моделирование сети;

Yc= vec2ind(Y); % формирование индекса классов;

Pt= [1 3; 0 1; 5 2]’; % векторы для тестирования;

A= sim (net, Pt); % тестирование сети;

Ac= vec2ind (A); % формирование индекса классов.

Задание 3. Проанализировать структурные схемы, значения параметров вычислительных моделей и результаты моделирования нейронных сетей, используемых в следующих демонстрационных примерах:

Demorb1 – рациональные базисные сети;

Demorb3 – использование не перекрывающихся функций активации (передаточных функций);

Demorb4 – использование перекрывающихся передаточных функций;

Demogrn1 – аппроксимация функций с помощью сети типа GRNN;

Demogrn1 – классификация векторов с помощью сети типа PNN.

Для анализа использовать скрипты примеров.