Matlabによる機械学習

为不同的分类器可视化决策曲面

每种分类算法生成不同的决策规则。这些规则可以以决策曲面的形式可视化。这个例子演示了如何可视化不同分类算法的决策面。

加载数据

加载数据以查看虹膜物种之间的萼片测量值有何不同。您可以使用包含萼片测量值的两列。

清晰的负载fisheririsX = meas(:,1:2);Y =分类(物种);标签=类别(y);图(1)gscatter(X(:,1), X(:,2), species,“rgb”osd的);包含(“花萼长度”);ylabel (萼片宽的);

训练四种不同的分类器,并将模型存储在单元格数组中

分类器{1}= NaiveBayes.fit(X,y);classifier{2} = ClassificationDiscriminant.fit(X,y);classifier{3} = ClassificationTree.fit(X,y);classifier{4} = ClassificationKNN.fit(X,y);Classifier_name = {“天真的贝叶斯“判别分析”分类树的“最近邻”};

使用所有分类器预测物种

meshgrid用于在实际数据值的某些边界内创建跨越整个空间的点网格。每个分类器用于对网格中的所有数据进行分类。

[xx1, xx2] = meshgrid(4:.01:8,2:.01:4.5);图(2)Ii = 1:数字(分类器)ypred = predict(分类器{Ii},[xx1(:) xx2(:)]);H (ii) = subplot(2,2,ii);Gscatter (xx1(:), xx2(:), ypred,“rgb”);标题(classifier_name {2},“字形大小”15)传奇,轴结束传奇(h(1)、标签“位置”, (0.35, 0.01, 0.35, 0.05),“定位”“水平”

数据集及参考资料

Fisher的虹膜数据包括对150个虹膜标本的萼片长度、萼片宽度、花瓣长度和花瓣宽度的测量。这里有三个物种各50个标本。类附带了此数据集统计和机器学习工具箱™