Python KFold验证中的ROC AUC度量
在进行KFold验证时,使用ROC/AUC作为Keras指标而不是“准确度”的最佳方法是什么?我试着用“roc_曲线”和“auc”替换“准确性”,但这不起作用 另外:如何访问“cross_val_score()”循环以绘制ROC曲线 这是我的密码:Python KFold验证中的ROC AUC度量,python,scikit-learn,keras,cross-validation,roc,Python,Scikit Learn,Keras,Cross Validation,Roc,在进行KFold验证时,使用ROC/AUC作为Keras指标而不是“准确度”的最佳方法是什么?我试着用“roc_曲线”和“auc”替换“准确性”,但这不起作用 另外:如何访问“cross_val_score()”循环以绘制ROC曲线 这是我的密码: X = X.values Y = Y.values def create_baseline(): model = Sequential() model.add(Dense(82, input_dim=82, kernel_initi
X = X.values
Y = Y.values
def create_baseline():
model = Sequential()
model.add(Dense(82, input_dim=82, kernel_initializer='normal', activation='relu'))
model.add(Dense(50, activation='relu'))
model.add(Dense(1, kernel_initializer='normal', activation='sigmoid'))
model.compile(loss='binary_crossentropy', optimizer='adam', metrics=['accuracy'])
return model
estimator = KerasClassifier(build_fn=create_baseline, epochs=100, batch_size=5, verbose=0)
kfold = KFold(n_splits=50, shuffle=True, random_state=True)
results = model_selection.cross_val_score(estimator, X, Y, cv=kfold)
print("Accuracy: %.3f%% (%.3f%%)" % (results.mean()*100.0, results.std()*100.0))
不清楚。你说它不起作用是什么意思?您没有在
结果中获得roc\u auc
分数
?你想为每个褶皱绘制roc_曲线吗?我从sklearn导入了roc_曲线,并用它替换了['Accurance']。我收到以下错误:无效度量:roc_曲线。实际上,我想打印出每个折叠预测和每个折叠对应的实际输出。此外,如果可能的话,我想画出整个ROC曲线。但对我来说,最重要的是使用roc作为衡量标准,而不是总体准确度,因为这在我的案例中产生了一个糟糕的模型。我希望你能帮忙。如果您需要更多信息,请咨询!谢谢