mars.learn.preprocessing.label_binarize#

mars.learn.preprocessing.label_binarize(y, *, classes, neg_label=0, pos_label=1, sparse_output=False, execute=True)[来源]#

以一对多的方式二值化标签。

在scikit-learn中有几种回归和二元分类算法。将这些算法扩展到多类分类情况的一个简单方法是使用所谓的“一对多”方案。

该函数可以在提前知道的固定类标签集上计算此转换。

Parameters
  • y (类似数组) – 要编码的整数标签或多标签数据的序列。

  • (类似数组形状 (n_classes,)) – 唯一地保存每个类别的标签。

  • neg_label (int, default=0) – 需要编码的负标签值。

  • pos_label (int, default=1) – 正标签必须编码的值。

  • sparse_output (bool, default=False,) – 如果希望输出的二进制数组以CSR稀疏格式呈现,则设置为真。

Returns

Y – 对于二分类问题,形状将为 (n_samples, 1)。

Return type

{张量,稀疏张量} 的形状为 (n_samples, n_classes)

示例

>>> from mars.learn.preprocessing import label_binarize
>>> label_binarize([1, 6], classes=[1, 2, 4, 6])
array([[1, 0, 0, 0],
       [0, 0, 0, 1]])

类的顺序被保留:

>>> label_binarize([1, 6], classes=[1, 6, 4, 2])
array([[1, 0, 0, 0],
       [0, 1, 0, 0]])

二进制目标转变为列向量

>>> label_binarize(['yes', 'no', 'no', 'yes'], classes=['no', 'yes'])
array([[1],
       [0],
       [0],
       [1]])

另请参阅

LabelBinarizer

用于封装label_binarize功能的类,并允许独立于转换操作对类进行拟合。