Keras loss调试记录

最近尝试使用序列模型LSTM进行文本分类,数据集为入侵检测用的ADWA-LD数据集。

0x01 初始loss

最开始试运行模型时loss一直稳定为0.46,无论训练多少个epoch都不改变。下图为一开始使用的模型

def get_lstm_model(max_features, embed_size):
    model = Sequential()
    model.add(Embedding(max_features, embed_size))
    model.add(Bidirectional(LSTM(32, recurrent_dropout=0.1)))
    model.add(Dense(64)
    model.add(Dense(7))
    model.add(Activation('sigmond'))
    model.summary()

    adam = Adam(0.01)
    model.compile(optimizer=adam, loss='categorical_crossentropy', metrics=['accuracy'])

    return model

1.检查网络后发现最后的激活层存在问题,由于是多分类问题,因此需要采用softmax作为激活层。

2.全连接层要指定激活函数,确保梯度问题

0x02 第二次改进

改进后的模型如下, 改进后模型的loss开始产生变化,但准确度在0.6左右

def get_lstm_model(max_features, embed_size):
    model = Sequential()
    model.add(E
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值