Tensorflow Slim 中DatasetProvider 的定义

    上文记录了slim中的Dataset的定义,而要从其中读取数据则需要slim中DataProvider类。

DatasetProviders 可以从datasets中读取数据。并且可以配置为多个阅读器或者单个阅读器,另外设置为乱序方式读取数据。

DatasetProviders 定义需要的参数如下:

DatasetDataProvider(dataset,
               num_readers=1,
               reader_kwargs=None,
               shuffle=True,
               num_epochs=None,
               common_queue_capacity=256,
               common_queue_min=128,
               record_key='record_key',
               seed=None,

               scope=None)

参数说明如下:

dataset:Dataset 类实例

num_readers:并行阅读器数量

reader_kwargs=None:阅读器关键配置字典

shuffle:是否打乱

num_epochs:每个数据源被读取的次数,如果设为None数据将会被无限循环的读取

 common_queue_capacity:读取数据队列的容量,默认为256

common_queue_min:读取数据队列的最小容量

record_key:(不是很理解)
seed=None:打乱是的种子

scope=None:范围

使用方法如下:

pascal_voc_data_provider = DatasetDataProvider(
      slim.datasets.pascal_voc.Dataset(),
      num_readers=10,
      shuffle=True)
  images, labels = pascal_voc_data_provider.get(['images', 'labels'])

你可能感兴趣的:(Deep,learning)