【问题标题】:Is an output layer with 2 units and softmax ideal for binary classification using LSTM?具有 2 个单元和 softmax 的输出层是使用 LSTM 进行二进制分类的理想选择吗?
【发布时间】:2021-12-04 08:44:46
【问题描述】:

我正在使用 LSTM 进行二元分类,最初尝试了一个在输出(密集)层中具有 1 个单元的模型,并以 sigmoid 作为激活函数。 但是,它表现不佳,我看到一些笔记本在输出层(紧随 LSTM 之后的层)中使用了 2 个单元,并使用 softmax 作为激活函数。使用 2 个输出层并使用 softmax 而不是单个单元和 sigmoid(出于二进制分类的目的)有什么优势吗?我使用 binary_crossentropy 作为损失函数

【问题讨论】:

  • 你使用什么损失函数?
  • 两者在概率上都是正确的。
  • binary_crossentropy 是损失函数

标签: tensorflow keras deep-learning lstm recurrent-neural-network


【解决方案1】:

Softmax 应该优于 sigmoid,因为 sigmoid 的导数斜率几乎接近 1(梯度消失问题)。这使得分类变得困难。这可能是 softmax 比 sigmoid 表现更好的原因

【讨论】:

    猜你喜欢
    • 2018-01-29
    • 2021-05-02
    • 1970-01-01
    • 2019-06-11
    • 2020-12-20
    • 1970-01-01
    • 2020-07-20
    • 2020-07-20
    • 1970-01-01
    相关资源
    最近更新 更多