小编DNN*_*RCH的帖子

为什么在每个 epoch 开始时训练损失会增加?

我正在训练一个线性回归模型。我使用 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()
Run Code Online (Sandbox Code Playgroud)

以下是我们的训练损失: 训练损失

很奇怪,在每个 epoch 开始时(迭代=100k),我们在训练损失中有一个脉冲。如果训练过程继续,我们会在接下来的 epoch 开始时看到相同的模式。

machine-learning tensorflow tensorflow-datasets

8
推荐指数
1
解决办法
3471
查看次数