为什么无论什么情况,该模型的准确性和f1分数都相同?

时间:2018-11-22 03:42:05

标签: python pandas machine-learning scikit-learn keras

在进行了一些数据整理之后,我得到了一些变量,这些变量要么是标记为0或1的分类变量,要么是数值变量,这些变量已被标准化为0.0到1.0的值。然后在这里定义和运行模型:

def baseline_model():
    # create model
    model = Sequential()
    model.add(Dense(8, input_dim=6, activation='relu'))
    model.add(Dense(2, activation='softmax'))
    # Compile model
    model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
    return model

# Fit the model
estimator = KerasClassifier(build_fn=baseline_model, nb_epoch=200, batch_size=10, verbose=0)

kfold = KFold(n_splits=5, shuffle=True, random_state=seed)
results = cross_val_score(estimator, X, Y, cv=kfold, scoring="f1_macro")
print("\nF1 score: %.2f%% (%.2f%%)" % (results.mean()*100, results.std()*100))

但是,无论我加入X的哪些功能或其中多少功能,F1得分始终为49.79%

编辑:我也用不同的优化器进行了测试,但结果仍然相同

0 个答案:

没有答案