【发布时间】:2017-09-09 10:50:34
【问题描述】:
我们知道,对于二元分类模型中的不平衡数据,我们可以在 fit 方法中传递一个类权重字典。我的问题是,当输出层中仅使用 1 个节点进行 sigmoid 激活时,我们还能在训练期间应用类权重吗?
model = Sequential()
model.add(Dense(64, activation='tanh',input_shape=(len(x_train[0]),)))
model.add(Dense(1, activation='sigmoid'))
model.compile(
optimizer=optimizer,
loss=loss,
metrics=metrics)
model.fit(
x_train, y_train,
epochs=args.e,
batch_size=batch_size,
class_weight={0: 1, 1: 3})
【问题讨论】:
-
根据我后来的经验,答案是肯定的。无论我们使用哪个输出层,类权重始终可以应用于数据集。
-
据我了解,班级权重适用于真阳性和真阴性。是否还有一种方法可以赋予误报和误报权重,或者它们是相互依赖的?
-
@JieHE 感谢您的关注和评论。
标签: classification keras