假设我正在创建这样的学习曲线(代码中可能有小错误,这只是一个示例)。我想要的是一个经典的学习曲线,你可以扩大训练集,保持验证/测试集的大小相同。
learningCurve <- generateLearningCurveData("regr.glmnet",
bh.task,
makeResampleDesc(method = "cv", iters = 5, predict = "both"),
seq(0.1, 1, by = 0.1),
list(setAggregation(auc, train.mean), setAggregation(auc, test.mean))
)
上述代码的问题在于,学习器确实是根据训练数据的一部分进行训练的,但 auc.train.mean
度量是在整体上进行评估的训练集。这导致的学习曲线并不是我真正想要的。我希望用这个方法来评估用于学习的训练集部分的性能,如下所示:
http://www.astroml.org/sklearn_tutorial/practical.html#learning-curves
我相信这句话已经说明了一切:
Note that when we train on a small subset of the training data, the training error is computed using this subset, not the full training set.
如何实现这一目标?
最佳答案
关于R mlr - 从训练数据子集和整个测试数据(不是整个训练数据)创建学习曲线?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40765180/