在scikit_learn中对KFold分割进行后处理

时间:2018-04-03 13:51:29

标签: python scikit-learn cross-validation grid-search

我使用GridSearchCV调整SVM中的超参数(C,gamma,内核),使用计数作为权重。但是我需要以数据方式分割我的数据(即来自一个样本的元素都在同一个折叠中)。这可以通过GroupKFold或PredefinedSplit来实现。

但我需要在训练前将自定义方法应用于折叠分割。

我的数据的玩具示例:

     sample   status  element  count   X1      X2      X3      X4
0       s1      0       0000    0.4     0       0       0       0
1       s1      0       1111    0.25    1       1       1       1
2       s1      0       0111    0.15    0       1       1       1
3       s1      0       1001    0.2     1       0       0       1
4       s2      1       0000    0.1     0       0       0       0
5       s2      1       0111    0.05    0       1       1       1
6       s2      1       1010    0.65    1       0       1       0
7       s2      1       1000    0.2     1       0       0       0
8       s3      0       0000    0.3     0       0       0       0
9       s3      0       1001    0.45    1       0       0       1
10      s3      0       1000    0.25    1       0       0       0
11      s4      1       1111    0.5     1       1       1       1
12      s4      1       0111    0.2     0       1       1       1
13      s4      1       0001    0.3     0       0       0       1

让我们说,样本 s1 进入测试折叠,样本 s2-s4 用于训练。我需要折叠相同的元素并在测试/训练组内的样本中平均它们的计数。

0 个答案:

没有答案