我正在训练一个线性回归模型。我使用 tf.contrib.data 来准备数据集,将其打乱并分批提供:
dataset = tf.contrib.data.TFRecordDataset(filename)
dataset = dataset.map(
_parse_function, num_threads=16, output_buffer_size=100 * batch_size)
dataset = dataset.repeat(5)
dataset = dataset.shuffle(buffer_size=100000)
dataset = dataset.padded_batch(batch_size, padded_shapes=([None], [None]))
iterator = dataset.make_initializable_iterator()
x_inputs, y_ = iterator.get_next()
以下是我们的训练损失:
非常奇怪的是,在每个 epoch(迭代 = 100k)开始时,我们在训练损失中都有一个脉冲。如果训练过程继续进行,我们会在接下来的 epoch 开始时看到相同的模式。