Ach*_*age 5 python machine-learning roc scikit-learn
我正在尝试按照 sklearn 文档中提供的示例绘制具有交叉验证的接收器操作特征 (ROC) 曲线。但是,以下导入ImportError在python2和中都给出了, python3。
from sklearn.metrics import plot_roc_curve
Run Code Online (Sandbox Code Playgroud)
错误:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name plot_roc_curve
Run Code Online (Sandbox Code Playgroud)
python-2.7 sklearn版本: 0.20.2.
python-3.6 sklearn版本: 0.21.3.
我发现以下导入工作正常,但与plot_roc_curve.
from sklearn.metrics import roc_curve
Run Code Online (Sandbox Code Playgroud)
被plot_roc_curve弃用?有人可以尝试代码并让我知道 sklearn 版本是否有效吗?
Uen*_*cha 14
plot_roc_curve 在 1.2 版本中已被删除。从 1.2 开始,改用 RocCurveDisplay:
sklearn 1.2 之前:
from sklearn.metrics import plot_roc_curve
svc_disp = plot_roc_curve(svc, X_test, y_test)
rfc_disp = plot_roc_curve(rfc, X_test, y_test, ax=svc_disp.ax_)
Run Code Online (Sandbox Code Playgroud)
从 sklearn 1.2 开始:
from sklearn.metrics import RocCurveDisplay
svc_disp = RocCurveDisplay.from_estimator(svc, X_test, y_test)
rfc_disp = RocCurveDisplay.from_estimator(rfc, X_test, y_test, ax=svc_disp.ax_)
Run Code Online (Sandbox Code Playgroud)
小智 8
安装 scikit-plot 并从那里导入指标:
from scikitplot.metrics import plot_roc_curve
Run Code Online (Sandbox Code Playgroud)