首页 > 编程知识 正文

常见的roc曲线类型,二分类roc曲线实例

时间:2023-05-04 19:31:46 阅读:177828 作者:350

本节主要介绍从著名的莺尾花数据中绘制ROC曲线的方法。 Iris爱丽丝数据集是经典数据集,在统计学习和机器学习领域经常作为例子使用。 数据集内共包含3种共150条记录,各类别各有50条记录,每条记录均具有萼长、萼宽、花瓣长、花瓣宽4个特征,根据这4个特征,鸢尾花卉(iris-setosa,iris-setosa,2004 )

本摘录采用KNN、逻辑回归、SVM种分类器对数据集进行分类处理。 代码如下所示。

importnumpyasnpimportscipyasspimportpandaspdimportmatplotlibasmplimportmatplotlib.pyplotaspltfromsklearn.linear _ model logisticregressioncvfromsklearn.svmimportsvcfromsklearn.neighborsimportkneighborsclassifierfromsklearn.model _ selection rain _ test _ splitfromsklearn.preprocessingimportlabel _ binarizefromsklearnimportmeter _ name _=" _ main _ main " header=none(iris_types=data(4).unique ) for i,iris_typeinenumerate ) iris_types ) 3360data.loc ) datata :2] n ) n,features=x.shapeprint(x ) y=data.iloc[:-1].astype(NP.int ) c _ number=NP.uniqiq y_test=train_test_split(x,y,train_size=0.6,random_state=0) y_one_hot=label_binarize ) 20 ) models=[ ['KNN ',kneighborsclassifier ] n logisticregressioncv (cs=alpha,penalty='l2 ',cv=3) ]、[ ' SVM gridsearchcv ) SVC ) ) kernel='linear )、gridsearchcv ) ) SVC ) 652 param_grid={'C': alpha}、['SVM(RBF ) ' gamma ' 3360 alpha } ] colors=cycle (gmcr ) mpl.rcparams ) ) font.sans-serif )=u ' simhei ' mpl.rcparrrams=false model ),colorinzip (model,colors ) ) 3360model 'C_ ' ) 3360print(model.c_ ) ifHasattr ) model, ' best_params_ ' ) 3360print ) model.best_Params_ ) if ' predict _ proba ' (: y _ score=model.predict _ prams ) n thresholds=metrics.roc _ curve (y _ one _ hot.ravel (,y_score.ravel ) ) AUC=metrics.AUC (FPR,tpr ) ) alpha=0.7,label=u'%s,auc=%.3f'%(name,AUC ) ) PLT.plot (),0,1 ),c='#808080 ),lw=1.02 0.1 ) ) PLT.yticks ) NP.arange ),0,1.1 ) ) PLT fontsize=13 ) PLT.ylabel(truepositiverate ),fontsize=13 ) fontsize=12 ) #PLT.legend(loc='lowerright ',fancybox=True,framealpha=0.8,edgecolor='#303030 ',fontsize

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。