【发布时间】:2021-07-29 18:17:12
【问题描述】:
我有一个带有 LSTM 的分类 (Keras),用于将 4 个属性标记为 2 个类(安全和不安全)的数据集。将 sigmoid 放在最后一层,我得到了 98% 的准确率,而不是 softmax。
我的问题是:
1)如果我在最后一层使用 Softmax:
在 Softmax 基于 2 个神经元作为其他代码末尾的输出,我可以比较分数并说出数据属于哪个。
例如 score_safe= 1.2945 和 score_unsafe= -9.0 那么我可以说这行数据集属于安全类。
2)如果我在最后一层使用 Sigmid:
然后我只需要将一个神经元作为输出,我如何比较分数以及如何判断这行数据集属于哪个类?
model = Sequential()
model.add(LSTM(256, input_shape=(x_train.shape[1:]), activation='tanh', return_sequences=True))
#model.add(BatchNormalization())
model.add(Dense(128, activation='tanh'))
#model.add(BatchNormalization())
model.add(Dense(128, activation='tanh'))
model.add(Dense(1, activation='sigmoid'))
【问题讨论】:
标签: python keras deep-learning softmax sigmoid