matlab神经网络代码
matlab% 创建一个简单的神经网络 net = feedforwardnet(10); % 创建一个包含10个隐藏层神经元的前向神经网络 % 准备数据 load iris_dataset % 加载示例数据集 x = irisInputs; % 输入数据 t = irisTargets; % 目标数据 % 将数据集分为训练集和测试集 [trainInd,~,testInd] = dividerand(size(x,2),0.7,0,0.3); x_train = x(:,trainInd); t_train = t(:,trainInd); x_test = x(:,testInd); t_test = t(:,testInd); % 设置训练参数 net.trainParam.showWindow = false; % 不显示训练窗口 net.trainParam.showCommandLine = true; % 显示命令行输出 % 训练神经网络 net = train(net, x_train, t_train); % 测试神经网络 y = net(x_test); % 计算测试误差 performance = perform(net, t_test, y); disp(['测试误差:', num2str(performance)]);
这个示例使用了 Iris 数据集,其中包含了三种不同类型的鸢尾花的样本数据。您可以替换为您自己的数据集。
feedforwardnet(10)
创建了一个前馈神经网络,该网络包含一个隐藏层,其中有 10 个神经元。
load iris_dataset
加载了 Iris 数据集,其中包含输入数据 irisInputs
和目标数据 irisTargets
。
dividerand(size(x,2),0.7,0,0.3)
将数据集分为 70% 的训练集和 30% 的测试集。
train(net, x_train, t_train)
对神经网络进行训练,其中 x_train
是训练输入数据,t_train
是对应的目标数据。
net(x_test)
使用训练好的神经网络对测试集进行预测。
perform(net, t_test, y)
计算了神经网络在测试集上的性能,返回测试误差。