准备数据,这里我们用到经典例子葡萄酒的数据
第一行为葡萄酒类别,有1、2、3三种类别,第2列到14列为葡萄酒各元素的含量。我们需要做的是对于某一个未知类别的葡萄酒,根据其各元素的含量预测出他的类别。因此输入为各元素的含量,输出为类别。
将数据读入matlab空间,变量名为inout:
选择APP选项中的Classification Learner选项,打开分类学习机,选择New Session选项。
数据选择inout变量,其大小为178*14。由于一组数据其变量需要包括每一列的数据,因此我们选择Use columns as variables,Response代表输出的目标,我们选择第一列,则其余的为Predictors,即训练的输入数据。验证一般选择交叉验证,这里我们选择Cross-Validation选项。然后点击Start Session。
这里可以选择不同的算法进行训练,我们选择All代表使用所有的算法训练一遍,点击Train开始训练。
原始数据的散点图会显示出来,由于这数据只有两维,因此可以全部显示在二维坐标中。如果你的数据多于两维,二维坐标系不能完全显示每一维,你可以在右边红圈的X、Y下拉条中选择显示哪两维。
红框里面代表的是每一种算法的识别准确率,可以看到第1.5种算法识别准确率最高,可以达到98.9%以上。
点击export model可以导出模型
可以看出模型成功建立。
按照其提示输入trainedModel.predictFcn(X) 语句即可以实现预测功能。其中X为要预测的数组。
比如要预测第一行的数据所对应的类别:
可以看出第一行数据对应的类别为1类别。因此我们的预测过程完成了。