Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

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



Исследование радиальных базисных сетей
типа 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.

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





Дата публикования: 2015-10-09; Прочитано: 599 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...