five

TensorFlow Datasets

收藏
github2022-08-04 更新2024-05-31 收录
下载链接:
https://github.com/ageron/datasets
下载链接
链接失效反馈
官方服务:
资源简介:
TensorFlow数据集提供了许多公共数据集作为`tf.data.Datasets`。

TensorFlow数据集提供了众多公共数据集,并以其`tf.data.Datasets`的形式呈现。
创建时间:
2019-03-20
原始信息汇总

数据集概述

TensorFlow Datasets 提供了多种公共数据集,这些数据集可以通过 tf.data.Datasets 接口访问。

数据集列表

数据集使用示例

  • 使用 tensorflow_datasets 库加载和处理数据集的示例代码如下: python import tensorflow_datasets as tfds import tensorflow as tf

    tf.compat.v1.enable_eager_execution()

    print(tfds.list_builders())

    ds_train = tfds.load(name="mnist", split="train", shuffle_files=True) ds_train = ds_train.shuffle(1000).batch(128).prefetch(10) for features in ds_train.take(1): image, label = features["image"], features["label"]

数据集构建器 (DatasetBuilder)

  • 所有数据集都实现为 DatasetBuilder 的子类。
  • 使用 tfds.builder(mnist) 可以获取 DatasetBuilder 类。
  • 通过 mnist_builder.download_and_prepare() 下载并准备数据集。
  • 使用 mnist_builder.as_dataset(split=train) 构建 tf.data.Dataset

数据集信息 (DatasetInfo)

  • DatasetInfo 提供了数据集的详细信息,包括名称、版本、描述、主页、特征、总样本数、分割信息、监督键和引用。
  • 示例 mnist 数据集的特征包括 imagelabel,其中 image 的形状为 (28, 28, 1),label 为类别标签,有10个类别。

NumPy 使用

  • 使用 tfds.as_numpy 可以将 tf.data.Dataset 转换为生成 NumPy 数组的生成器。
  • 示例代码如下: python train_ds = tfds.load("mnist", split=tfds.Split.TRAIN) train_ds = train_ds.shuffle(1024).batch(128).repeat(5).prefetch(10) for example in tfds.as_numpy(train_ds): numpy_images, numpy_labels = example["image"], example["label"]

添加数据集

免责声明

  • TensorFlow Datasets 是一个下载和准备公共数据集的实用库,不负责数据集的质量、公平性或使用许可。
搜集汇总
数据集介绍
main_image_url
构建方式
TensorFlow Datasets的构建方式基于`tf.data.Datasets`框架,通过`DatasetBuilder`类实现。每个数据集都被封装为一个子类,开发者可以通过`tfds.load`方法便捷地加载数据集。数据集的下载与预处理通过`download_and_prepare`方法完成,确保了数据的完整性与一致性。此外,数据集版本控制与分割API的使用进一步增强了数据管理的灵活性。
特点
TensorFlow Datasets的特点在于其广泛覆盖的公共数据集,涵盖图像、文本、音频等多个领域。数据集以`tf.data.Dataset`格式提供,支持高效的数据流水线构建。每个数据集均附带详细的元信息,如特征描述、样本数量、分割信息等,便于开发者快速理解与使用。同时,数据集支持NumPy格式转换,为模型训练提供了更多灵活性。
使用方法
使用TensorFlow Datasets时,开发者可通过`pip install tensorflow-datasets`安装库,并利用`tfds.load`方法加载所需数据集。数据集的加载支持多种分割方式,如训练集、测试集等,并可结合`shuffle`、`batch`等操作构建高效的数据流水线。此外,`tfds.as_numpy`方法可将数据集转换为NumPy数组,便于与现有代码集成。开发者还可通过GitHub提交数据集请求,扩展数据集库的覆盖范围。
背景与挑战
背景概述
TensorFlow Datasets是由Google的TensorFlow团队开发的一个开源项目,旨在为机器学习和深度学习研究提供丰富且多样化的公共数据集。该项目自2018年推出以来,迅速成为学术界和工业界广泛使用的工具之一。TensorFlow Datasets的核心目标是通过标准化的数据加载和处理流程,简化研究人员和开发者在模型训练和评估中的数据准备工作。该数据集涵盖了从图像分类、自然语言处理到音频处理等多个领域,极大地推动了深度学习模型的研究与应用。其影响力不仅体现在数据集的多样性上,还体现在其与TensorFlow生态系统的无缝集成,使得用户可以轻松地将数据集应用于各种深度学习任务中。
当前挑战
TensorFlow Datasets在解决领域问题时面临的主要挑战包括数据集的多样性和质量保证。由于数据集来源广泛,如何确保数据的准确性、一致性和公平性成为一个重要问题。此外,数据集的使用许可和版权问题也需要用户在使用前进行仔细审查,以避免潜在的法律风险。在构建过程中,挑战主要体现在数据集的预处理和标准化上。由于不同数据集的格式和结构差异较大,如何高效地将这些数据集转换为统一的`tf.data.Dataset`格式,并确保其与TensorFlow框架的兼容性,是一个复杂且耗时的任务。此外,对于超大规模数据集(如超过100GiB的数据),如何优化数据加载和存储效率,也是构建过程中需要解决的关键问题。
常用场景
经典使用场景
TensorFlow Datasets 在机器学习和深度学习领域中,广泛应用于模型训练和评估。其经典使用场景包括图像分类、自然语言处理和语音识别等任务。例如,MNIST数据集常被用于手写数字识别的基准测试,而CIFAR-10数据集则用于图像分类模型的性能评估。通过提供标准化的数据加载和处理接口,TensorFlow Datasets极大地简化了数据预处理流程,使研究人员能够专注于模型设计和优化。
解决学术问题
TensorFlow Datasets 解决了学术研究中数据获取和预处理的难题。通过提供大量公开数据集,研究人员无需自行收集和清洗数据,从而节省了大量时间和资源。此外,数据集的标准格式和统一的API接口使得不同研究之间的结果具有可比性,促进了学术界的合作与交流。例如,使用TensorFlow Datasets中的ImageNet数据集,研究人员可以快速验证新提出的图像分类算法的有效性。
衍生相关工作
TensorFlow Datasets 的广泛应用催生了许多经典的研究工作。例如,基于MNIST数据集的研究推动了卷积神经网络(CNN)的发展;ImageNet数据集的使用则促进了深度残差网络(ResNet)等先进模型的诞生。此外,TensorFlow Datasets还激发了大量开源工具和框架的开发,如TensorFlow Extended(TFX)和TensorFlow Hub,这些工具进一步丰富了机器学习生态系统,推动了技术的普及和创新。
以上内容由遇见数据集搜集并总结生成
5,000+
优质数据集
54 个
任务类型
进入经典数据集
二维码
社区交流群

面向社区/商业的数据集话题

二维码
科研交流群

面向高校/科研机构的开源数据集话题

数据驱动未来

携手共赢发展

商业合作