使用Matlab的神经网络(nftool)预测鸢尾花的种类

(文末附数据,可自行尝试,数据来源:清风–数学建模)
观察数据可以发现鸢尾花一共有四个指标来为其分类,所以我们只需要把四个指标作为训练样本,把鸢尾花的种类作为结果放入神经网络即可。最后保存结果(训练好的net),将要预测的指标放入sim函数继续预测就可以了
然而这里有一个小问题,matlab的矩阵没法放文本,这个时候我们采用excel ,将山鸢尾置1,变色鸢尾置2,维吉尼亚鸢尾置3,如何操作?很简单,在excel的函数栏输入 (H3可改,根据实际数据存储方式灵活变换)
注意:维吉尼亚鸢尾那个数据最后有空格

   =IFS(H3="山鸢尾",1,H3="变色鸢尾",2,H3="维吉尼亚鸢尾 ", 3)

然后得到一个数据,将鼠标放在右下角,拖拉到最后即可
现在将数据全部放进Matlab中,然后在matlab的命令窗口输入nftool,调出工具箱, 点一个next,然后把x和y放进去,按照行和列选择样本与指标关系,然后点next,可选训练集测试集等,点next可设置网络,再点next,点train,然后一直next,之后在最后一步的时候 save results,保存网络,net会出现在变量窗口
然后开始训练,注意将指标作为列向量传入

predict_y = zeros(6,1); % 初始化predict_y
for i = 1: 6
    result = sim(net, predict(i,:)');
    predict_y(i) = result;
end
disp('预测值为:')
disp(predict_y)

输出结果

预测值为:
    1.0321
    3.0024
    1.0156
    2.0143
    3.0112
    1.0204

此即为最后答案
数据链接
链接:https://pan.baidu.com/s/1QXfUQQxaRgTt_1AJfqwWeg
提取码:sqrt


  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值