数据流
tflearn.data_flow.DataFlow (coord, num_threads=8, max_queue=32, shuffle=False, continuous=False, ensure_data_order=False, dprep_dict=None, daug_dict=None)
用于实时预处理和控制数据流的基类。 支持流水线操作以加快计算速度。
参数
- coord:
Coordinator
。 一个Tensorflow协调器。 - num_threads:
int
。 同时处理数据的线程总数。 - max_queue:
int
。 队列中存储的最大数据量。 - shuffle:
bool
。 如果为True,则数据将被随机打乱。 - continuous:
bool
。 如果为True,则在一个时期结束后,将再次馈送相同的数据。 - ensure_data_order:
bool
。 确保在使用“next”检索数据时保持数据顺序(处理速度会变慢)。 - dprep_dict: dict。 用于执行实时数据预处理的可选数据预处理参数。 键必须是占位符,值是
DataPreprocessing
子类对象。 - daug_dict: dict。 用于执行实时数据增强的可选数据增强参数。 键必须是占位符,值是
DataAugmentation
子类对象。
FeedDictFlow
tflearn.data_flow.FeedDictFlow (feed_dict, coord, batch_size=128, num_threads=8, max_queue=32, shuffle=False, continuous=False, ensure_data_order=False, dprep_dict=None, daug_dict=None, index_array=None)
从数据集中生成批次流。 它使用两个队列,一个用于生成数据ID批次,另一个用于加载数据并应用预处理。 如果continuous为True
,则数据流将永远不会结束,直到调用stop
或coord
中断线程。
参数
- feed_dict:
dict
。 TensorFlow格式的feed字典(以占位符作为键,以数据作为值)。 - coord:
Coordinator
。 一个Tensorflow协调器。 - num_threads:
int
。 同时处理数据的线程总数。 - max_queue:
int
。 队列中存储的最大数据量。 - shuffle:
bool
。 如果为True,则数据将被随机打乱。 - continuous:
bool
。 如果为True,则在一个时期结束后,将再次馈送相同的数据。 - ensure_data_order:
bool
。 确保在使用“next”检索数据时保持数据顺序(处理速度会变慢)。 - dprep_dict: dict。 用于执行实时数据预处理的可选数据预处理参数。 键必须是占位符,值是
DataPreprocessing
子类对象。 - daug_dict: dict。 用于执行实时数据增强的可选数据增强参数。 键必须是占位符,值是
DataAugmentation
子类对象。 - index_array:
list
。 可选的索引列表,用于代替使用整个数据集索引(对验证集分割很有用)。
方法
next (timeout=None)
获取下一个feed字典。
返回值
一个TensorFlow feed字典,如果没有更多数据,则返回“False”。
start (reset_status=True)
参数
- reset_status:
bool
。 如果为True,则DataStatus
将被重置。
返回值
ArrayFlow
tflearn.data_flow.ArrayFlow (X, Y, multi_inputs=False, batch_size=32, shuffle=True)
将数组样本转换为张量并将它们存储在队列中。
参数
- X:
array
。 特征数据数组。 - Y:
array
。 目标数据数组。 - multi_inputs:
bool
。 如果X有多个输入源(即X是数组列表),则设置为True。 - batch_size:
int
。 批次大小。 - shuffle:
bool
。 如果为True,则数据将被随机打乱。
返回值
X
和Y
数据张量,如果multi_inputs为True,则为列表(X
)和Y
数据张量。