资源简介
BP神经网络用于分类iris数据集,编程的思路不错,值得初学者学习。
代码片段和文件信息
%-----BP神经网络方法—
%% 2017.2.6 编写的BP神经网络分类iris数据的程序
%思路:将iris数据分为两类,训练数据和测试数据,用dividevec函数随机抽取,因此实验结果是不定的,最好情况是100%
clear all;
close all;
clc;
%% -------数据处理模块------------------
data=xlsread(‘iris.xlsx‘); %此处的数据已经做了相应处理,因此xlsread 直接导入数据
data1 = data(:1:4); %data1指的是属性值
data2 = data(:end); %data2指的是分类
data2 = double(dec2bin(data2))-48;
data = [data1data2]; %处理后数据
[trainVvalVtestV] = dividevec(data1‘data2‘0.00.5) %将数据分为训练和测试两类,没有变量数据,因此所占百分比是0
%% -----------------数据归一化处理----------
[input1ps] = mapminmax(trainV.P-11); %由于mapminmax是按行归一化,行表示属性 列表样本个数
[input2ps] = mapminmax(testV.P-11);
%% -----------------构造输出矩阵----------
output1 = trainV.T;
output2 = testV.T;
%% ----- 建立网络--------------
net = newff(input1output1 [10 3]); %[103]表示有两层隐层,第一层隐层节点为
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2017-02-10 22:09 iris\
文件 1790 2017-02-10 22:11 iris\BP_iris.m
文件 4551 1994-06-18 00:02 iris\iris.data
文件 14843 2017-01-23 04:20 iris\iris.xlsx
评论
共有 条评论