我正在尝试使用 RandomForest 分类器对数据集进行建模。我的数据集有 3 个类,即。A, B, C
. 'A'
是负类,'B'
和'C'
是正类。
在 GridSearch 中,我想优化,F1-score
因为所有类中的样本数量不是均匀分布的,并且类'A'
的样本数量最多。
那就是我想了解标签参数的用法的地方。医生说:
标签:列表,可选当平均!=“二进制”时要包含的标签集,如果平均为无,则它们的顺序。可以排除数据中存在的标签,例如计算忽略多数负类的多类平均值,而数据中不存在的标签将导致宏观平均值中的 0 个分量。
我无法正确理解它。这是否意味着,在我的 screnario 中,我应该将标签设置为labels = ['B', 'C']
,只是正类?
请帮助
custom_scoring = make_scorer(f1_score, labels=[???],average='weighted')
clf = RandomForestClassifier(class_weight='balanced', random_state=args.random_state)
grid_search = GridSearchCV(clf, param_grid=param_grid, n_jobs=20, scoring=custom_scoring)