如何正确结合 LSTM 与线性层

青葱年少 pytorch 435

原文标题How to correctly combine LSTM with Linear layer

我得到了LSTM,它给了我输出(4,32,32)我将它传递给线性层(LSTM的隐藏大小,num_classes = 1)它给了我一个输出形状(4,32,1)。我正在尝试为我的 AI 助手解决唤醒词模型。我有 2 个要预测的类。0 不是唤醒,1 是唤醒 AI。我的批量大小是 32。但输出是 (4,32,1 )。它不应该是 32,1 或类似的东西,所以我会知道 1 个音频 mfcc 有一个预测?

原文链接:https://stackoverflow.com//questions/71566905/how-to-correctly-combine-lstm-with-linear-layer

回复

我来回复
  • PJMan0300的头像
    PJMan0300 评论

    不完全的。您需要将数据重塑为 (32, 1) 或 (1, 32) 才能使您的线性层正常工作。您可以通过使用torch.unsqueeze()或直接使用torch.view()添加维度来实现此目的。如果你使用 unsqueeze 函数,新的形状应该是 (32, 1)。如果使用视图函数,新的形状应该是 (1, 32)。

    2年前 0条评论