使用 sklearn.metrics计算f1,pre,acc,rec(二分类和多分类)

首先导入sklearn.metrics

from sklearn.metrics import accuracy_score,f1_score,recall_score,precision_score

模型最后输出的都是概率,类似[0.9999,0.1111]这种类型

pres = model.predict(x) #pres的结果就是上面的概率

pres = np.argmax(pres)#此函数输出概率较大的项的下标

from sklearn import metrics
metrics.precision_score(y_true, y_pred, average='micro')  # 微平均,精确率
Out[130]: 0.33333333333333331

metrics.precision_score(y_true, y_pred, average='macro')  # 宏平均,精确率
Out[131]: 0.375

metrics.precision_score(y_true, y_pred, labels=[0, 1, 2, 3], average='macro')  # 指定特定分类标签的精确率
Out[133]: 0.5

上面的y_true(三分类为例):[0,1,2,1,0,1,1,2,0,2]

上面的y_pred(三分类为例):[0,1,2,1,1,1,1,0,0,2]

如果为二分类,则average设置为binary(默认值)

参考:https://blog.csdn.net/sinat_26917383/article/details/75199996?utm_source=blogxgwz7

sklearn分类评估参数 average:https://blog.csdn.net/qq_15111861/article/details/103196185

你可能感兴趣的:(使用 sklearn.metrics计算f1,pre,acc,rec(二分类和多分类))