Решить задачу классификации с помощью персептрона.



Обучающее множество: P = [ -0.5 -0.5 +0.3 -0.1; -0.5 +0.5 -0.5 +1.0], T = [1 1 0 0]. 

Тестирующее множество: p = [0.7; 1.2].

Решаем данную задачу с помощью программы Mat Lab

Для этого мы используем функции которые были приведены выше

Pex = [-0.5 -0.5 0.3 -0.1; -0.5 0.5 -0.5 1]; Обучающие множество

Tex = [1 1 0 0];% T

ptest = [0.7; 1.2];%тестирующие множество

net2 = newp(Pex,Tex);%создание Персептрона

figure

plotpv(Pex,Tex)% вывод графика со значениями

Yex = net2(Pex)% обучение Системы

net2.trainParam.epochs = 20;%добавление правил

net2 = train(net2,Pex,Tex);обучение нейронной сети

Yex = net2(Pex) % Использование нейронной сети

 

 

Рисунок 5.График Классификации задачи с тестирующим множеством

 

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

 

Рисунок 6.График обучение системы

Данный график имеет две оси по оси ординат это значение абсолютной ошибки, а по оси абсцисс значение эпох. На  значение эпохи есть два обозначения это обучение и улучшенный результат

От 0 до 2 по значению Epochs происходит обучение, а с двух до трех происходит улучшение нейронной сети.

Рисунок 7.Модель нейронной сети  для второго задания

 

На данном рисунке представлена модель нейронной сети на которой представлен вход правила и выход в данной модели задано три правила на улучшения нейронной сети.

Вывод данная нейронная сеть соответствует тестирующему множеству может имеет решения с помощью персептрона данная нейронная сеть имеет бесконечное число множеств.

Задание №3

Решить задачу классификации для задачи исключающего или

 

 

Nor2= [0 0 1 1; 0 1 0 1];% Обучающие множество

Xor2= [0 1 1 0];T

netOR2 = newp(Nor2,Xor2);%использование персептрона

plotpv(Nor2,Xor2) вывод графика

Yor2 = netOR2(Nor2)исключение или

netOR2.trainParam.epochs = 20; добавление правил

netOR2 = train(netOR2,Nor2,Xor2); обучение без исключающих правил

Yor2 = netOR2(Nor2) использование системы

 

Рисунок8. График для исключающего или

 

Как видно из графика решение есть так как соответствует своим значениям по правилам приведённым выше

 

 

Рисунок 9.График для исключения или

Как представлено на графике происходит редактирование нейронной сети и происходит исключение из правил.

Рисунок 10.Модель нейронной сети с исключённым или

 

Данном задании есть решение есть так как оно соответствует правилам приведённым выше. с помощью персептрона данная нейронная сеть имеет бесконечное число множеств

 

Задание №4

4.Процесс изготовления кирпичей связан с отжигом, в результате которого могут

появляться невидимые трещины. Оператор может детектировать их, ударяя кирпичи молотом. В автоматической системе реакция записывается с помощью микрофона на компьютер, фильтруется и нормализуется. Соответствующие данные для 10 кирпичей приведены в таблице 1 (данные были получены в Массачусетском технологическом институте, 1997г.). Требуется разработать систему, которая бы распознавала бракованные кирпичи.

Таблица1. Интенсивности отклика на различных частотах

475 Hz 557 Hz Quality OK?
0,958 0,003 yes
1,043 0,001 yes
1,907 0,003 yes
0,780 0,002 yes
0,579 0,001 yes
0,003 0,105 no
0,001 1,748 no
0,014 1,839 no
0,007 1,021 no
0,004 0,214 no

 

PHz = [0.058 1.043 1.907 0.780 0.003 0.001 0.014 0.007; 0.003 0.001 0.003 0.002 0.105 1.748 1.839 1.021];% Обучающие множество

 THz = [1 1 1 1 0 0 0 0];%T

 PHztest = [0.579 0.004; 0.001 0.214];% тестирующие множество

 netHz = newp(PHz,THz);% Создание персептрона

 figure

 plotpv(PHz,THz)вывод значений на график

 YHz = netHz(PHz)%обучение нейронной сети

 netHz.trainParam.epochs = 20;добовление правил

 netHz = train(netHz,PHz,THz);обучение нейронной сети

 YHz = netHz(PHz)использование новой нейронной сети

 

Рисунок 11.Вывод графика со всеми значениями дефектов кирпичей

 

На данном графике мы получили различные степени дефектов кирпичей

 

Рисунок 12.Вывод графика с правилами для выявления дефектов

 

На данном графике представлены по оси абсцисс правила а по оси ординат абсолютные ошибки. П оси абсцисс видно что 0 до 1 происходит обучение системы а 1 до 2 происходит улучшение нейронной сети

 

Рисунок 13 Нейронная сеть для выявления дефектов кирпичей.

 

Вывод в ходе проделанной работы мы ознакомились с функцией персептрон которая отвечает за обучение нейронных сетей. Ознакомились с обучением нейронных сетей выяснили что нейронная сеть состоит из входов правил и выходов. В ходе проделанной работы выполнили сравнительный анализ алгоритмов обучения нейронных сетей (НС) прямого распространения


 

ПРИЛОЖЕНИЕ А КОД ПРОГРАММЫ

clc,clear all,close all

 

Nor= [0 0 1 1;0 1 0 1]

Yor= [0 1 1 1]

netOR = newp(Nor,Yor);

plotpv(Nor,Yor)

Yor = netOR(Nor)

netOR.trainParam.epochs = 20;

 netOR = train(netOR,Nor,Yor);

 Yor = netOR(Nor)

 

 Nand = [0 0 1 1;0 1 0 1]

 Yand =[0 0 0 1]

 netAND = newp(Nand,Yand);

 figure

 plotpv(Nand,Yand)

Yand = netAND(Nand)

netAND.trainParam.epochs = 20;

 netAND = train(netAND,Nor,Yor);

 Yand = netAND(Nor)

 

% 2

 Pex = [-0.5 -0.5 0.3 -0.1; -0.5 0.5 -0.5 1];

 Tex = [1 1 0 0];

 ptest = [0.7; 1.2];

 net2 = newp(Pex,Tex);

 figure

 plotpv(Pex,Tex)

Yex = net2(Pex)

net2.trainParam.epochs = 20;

 net2 = train(net2,Pex,Tex);

 Yex = net2(Pex)

% 3

Nor2= [0 0 1 1; 0 1 0 1];

 Xor2= [0 1 1 0];

 netOR2 = newp(Nor2,Xor2);

 plotpv(Nor2,Xor2)

Yor2 = netOR2(Nor2)

netOR2.trainParam.epochs = 20;

 netOR2 = train(netOR2,Nor2,Xor2);

 Yor2 = netOR2(Nor2)

%% 4

 PHz = [0.058 1.043 1.907 0.780 0.003 0.001 0.014 0.007; 0.003 0.001 0.003 0.002 0.105 1.748 1.839 1.021];

 THz = [1 1 1 1 0 0 0 0];

 PHztest = [0.579 0.004; 0.001 0.214];

 netHz = newp(PHz,THz);

 figure

 plotpv(PHz,THz)

 YHz = netHz(PHz)

 netHz.trainParam.epochs = 20;

 netHz = train(netHz,PHz,THz);

 YHz = netHz(PHz)


Дата добавления: 2020-04-25; просмотров: 84; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!