我使用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 用于训练。我需要折叠相同的元素并在测试/训练组内的样本中平均它们的计数。