下载此文档

基于神经网络的数据分类.pptx


文档分类:幼儿/小学教育 | 页数:约16页 举报非法文档有奖
1/16
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/16 下载此文档
文档列表 文档介绍
基于神经网络的数据分类
花萼长度
花萼宽度
花瓣长度
花瓣宽度
类别




1
5



1




2


4

2




2



2
3




3
有一批花可分为三个品种,利用神经网络算法,根据花萼长度,花萼宽度,花瓣长度和花瓣宽度对其进行分类。
样本包含150组数据,选择90组作为训练样本,60组作为测试样本。输入数据为[花萼长度花萼宽度花瓣长度花瓣宽度],输出数据为花的品种的类别。
要做的工作:



BP神经网络
网络层数:2 输入层节点数:4
输出层节点数:1
隐层节点数:m=sqrt(n+l)+a
(n为输入层节点数,l为输出层节点数,a为1~10之间的常数)
%导入训练样本的数据
data=load(‘’);
p=data(:,1:4)‘; %输入量
t=data(:,5)‘; %输出量

%数据归一化到[-1 +1]
[pn,ps] = mapminmax(p);
%导入测试样本的数据
testdata=load(‘’);
p_test=testdata(:,1:4)‘; %输入量
t_test=testdata(:,5)‘; %输出量

%数据归一化到[-1 +1]
[pn_test,ps] = mapminmax(p_test);
:
,作为训练样本;,作为测试样本。
:
= 50; %.=1000; %.=; %. = ; %学习系数
net=,pn,t); %开始训练
:
net = newff(minmax(pn),[10 1],{'tansig''purelin'},'traingdx');
%隐含层传递函数为transing;
%输出层传递函数为purelin;
%训练函数为traingdx(有动量和自适应lr的梯度下降法)
:
a = ,pn_test);
a=round(a); %四舍五入取整
figure(1)
plot(a,':or')
hold on
plot(t_test,'-*');
legend(‘预测类别‘,’实际类别’)
title(‘BP网络预测输出')
ylabel(‘类别')
xlabel(‘样本’)
%预测误差
error=a-t_test;
figure(3)
plot(error,'-*')
title(‘BP网络预测误差')
ylabel(‘误差')
xlabel(‘样本')
figure(3)
count=0; %误分类次数
hold on;
for i=1:60
%预测与实际类别都为1
if a(i)<
if t(i)<
plot(p(1,i),p(4,i),‘ro’);
else
plot(p(1,i),p(4,i),'r*');
count=count+1;
End
%预测与实际类别都为3
elseif a(i)>
if t_test(i)>
plot(p(1,i),p(4,i),'go');
else
plot(p(1,i),p(4,i),'g*');
count=count+1;
end
%预测与实际类别都为1
else
if(t_test(i)<=)&&(t_test(i)>=)
plot(p(1,i),p(4,i),'bo');
else
plot(p(1,i),p(4,i),'b*');
count=count+1;
end
end
end
rate=(60-count)/60 %正确率
:
图中红色为第一类,蓝色为第二类,绿色为第三类。结果显示有一个数据分类错误,%。
rate =

出现分类错误的原因可能是训练的样本太少,或者是隐层节点数选择不合适,接下来在经验值范围内改变隐层节点数,观察分类结果。

基于神经网络的数据分类 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数16
  • 收藏数0 收藏
  • 顶次数0
  • 上传人分享精品
  • 文件大小325 KB
  • 时间2018-03-08