阅读(8.2k) 书签 (0)

LMDB文件读取器

2018-10-27 17:09 更新
函数:tf.LMDBReader

LMDBReader 类

继承自: ReaderBase

定义在:tensorflow/python/ops/io_ops.py.

从 LMDB 文件中输出记录的读取器.
有关支持的方法, 请参见 ReaderBase.

属性

  • reader_ref
    实现读取器(Reader)的操作.
  • supports_serialize
    读取器(Reader)实现是否可以序列化其状态.

方法

__init__

__init__(
    name=None,
    options=None
)

创建一个 LMDBReader.

参数:

  • name:操作的名称(可选).
  • options:一个 LMDBRecordOptions 对象(可选).

num_records_produced

num_records_produced(name=None)

返回此读取器生成的记录数.

这与已成功读取的执行次数相同.

参数:

  • name:操作的名称(可选).

返回值:

该方法返回一个 int64 类型的张量.

num_work_units_completed

num_work_units_completed(name=None)

返回读取器已完成处理的工作单位数.

参数:

  • name:操作的名称(可选).

返回值:

该方法返回一个 int64 类型的张量.

read

read(
    queue,
    name=None
)

返回读取器生成的下一条记录 (键值对).
如果需要,将从队列中出列一个工作单元 (例如,当读取器需要从一个新文件中开始读取,因为它已经完成了上一个文件).

参数:

  • queue:表示队列句柄的队列或可变的字符串张量,带有字符串工作项.
  • name:操作的名称(可选).

返回值:

该方法返回张量的元组  (key, value),其中 key 和 value 都为一个字符串标量张量.

read_up_to

read_up_to(
    queue,
    num_records,
    name=None
)

返回由读取器生成的 num_records(键值对).

如果需要,将从队列中出列一个工作单元(例如,当 Reader 需要从新文件开始读取,因为它已经完成了上一个文件).即使在最后一批之前,它也可能比 num_records 返回的少.

参数:

  • queue:表示队列句柄的队列或可变的字符串张量,带有字符串工作项.
  • num_records:要读取的记录数.
  • name:操作的名称(可选).

返回值:

该方法返回张量的元组  (key, value),其中 key 和 value 都为一个一维的字符串张量.

reset

reset(name=None)

将读取器还原到其初始状态.

参数:

  • name:操作的名称(可选).

返回值:

该方法返回您创建的操作.

restore_state

restore_state(
    state,
    name=None
)

将读取器还原到先前保存的状态.

并不是所有的读取器都支持被还原,所以这可能会产生未实现的错误.

参数:

  • state:字符串张量.具有匹配类型的读取器的 SerializeState 的结果.
  • name:操作的名称(可选).

返回值:

该方法返回您创建的操作.

serialize_state

serialize_state(name=None)

生成用于对读取器状态进行编码的字符串张量.
并非所有的读取器都支持序列化,因此这可能产生未实现的错误.

参数:

  • name:操作的名称(可选).

返回值:

返回一个字符串张量.