make_multilabel_classification#
- sklearn.datasets.make_multilabel_classification(n_samples=100, n_features=20, *, n_classes=5, n_labels=2, length=50, allow_unlabeled=True, sparse=False, return_indicator='dense', return_distributions=False, random_state=None)[源代码]#
生成随机多标签分类问题。
- 对于每个样本,生成过程是:
选择标签数量:n ~ Poisson(n_labels)
n次,选择c类:c ~多项(theta)
选择文档长度:k ~ Poisson(长度)
k次,选择一个词:w ~ Multinoment(theta_c)
在上述过程中,使用拒绝抽样来确保n永远不为零或大于
n_classes
,并且文档长度永远不为零。同样,我们拒绝已经选择的课程。有关使用示例,请参阅 绘制随机生成的多标签数据集 .
阅读更多的 User Guide .
- 参数:
- n_samplesint,默认=100
样本数量。
- n_featuresint,默认=20
要素的总数。
- n_classesint,默认=5
分类问题的类数。
- n_labelsint,默认=2
每个实例的平均标签数。更准确地说,每个样本的标签数量是从泊松分布中得出的,
n_labels
作为其预期值,但样本的界限(使用拒绝抽样)为n_classes
,并且必须为非零,如果allow_unlabeled
是假的。- lengthint,默认=50
特征的总和(如果是文档,则是字数)从具有该预期值的Poisson分布中得出。
- allow_unlabeled布尔,默认=True
如果
True
,某些实例可能不属于任何类。- sparse布尔,默认=假
如果
True
,返回稀疏特征矩阵。Added in version 0.17: 参数以允许 sparse 输出.
- return_indicator请输入'dense','sparse'}或False,default='dense'
如果
'dense'
返回Y
采用密集二进制指示符格式。如果'sparse'
返回Y
采用稀疏二进制指示符格式。False
返回标签列表的列表。- return_distributions布尔,默认=假
如果
True
,返回提取数据的给定类别的特征的先验类别概率和条件概率。- random_stateint,RandomState实例或无,默认=无
确定创建数据集的随机数生成。传递int以获得跨多个函数调用的可重复输出。看到 Glossary .
- 返回:
- X形状的nd数组(n_samples,n_features)
生成的样本。
- Y形状(n_samples,n_classes)的{nd数组,稀疏矩阵}
The label sets. Sparse matrix should be of CSR format.
- p_c形状的nd数组(n_classes,)
每个班级被抽取的概率。只有在以下情况下才返回
return_distributions=True
.- p_w_c形状的nd数组(n_features,n_classes)
给定每个类别绘制每个要素的概率。只有在以下情况下才返回
return_distributions=True
.
示例
>>> from sklearn.datasets import make_multilabel_classification >>> X, y = make_multilabel_classification(n_labels=3, random_state=42) >>> X.shape (100, 20) >>> y.shape (100, 5) >>> list(y[:3]) [array([1, 1, 0, 1, 0]), array([0, 1, 1, 1, 0]), array([0, 1, 0, 0, 0])]