为了“方便”,我尝试使用 sklearn.utils.class_weight,compute_class_weight 函数
但是,我得到“类应该包括所有可以在 y 中的有效标签”错误;尽管如此,我 100% 确信我给出了所有的类标签。
print(np.unique('y_train'), ' classes in training set')
>>> 86 classes in training set
所以这没有问题;拿镜头:
print(len(y_train), 'train samples')
>>> 6914 train samples
只是为了确保形状:
y_train.shape
>>> (6914, 1)
所以是的,我有一个训练样本向量;而且我知道四五个班级完全占主导地位,所以我想增加一些班级权重。
from sklearn.utils.class_weight import compute_class_weight
class_weights = compute_class_weight('balanced', classes = np.unique(y_train), y = y_train)
>>> ValueError: classes should include all valid labels that can be in y
我在这里。这里有什么问题?