我使用二进制数据来训练DNN.
但tf.train.shuffle_batch和tf.train.batch让我迷惑.
这是我的代码,我会对它进行一些测试.
第一Using_Queues_Lib.py:
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import os
from six.moves import xrange # pylint: disable=redefined-builtin
import tensorflow as tf
NUM_EXAMPLES_PER_EPOCH_FOR_TRAIN = 100
REAL32_BYTES=4
def read_dataset(filename_queue,data_length,label_length):
class Record(object):
pass
result = Record()
result_data = data_length*REAL32_BYTES
result_label = label_length*REAL32_BYTES
record_bytes = result_data + result_label
reader = tf.FixedLengthRecordReader(record_bytes=record_bytes)
result.key, value = reader.read(filename_queue)
record_bytes = tf.decode_raw(value, tf.float32)
result.data = tf.strided_slice(record_bytes, [0],[data_length])#record_bytes: tf.float list
result.label = tf.strided_slice(record_bytes, …Run Code Online (Sandbox Code Playgroud) 我正在尝试按照本教程https://towardsdatascience.com/how-to-train-your-own-object-detector-with-tensorflows-object-detector-api-bec72ecfe1d9在 tensorflow 上使用 API 检测。但是有一些细节我不明白。
首先,我不明白配置文件中的一些评估参数。“num reader”和“max_evals”参数。“Max evals”似乎是对数据集的评估次数,但为什么默认情况下它不是 1?因为我们只需要测试一次检查点(或者我错了?)。关于训练,数据是自动洗牌的吗?
其次,我想知道我们是否可以使用 tensorboard 以便在使用 API 检测的训练期间在图像中显示框。如果是,获得它的步骤是什么?