【问题标题】:TF2 confused about step numbers in LSTM NetworkTF2 对 LSTM 网络中的步数感到困惑
【发布时间】:2020-11-03 13:18:06
【问题描述】:

我目前正在尝试使用我自己的数据集从this 实施身份验证网络。

This is my colab notebook

它正在“工作”(数据集大小仍然太小而无法进行任何有意义的测试),但我对某些事情感到困惑。

输入的形状为 (482, 12, 128, 1)。 482个样本量,12个传感器,128是信号长度,1个通道

所以我希望有这样的东西:

Epoch 1/10
X/482 [===...

在训练中,或者 X/batch_size(我现在还没有指定)。

但它是 X/16。 现在 16 是 LSTM 的序列长度(我在 LSTM 有一个序列的 16 个输入,每个输入有 128 个值)

这是怎么回事?

【问题讨论】:

    标签: python tensorflow keras deep-learning tensorflow2.0


    【解决方案1】:

    当您调用 model.fit() 而不指定 batch_size 参数时,它默认为 32。

    batch_size: 整数或无。每次梯度更新的样本数。如果未指定,batch_size 将默认为 32。如果您的数据是数据集、生成器或 keras.utils.Sequence 实例的形式(因为它们会生成批次),请不要指定 batch_size。

    如果您将样本数量分成 32 个批次,则需要 16 个批次(15 个完整批次,1 个部分批次)。

    482/32 = 15.0625
    

    所以它需要 16 个批次才能完成 1 个 epoch,这就是为什么您看到进度为 X/16

    【讨论】:

    • 啊,说得有道理。与 LSTM 中序列长度的相似性让我很反感,我担心我做错了什么。非常感谢:)
    猜你喜欢
    • 1970-01-01
    • 2021-01-09
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 1970-01-01
    • 2021-12-31
    • 2021-11-28
    相关资源
    最近更新 更多