数据集 sklearn 中的类别/标签fetch_20newsgroups



我正在研究聚类主题,遵循scikit-learn示例:

我不明白"类别"和"标签"有什么区别。

在这种情况下,数据集是从下载中给出的:

dataset = fetch_20newsgroups(subset='all', categories=categories,
                             shuffle=True, random_state=42) 

但我不明白为什么要写这个类别

categories = [
'alt.atheism',
'talk.religion.misc',
'comp.graphics',
'sci.space',

在示例中,它被提及为"从训练集中获取",但火车集在哪里?

labels = dataset.target

我不明白为什么我们需要分开的类别和标签。

顺便说一句,我在这里找到了这个数据集的资源,似乎它分为

  • 火车数据
  • 火车标签
  • 火车地图
  • 测试数据
  • 测试标签
  • 测试地图

所以我想在写的时候

dataset.data

它给出了一个稀疏矩阵)。

所以我的问题是,如何选择类别和标签? 如果我没有像此示例中这样的数据集,我需要任意选择?

很抱歉我的问题,但我试图以正确的方式理解这个例子。

首先,指定类别以筛选原始数据集中的记录。 假设我们仅使用过滤器即可获得 1200 篇文章。默认情况下,原始数据集有 20 个类别。如果我们不指定类别,它会将所有类别的所有文章拉入数据集。

'alt.atheism',
'talk.religion.misc',
'comp.graphics',
'sci.space',

而 dataset.target 用于从数据集中获取每篇文章的标签,我们在上一步中已对其进行过滤。

labels = dataset.target

标签的大小为 1200,每个值表示每篇文章所属的类别。

你只能得到选择类别。每篇文章都已经存在标签,因此我们不必在这里扮演角色。

dataset.target_names会给出标签和类别之间的映射,这意味着标签中的 0,1,2 表示哪个类别。

相关内容

  • 没有找到相关文章

最新更新