首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Y来自sklearn.datasets.make_classification

Y来自sklearn.datasets.make_classification
EN

Stack Overflow用户
提问于 2013-08-15 18:37:15
回答 1查看 8.3K关注 0票数 5

在sklearn.datasets.make_classification中,y类是如何计算的?假设我查了他的:

代码语言:javascript
复制
from sklearn.datasets import make_classification
X, y = make_classification(n_samples=1000, n_features=2, n_informative=2,
                           n_classes=2, n_clusters_per_class=1, random_state=0)

从X中得到y的公式是什么?这些文档在谈到信息丰富的特性时会涉及到这一点:

信息功能的数量。每个类由多个高斯簇组成,每个簇位于维数n_informative的子空间中的超立方体的顶点周围。对于每个簇,信息特征独立于N(0,1),然后随机线性组合以添加协方差。然后将这些簇放在超立方体的顶点上。

谢谢,

G

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-08-19 14:09:23

不计算y,只是X中的每一行都根据行所在的类在y中得到一个关联的标签(注意n_classes变量)。如果flip_y大于零,这些标签中的一些可能会被翻转,从而在标签中产生噪音。

编辑:给出一个例子

例如,假设您需要2个类、1个信息特性和4个数据点。假设随机生成两个类质心,它们恰好是1.0和3.0。因此,在第一个类(值为1.0)周围生成的每个数据点都得到标签y=0,而在第二个类(值3.0)周围生成的每个数据点都得到标签y=1。例如,第一个类的X1可能恰好是1.2和0.7。对于第二类,这两点可能是2.8和3.1。现在您有了4个数据点,并且您知道它们是为哪个类生成的,所以您的最终数据将是:

代码语言:javascript
复制
Y X1
0 1.2
0 0.7
1 2.8
1 3.1

正如您所看到的,没有任何计算,您只需在随机生成数据时分配类。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18259372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档