R中的随机森林:报告和观察到的误差值之间的差异

时间:2015-01-23 13:48:31

标签: r

我尝试在数据集上拟合随机森林。花了几个小时,但最终安装。使用的命令是: model< - train(classe~。,data = training,method =“rf”,prox = F)

模型报告如下:

随机森林

13737个样本      52个预测因子       5个班级:'A','B','C','D','E'

无需预处理 重新采样:自举(25次重复)

样本量摘要:13737,13737,13737,13737,13737,13737,......

跨调整参数重新取样结果:

mtry   Accuracy    Kappa       Accuracy SD   Kappa SD

2    0.9888012  0.9858367  0.001844763  0.002329859
27   0.9882821  0.9851812  0.001874991  0.002365894
52   0.9820495  0.9773000  0.003680805  0.004649905

准确度用于使用最大值选择最佳模型。 用于模型的最终值是mtry = 2.

当我对训练数据进行预测时,我得到了100%的准确度。

预测< - 预测(模型,培训)

表(预测,培训$ classe)

预测A B C D E

        A 3906    0    0    0    0
        B    0 2658    0    0    0
        C    0    0 2396    0    0
        D    0    0    0 2252    0
        E    0    0    0    0 2525

我预计模特报告它会达到98.9%。

我错过了什么?

谢谢和问候,

1 个答案:

答案 0 :(得分:0)

此问题的答案相同:https://stackoverflow.com/a/51690010/9684157

您可以将这些值分别解释为样本内的准确度,而无需重新采样。

当您拟合模型时,包插入符会执行25次重复的自举重采样,这可以在模型输出中看到。因此,精度值基于25 x 13737观测值。为了创建混淆矩阵,您使用的是最终模型(mtry = 2的模型)来预测训练样本的结果,该样本的长度为13737。因此,在相应样本中略有差异是正常的准确性。

在评估拟合优度时,您需要小心,因为您正在使用同一数据集训练和评估模型。毫不奇怪,您可以获得很高的准确性。最好使用看不见的数据集评估最终模型,以确保其性能并发现可能的过度拟合问题。