深度学习分类类别不平衡_Keras中类不平衡多类分类器的损失函数

我试图将深度学习应用到一个目标班(10万、500万、90万、30万)之间的高班级不平衡的多班级分类问题上。我想写一个自定义丢失函数。

这是我目前的型号:

model = Sequential()

model.add(LSTM(

units=10, # number of units returned by LSTM

return_sequences=True,

input_shape=(timestamps,nb_features),

dropout=0.2,

recurrent_dropout=0.2

)

)

model.add(TimeDistributed(Dense(1)))

model.add(Dropout(0.2))

model.add(Flatten())

model.add(Dense(units=nb_classes,

activation='softmax'))

model.compile(loss="categorical_crossentropy",

metrics = ['accuracy'],

optimizer='adadelta')

不幸的是,所有预测都属于1类!!!!模型总是预测任何输入为1…

感谢任何关于我如何解决这个任务的建议。

更新:

输入数据的尺寸:

94981 train sequences

29494 test sequences

X_train shape: (94981, 20, 18)

X_test shape: (29494, 20, 18)

y_train shape: (94981, 4)

y_test shape: (29494, 4)

基本上在列车数据中,我有94981个样本。每个样本包含一个20个时间戳的序列。共有18个功能。

目标等级(10K、500K、90K、30K)之间的不平衡就是一个例子。我在我的真实数据集中有相似的比例。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值