申请专栏作者 参展
投稿发布
您的当前位置:主页 > 机器学习 > 正文

谷歌开源机器学习数据集,可在TensorFlow直接调用

来源: 时间:2019-03-01
请支持本站,点击下面的广告后浏览!

  可思数据-AI,sykv.com智能驾驶,人脸识别,区块链,大数据

吴恩达说过,公共数据集为机器学习研究这枚火箭提供了动力,但将这些数据集放入机器学习管道就已经够难的了。编写供下载的一次性脚本,准备他们要用的源格式和复杂性不一的数据集,相信这种痛苦每个程序员都有过切身体会。 可思数据-人工智能资讯平台sykv.com

但现在,你再也不会被这种痛苦困扰了。谷歌今天开源了一个机器学习数据集,可在 TensorFlow 直接调用,这为开发人员省去了不少麻烦。

可思数据sykv.com,sykv.cn

照例先放数据集: 可思数据-数据挖掘,智慧医疗,机器视觉,机器人sykv.com

GitHub:https://github.com/tensorflow/datasets

可思数据sykv.com,sykv.cn

今天,我们很高兴地推出 TensorFlow 数据集,它将作为tf.data.Datasets和 NumPy 数组向公众开放。它可以完成从获取源数据,到准备磁盘上的通用格式的所有琐碎工作,并使用tf.data API构建高性能输入管道,这些管道支持 TensorFlow 2.0,并可与 tf.keras 模型一起使用。我们推出了 29 个流行的研究数据集,如 MNIST、Street View House Numbers、包含 10 亿数据的语言模型基准和大型电影评论数据集,并将在未来几个月推出更多数据集;我们也希望你可以加入并贡献数据集。

可思数据sykv.com,sykv.cn

tl;dr 可思数据-www.sykv.cn,sykv.com

# Install: pip install tensorflow-datasets
import tensorflow_datasets as tfds
mnist_data = tfds.load("mnist")
mnist_train, mnist_test = mnist_data["train"], mnist_data["test"]
assert isinstance(mnist_train, tf.data.Dataset)

内容来自可思数据sykv.com

在 Colab notebook 上试试 tfds。 可思数据-www.sykv.cn,sykv.com

tfds.load和DatasetBuilder 可思数据sykv.com

每个数据集都作为 DatasetBuilder 公开,它会告诉你:

可思数据-www.sykv.cn,sykv.com

从哪里下载数据以及如何提取数据并将其写入标准格式(DatasetBuilder.download_and_prepare)。 可思数据-人工智能资讯平台sykv.com

如何从磁盘加载它(DatasetBuilder.as_dataset)。

可思数据-AI,sykv.com智能驾驶,人脸识别,区块链,大数据

以及有关数据集的所有信息,例如所有要素的名称、类型和形状,每个拆分中的记录数、源 URL、数据集或相关论文的引用等(DatasetBuilder.info)。 可思数据sykv.com,sykv.cn

你可以直接对所有 DatasetBuilders 进行实例化或使用 tfds.builder 字符串获取: 可思数据sykv.com

import tensorflow_datasets as tfds

可思数据sykv.com,sykv.cn

# Fetch the dataset directly
mnist = tfds.image.MNIST()
# or by string name
mnist = tfds.builder('mnist')

可思数据sykv.com

# Describe the dataset with DatasetInfo
assert mnist.info.features['image'].shape == (28, 28, 1)
assert mnist.info.features['label'].num_classes == 10
assert mnist.info.splits['train'].num_examples == 60000 内容来自可思数据sykv.com

# Download the data, prepare it, and write it to disk
mnist.download_and_prepare() 可思数据-AI,sykv.com人工智能,深度学习,机器学习,神经网络

# Load data from disk as tf.data.Datasets
datasets = mnist.as_dataset()
train_dataset, test_dataset = datasets['train'], datasets['test']
assert isinstance(train_dataset, tf.data.Dataset)

可思数据-AI,sykv.com人工智能,深度学习,机器学习,神经网络

# And convert the Dataset to NumPy arrays if you'd like
for example in tfds.as_numpy(train_dataset):
image, label = example['image'], example['label']
assert isinstance(image, np.array)

可思数据-www.sykv.cn,sykv.com

as_dataset()接受一个 batch_size 参数,它将提供批量示例,而不是一次一个示例。对于适合内存的小型数据集,你可以用 batch_size = -1 立即获取整个数据集作为 tf.Tensor。使用tfds.as_numpy()可以轻松地将所有 tf.data.Datasets 转换为 NumPy 数组的参数。 可思数据sykv.com

为方便起见,你可以使用tfds.load执行以上所有操作,tfds.load 按名称获取 DatasetBuilder,调用 download_and_prepare()以及 as_dataset()。

可思数据sykv.com,sykv.cn

import tensorflow_datasets as tfds

内容来自可思数据sykv.com

datasets = tfds.load("mnist")
train_dataset, test_dataset = datasets["train"], datasets["test"]
assert isinstance(train_dataset, tf.data.Dataset) 内容来自可思数据sykv.com

你也可以通过传递 with_info = True 轻松地从 tfds.load 获取DatasetInfo 对象。有关所有选项,请参阅API 文档。 可思数据-人工智能资讯平台sykv.com

数据集版本管理 可思数据sykv.com,sykv.cn

每个数据集都是版本化的(builder.info.version),你大可放心,数据不会随意发生变化,且结果是可重现的。目前,我们保证如果数据发生变化,将增加版本。 本文来自可思数据(sykv.com),转载请联系本站及注明出处

请注意,尽管目前我们保证给定同一版本下的数据值和拆分是相同的,但不保证对同一版本的记录进行排序。

可思数据sykv.com,sykv.cn

数据集配置 可思数据sykv.com,sykv.cn

具有不同变体的数据集使用命名的 BuilderConfigs 进行配置。例如,大型电影评论数据集 (tfds.text.IMDBReviews ) 不同的输入可能有不同的编码(例如,纯文本、字符编码或子词编码)。内置配置与数据集文档一起列出,可以通过字符串进行寻址,也可以传入你自己的配置。 内容来自可思数据sykv.com

# See the built-in configs
configs = tfds.text.IMDBReviews.builder_configs
assert "bytes" in configs

可思数据sykv.com

# Address a built-in config with tfds.builder
imdb = tfds.builder("imdb_reviews/bytes")
# or when constructing the builder directly
imdb = tfds.text.IMDBReviews(config="bytes")
# or use your own custom configuration
my_encoder = tfds.features.text.ByteTextEncoder(additional_tokens=['hello'])
my_config = tfds.text.IMDBReviewsConfig(
name="my_config",
version="1.0.0",
text_encoder_config=tfds.features.text.TextEncoderConfig(encoder=my_encoder),
)
imdb = tfds.text.IMDBReviews(config=my_config) 可思数据-人工智能资讯平台sykv.com

请参阅有关添加数据集的文档中有关数据集配置的部分。

可思数据-数据挖掘,智慧医疗,机器视觉,机器人sykv.com

文本数据集和词汇表

本文来自可思数据(sykv.com),转载请联系本站及注明出处

由于编码和词汇文件不同,文本数据集通常很难处理。tensorflow-datasets 让这一过程变得更简单。它包含许多文本任务,包括三种 TextEncoders,且都支持 Unicode:

可思数据-人工智能资讯平台sykv.com

ByteTextEncoder 用于字节 / 字符级编码

可思数据-www.sykv.cn,sykv.com

TokenTextEncoder 用于基于词汇表文件的单词级编码 可思数据sykv.com

SubwordTextEncoder 用于子词级编码(以及针对特定文本语料库创建子词词汇的能力),可以字节级回退,因此它是完全可逆的。例如,“hello world”可以拆分为 [“he”,“llo”,“”,“wor”,“ld”],然后进行整数编码。子词是词级和字节级编码之间的媒介,在一些自然语言研究项目中很受欢迎。

可思数据sykv.com,sykv.cn

可以通过 DatasetInfo 访问编码器及其词汇表大小: 可思数据sykv.com

imdb = tfds.builder("imdb_reviews/subwords8k")

可思数据sykv.com,sykv.cn

# Get the TextEncoder from DatasetInfo
encoder = imdb.info.features["text"].encoder
assert isinstance(encoder, tfds.features.text.SubwordTextEncoder)

可思数据sykv.com,sykv.cn

# Encode, decode
ids = encoder.encode("Hello world")
assert encoder.decode(ids) == "Hello world" 可思数据sykv.com,sykv.cn

# Get the vocabulary size
vocab_size = encoder.vocab_size

可思数据-数据挖掘,智慧医疗,机器视觉,机器人sykv.com

TensorFlow 和 TensorFlow 数据集都将在未来进一步改进文本支持。 可思数据sykv.com,sykv.cn

入门

内容来自可思数据sykv.com

我们的文档站点是开始使用 tensorflow 数据集的最佳位置。以下是一些入门指南: 可思数据-AI,sykv.com人工智能,深度学习,机器学习,神经网络

数据集页面

内容来自可思数据sykv.com

API 文档

内容来自可思数据sykv.com

Colab 教程

内容来自可思数据sykv.com

如何添加数据集 可思数据-人工智能资讯平台sykv.com

GitHub

可思数据-人工智能资讯平台sykv.com

我们将在未来几个月内添加更多数据集,并希望社区能够加入。如果你需要什么数据集,请在 GitHub 创建话题,我们将对下一步应添加的数据集进行投票,讨论实施细节或寻求帮助。非常欢迎 Pull Requests!人人献出一点数据集,让社区变得更美好,把你的数据集贡献给 TFDS 声名大噪吧! 可思数据-AI,sykv.com人工智能,深度学习,机器学习,神经网络

当获取数据变得简单,我们就能快乐地建模!

可思数据-人工智能资讯平台sykv.com

原文链接: 可思数据-AI,sykv.com智能驾驶,人脸识别,区块链,大数据

https://medium.com/tensorflow/introducing-tensorflow-datasets-c7f01f7e19f3

本文来自可思数据(sykv.com),转载请联系本站及注明出处


转发量:

网友评论:

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片

关于我们   免责声明   广告合作   版权声明   联系方式   原创投稿   网站地图  

Copyright©2005-2019 Sykv.com 可思数据 版权所有    ICP备案:京ICP备14056871号

人工智能资讯   人工智能资讯   人工智能资讯   人工智能资讯

扫码入群
咨询反馈
扫码关注

微信公众号

返回顶部
关闭