compute_class_weight#
- sklearn.utils.class_weight.compute_class_weight(class_weight, *, classes, y)[源代码]#
估计不平衡数据集的类权重。
- 参数:
- class_weight法令、“平衡”或无
如果“平衡”,类权重将由
n_samples / (n_classes * np.bincount(y))
.如果给出了字典,则键是类,值是相应的类权重。如果None
是给定的,班级权重将是均匀的。- classesndarray
数据中出现的类的数组,如由
np.unique(y_org)
与y_org
原始的班级标签。- y形状类似阵列(n_samples,)
每个样本的原始类标签数组。
- 返回:
- class_weight_vect形状的nd数组(n_classes,)
阵列与
class_weight_vect[i]
i级的重量。
引用
“平衡”启发式的灵感来自罕见事件数据中的逻辑回归,King,Zen,2001年。
示例
>>> import numpy as np >>> from sklearn.utils.class_weight import compute_class_weight >>> y = [1, 1, 1, 1, 0, 0] >>> compute_class_weight(class_weight="balanced", classes=np.unique(y), y=y) array([1.5 , 0.75])