You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

sklearn LabelBinarizer如何指定自定义正类别标签?

sklearn 0.24.1中LabelBinarizer指定自定义正类的解决方案

在sklearn 0.24.1版本中,LabelBinarizer处理字符串类标签时,会先对标签值进行排序,默认将排序后的最后一个值标记为正类别(对应输出1)。

示例代码如下:

from sklearn import preprocessing

lb = preprocessing.LabelBinarizer()
# 输出为 [[0] [1] [1] [0]],'d'被设为正类(1)
print(lb.fit_transform(['a', 'd', 'd', 'a']))

lb = preprocessing.LabelBinarizer()
# 输出为 [[1] [0] [0] [1]],'e'被设为正类(1)
print(lb.fit_transform(['e', 'd', 'd', 'e']))

当前版本的LabelBinarizer没有提供直接指定某一字符串为正类的参数,可通过以下方法实现自定义正类的需求:

lb = preprocessing.LabelBinarizer()
# 反转默认输出的0和1,将'd'设为正类(1)
print(-1 * (lb.fit_transform(['e', 'd', 'd', 'e']) - 1))
# 输出结果为 [[0] [1] [1] [0]]

该方法通过对fit_transform的结果做数学转换:先将结果减1(1变0,0变-1),再乘以-1,实现0和1的反转,从而将原本的负类转换为正类。

内容的提问来源于stack exchange,提问作者hlfernandez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 07:57:06