简而言之,我有一个不平衡的数据集,partial_fit
由于数据集的大小,我必须使用它进行训练。我使用的一些方法不能自然地处理多类问题,所以我用OneVsRestClassifier
. 但是,这会导致调整class_weights
.
因为我使用partial_fit
设置class_weight='balanced'
或选项'auto'
是不可能的。
是否有一个简单的解决方案,我可以使用OneVsRestClassifier
并仍然加权我的课程?
示例代码:
model = OneVsRestClassifier(SGDClassifier(loss='log', alpha=1e-4, penalty='elasticnet', class_weight=weights))
model.partial_fit(features, labels_i, classes=np.unique(labels_i))
其中weights
是包含每个类权重的字典。