定制的定制留一交叉验证

时间:2018-05-18 14:58:48

标签: machine-learning scikit-learn cross-validation

我有大约1000个数据点,每个数据点属于特定用户。总共我有80个用户,因此每个用户有大约12个数据点。我可以使用scikit-learn中的LeaveOneGroupOut让一个用户进行交叉验证。

但是现在我想使用留一法交叉验证,即在测试集中只使用一个数据点(而不是用户)。但是我不想使用完整的剩余训练集,而是使用稍微不同的训练集:如果来自用户x的数据点n在测试集中,那么训练集应该包括所有其他用户的数据点和数据用户x的1,2,... n-1点。如果来自用户x的数据点1在测试集中,则该用户的数据点不在训练集中。

如何做到这一点?我使用PipelineRandomizedSearchCV以及SVM,所以如果有LeaveOneGroupOut这样的解决方案,我会非常高兴我可以传递给这些方法。

0 个答案:

没有答案