首页 > 解决方案 > 造成这种差异的原因可能是什么?

问题描述

精度差异的原因可能是什么?

y_pred = model.predict(x_test)

ans = []

for i in y_pred:

    ans.append(0 if i[0]<0.5 else 1)

ans = np.array(ans)

print("Accuracy:",metrics.roc_auc_score(y_test, ans))

Accuracy: 0.7781798160210841

尽管

print("Accuracy:",metrics.roc_auc_score(y_test, y_pred))

Accuracy: 0.8949947592358702

错误

标签: pythonmachine-learningscikit-learnartificial-intelligence

解决方案


ROC 分数准确。它是曲线下的一个区域,当您通过改变阈值来构建预测时出现。在您的代码中,您通过仅输出 0 和 1 消除了“不确定性”的概念,因此 ROC 曲线变得平坦 - 没有影响您的预测的阈值。


推荐阅读