繁体   English   中英

访问从 tensorflow_datasets 加载的 CIFAR-100 中的“coarse_label”

[英]Access 'coarse_label' in CIFAR-100 loaded from tensorflow_datasets

我正在使用 tensorflow_datasets (tfds doc)加载 CIFAR-100

train, test = tfds.load(name="cifar100:3.*.*", split=["train", "test"], as_supervised=True)

CIFAR-100 既有 label(100 个类)和一个粗略标签(20 个类),如上面链接的文档中所示。 访问 label 很容易,例如:

for image, label in train:
     # ... the label here is the actual label, not the coarse_label

但是,我计划基于粗略标签进行操作,例如,通过它进行过滤或将其用作 Keras 分类器中的 label。

如何访问粗略标签?

我找到了解决方案。 如果我不按监督方式加载,即如果我删除as_supervised=True

train, test = tfds.load(name="cifar100:3.*.*", split=["train", "test"])

,我可以从字典中获取粗略标签,例如

for item in train:
   print(item['coarse_label'])

像这样,我将能够重塑数据集,粗标签可用于分类。 但是,即使我对标签感兴趣,我也必须加载as_supervised=False对我来说仍然看起来很不自然。 如果有人有更好的解决方案,我很乐意接受这个答案。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM