此页面由 Cloud Translation API 翻译。
Switch to English

tfds.core.GeneratorBasedBuilder

GitHub上查看源代码

基类基于字典发电机,数据生成的数据集。

GeneratorBasedBuilder是一个方便的类,它抽象了许多数据写入和读取的DatasetBuilder 。该公司预计子类在整个数据集拆分实现功能的字典生成_split_generators 。详情请参阅方法文档字符串。

data_dir str ,目录读/写数据。默认为环境变量TFDS_DATA_DIR的值,如果设置,否则退回到“〜/ tensorflow_datasets”。
config tfds.core.BuilderConfigstr名称,它影响在磁盘上所产生数据的数据集的可选配置。不同builder_config旨意有自己的子目录和版本。
version str 。可选版本,在其中加载的数据集。引发一个错误,如果指定的版本不能满足。例如: '1.2.3', '1.2 *'。特殊值“experimental_latest”将使用最高版本,即使不违约。这是不推荐,除非你知道自己在做什么,作为版本可能被打破。

builder_config tfds.core.BuilderConfig此建设者。
canonical_version

data_dir

info tfds.core.DatasetInfo此建设者。
supported_versions

version

versions 版本(规范+可获取的),在优先顺序。

方法

as_dataset

查看源代码

构造一个tf.data.Dataset

调用者必须传递参数作为关键字参数。

输出类型取决于参数。例子:

 builder = tfds.builder('imdb_reviews')
builder.download_and_prepare()

# Default parameters: Returns the dict of tf.data.Dataset
ds_all_dict = builder.as_dataset()
assert isinstance(ds_all_dict, dict)
print(ds_all_dict.keys())  # ==> ['test', 'train', 'unsupervised']

assert isinstance(ds_all_dict['test'], tf.data.Dataset)
# Each dataset (test, train, unsup.) consists of dictionaries
# {'label': <tf.Tensor: .. dtype=int64, numpy=1>,
#  'text': <tf.Tensor: .. dtype=string, numpy=b"I've watched the movie ..">}
# {'label': <tf.Tensor: .. dtype=int64, numpy=1>,
#  'text': <tf.Tensor: .. dtype=string, numpy=b'If you love Japanese ..'>}

# With as_supervised: tf.data.Dataset only contains (feature, label) tuples
ds_all_supervised = builder.as_dataset(as_supervised=True)
assert isinstance(ds_all_supervised, dict)
print(ds_all_supervised.keys())  # ==> ['test', 'train', 'unsupervised']

assert isinstance(ds_all_supervised['test'], tf.data.Dataset)
# Each dataset (test, train, unsup.) consists of tuples (text, label)
# (<tf.Tensor: ... dtype=string, numpy=b"I've watched the movie ..">,
#  <tf.Tensor: ... dtype=int64, numpy=1>)
# (<tf.Tensor: ... dtype=string, numpy=b"If you love Japanese ..">,
#  <tf.Tensor: ... dtype=int64, numpy=1>)

# Same as above plus requesting a particular split
ds_test_supervised = builder.as_dataset(as_supervised=True, split='test')
assert isinstance(ds_test_supervised, tf.data.Dataset)
# The dataset consists of tuples (text, label)
# (<tf.Tensor: ... dtype=string, numpy=b"I've watched the movie ..">,
#  <tf.Tensor: ... dtype=int64, numpy=1>)
# (<tf.Tensor: ... dtype=string, numpy=b"If you love Japanese ..">,
#  <tf.Tensor: ... dtype=int64, numpy=1>)
 

ARGS
split 该数据到负载(例如分裂'train''test' ['train', 'test'] 'train[80%:]' ,...)。请参阅我们的分裂API指南 。如果None ,将返回所有分裂的Dict[Split, tf.data.Dataset]
batch_size int ,批量大小。注意,可变长度特征将是如果0填充batch_size被设置。希望更多的自定义行为的用户应使用batch_size=None和使用tf.data API来构建自定义管道。如果batch_size == -1 ,将返回整个数据集的特征字典tf.Tensor S的替代tf.data.Dataset
shuffle_files bool ,是否洗牌输入文件。默认为False
decoders 的嵌套字典Decoder对象,其允许自定义解码。结构应符合功能结构,但只有定制的功能键需要存在。见导向以获得更多信息。
read_config tfds.ReadConfig ,额外的选项来配置输入管道(例如种子,NUM并行读取,...)。
as_supervised bool ,如果True ,则返回tf.data.Dataset将具有2元组结构(input, label)根据builder.info.supervised_keys 。如果False ,默认值,则返回tf.data.Dataset将与所有功能的字典。

返回
tf.data.Dataset ,或者如果split=Nonedict<key: tfds.Split, value: tfds.data.Dataset>

如果batch_size为-1,将返回包含在整个数据集功能字典tf.Tensor S的替代tf.data.Dataset

download_and_prepare

查看源代码

下载和阅读准备的数据集。

ARGS
download_dir str ,目录,下载文件的存储。默认为“〜/ tensorflow资料集/下载”。
download_config tfds.download.DownloadConfig ,用于下载和准备数据集进一步配置。

加薪
IOError 如果没有足够的可用磁盘空间。

类变量

  • BUILDER_CONFIGS
  • IN_DEVELOPMENT = False
  • MANUAL_DOWNLOAD_INSTRUCTIONS = None
  • SUPPORTED_VERSIONS
  • VERSION = None
  • builder_configs
  • name = 'generator_based_builder'