mars.learn.datasets.make_classification#
- mars.learn.datasets.make_classification(n_samples=100, n_features=20, n_informative=2, n_redundant=2, n_repeated=0, n_classes=2, n_clusters_per_class=2, weights=None, flip_y=0.01, class_sep=1.0, hypercube=True, shift=0.0, scale=1.0, shuffle=True, random_state=None)[来源]#
生成一个随机的n类分类问题。
这最初创建了通常分布的点的簇(std=1),围绕一个
n_informative维超立方体的顶点,边长为2*class_sep,并将相等数量的簇分配给每个类。它引入了这些特征之间的相互依赖,并向数据添加了各种类型的进一步噪声。不进行洗牌,
X水平堆叠特征的顺序如下:主要的n_informative特征,接着是n_redundant个信息特征的线性组合,然后是n_repeated个重复项,从信息特征和冗余特征中随机抽取,并且允许替换。剩余的特征用随机噪声填充。因此,不进行洗牌的情况下,所有有用的特征都包含在列X[:, :n_informative + n_redundant + n_repeated]中。在用户指南中阅读更多内容。
- Parameters
n_samples (int, 可选 (默认=100)) – 样本数量。
n_features (int, 可选 (default=20)) – 特征的总数。这包括
n_informative有信息量的特征,n_redundant冗余特征,n_repeated重复特征和n_features-n_informative-n_redundant-n_repeated随机抽取的无用特征。n_informative (int, 可选的 (默认值=2)) – 信息特征的数量。每个类别由多个高斯聚类组成,每个聚类位于超立方体的顶点周围,位于维度为
n_informative的子空间中。对于每个聚类,信息特征是独立地从 N(0, 1) 中抽取的,然后在每个聚类内随机线性组合,以添加协方差。然后将聚类放置在超立方体的顶点上。n_redundant (int, 可选 (默认=2)) – 冗余特征的数量。这些特征作为信息特征的随机线性组合生成。
n_repeated (int, 可选 (默认=0)) – 复制特征的数量,从有信息量的特征和冗余特征中随机抽取。
n_classes (int, 可选 (默认=2)) – 分类问题的类别(或标签)数量。
n_clusters_per_class (int, 可选 (默认=2)) – 每个类别的聚类数量。
weights (list of floats or None (default=None)) – 分配给每个类别的样本比例。如果为None,则类别是平衡的。请注意,如果
len(weights) == n_classes - 1,那么最后一个类别的权重会自动推断。如果weights的总和超过 1,则可能返回超过n_samples的样本。flip_y (float, 可选 (默认值=0.01)) – 随机交换类别的样本比例。较大的值会引入标签中的噪声,使分类任务更加困难。
class_sep (float, 可选 (默认=1.0)) – 这个值是乘以超立方体大小的因子。较大的值会扩散聚类/类别,使分类任务更容易。
hypercube (boolean, 可选 (默认=True)) – 如果为True,簇将放在一个超立方体的顶点上。如果为False,簇将放在一个随机多面体的顶点上。
shift (float, array of shape [n_features] or None, optional (default=0.0)) – 按照指定的值平移特征。如果为 None,则特征会根据从 [-class_sep, class_sep] 中抽取的随机值进行平移。
scale (float, array of shape [n_features] or None, optional (default=1.0)) – 用指定的值乘以特征。如果是None,则特征将按随机值缩放,随机值范围在[1, 100]内。注意缩放发生在平移之后。
shuffle (boolean, 可选 (默认=True)) – 打乱样本和特征。
random_state (int, RandomState 实例 或 None(默认)) – 决定数据集创建时的随机数生成。传递一个整数以便在多个函数调用之间获得可重复的输出。 参见 术语表。
- Returns
X (形状为 [n_samples, n_features] 的张量) – 生成的样本。
y (形状为 [n_samples] 的张量) – 每个样本的类别成员的整数标签。
备注
该算法改编自Guyon [1],旨在生成 “Madelon” 数据集。
参考文献
- 1
I. Guyon,“NIPS 2003变量选择基准实验设计”,2003。
另请参阅
make_blobs简化变种
make_multilabel_classification与多标签任务无关的生成器