如何在一个数据集上评估不同模型的性能?

时间:2015-11-12 02:35:10

标签: machine-learning classification cross-validation deep-learning

我想评估性能不同的模型,例如void func(String param1, String param2){ //there would be some validations for the params //... //then network request, here I want to mock the result String result = NetUtils.reqNetwork(param1, param2); //work with the result //... } SVMRandForest等,我只有一个数据集。因此,我将数据集拆分为训练集和测试集,并使用训练数据训练该数据集上的不同模型,并使用测试数据集进行测试。

我的问题:我是否可以仅在一个数据集上获得不同模型的真实表现?例如:我发现CNN模型得到了最好的结果,那么我应该选择SVM作为我的最终分类模型吗?

2 个答案:

答案 0 :(得分:3)

通过交叉验证交叉验证不同测试样本的模型可能是一个更好的主意,以避免偏差。还可以根据应用程序类型,根据不同的评估指标检查模型。例如,如果是分类问题,则使用每个模型的召回,准确性和AUC。

评估结果可能非常具有欺骗性,需要进行大量验证。

答案 1 :(得分:0)

您可以绘制所有模型的ROC曲线.AUC最高的模型将是最佳模型。