【问题标题】:Batch size, Epoch, and iteration in a many-to-one RNN多对一 RNN 中的批量大小、时期和迭代
【发布时间】:2018-04-19 07:46:03
【问题描述】:

当涉及到多对一 RNN 时,我无法主要定义批量大小。

我一直在看下面的文章:https://medium.com/@erikhallstrm/hello-world-rnn-83cd7105b767

这是在多对多 RNN 上,但批处理的定义仍然让我感到困惑。

多对一 RNN 的批量大小是多少?

这可能会回答我关于时代和迭代的另外两个困惑。

【问题讨论】:

    标签: tensorflow neural-network recurrent-neural-network


    【解决方案1】:

    在您链接的示例中,序列是形状为(N,) 的向量,因为序列包含N 二进制数。

    如果构成序列的项目不是数字,而是向量,则每个序列的形状为(N, item_size)

    RNN 同时并行处理多个序列。这就是我们所说的批处理。并行处理的序列数为batch_size,RNN 的输入形状为(batch_size, N)

    在多对一场景中,批量大小是相同的。唯一改变的是输出形状,因为不是产生大小为(batch_size, N) 的输出,而是(batch_size,)(或(batch_size, 1)),因为每个序列都将映射到单个输出。

    总而言之,batch size就是并行处理的序列数,所以多对多和多对一的情况没有区别。

    关于您对 epoch/iteration 的混淆,epoch 通常是指对整个训练数据集进行一次迭代,而 iteration 是指处理单个批次以执行一个 SGD一步。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-01-13
      • 2017-11-06
      • 1970-01-01
      • 2021-02-06
      • 2017-08-28
      • 2021-11-05
      • 2019-03-03
      • 2017-01-13
      相关资源
      最近更新 更多