sklearn metrics 的使用方法

本文详细介绍了如何在Python中安装和使用scikit-learn库中的各类评估指标,包括精度、AUC、F1分数、Log Loss等,并展示了分类和回归问题的实例。掌握这些指标有助于提升模型性能评估。
摘要由CSDN通过智能技术生成

一、安装sklearn

如果安装了Anoconda,可以直接从Anoconda Navigator——Environment里面搜索添加。
pip install -U scikit-learn


二、scikit-learn.metrics导入与调用

有两种方式导入。

方式一:

from sklearn.metrics import 评价指标函数名称

例如:

from sklearn.metrics import mean_squared_error
from sklearn.metrics import r2_score

直接使用函数名调用:

mse = mean_squared_error(y_test, y_pre)
R2 = r2_score(y_test,y_pre)

方式二:

from sklearn import metrics

调用方式为:metrics.评价指标函数名称(parameter)

例如:
计算均方误差mean squared error

计算回归的决定系数R2

mse = metrics.mean_squared_error(y_test, y_pre)
R2 = metrics.r2_score(y_test,y_pre)

【分类指标】

1.accuracy_score(y_true,y_pre) : 精度 

2.auc(xyreorder=False) : ROC曲线下的面积;较大的AUC代表了较好的performance。

3.average_precision_score(y_truey_scoreaverage='macro'sample_weight=None):根据预测得分计算平均精度(AP)

4.brier_score_loss(y_truey_probsample_weight=Nonepos_label=None):The smaller the Brier score, the better.

5.confusion_matrix(y_truey_predlabels=Nonesample_weight=None):通过计算混淆矩阵来评估分类的准确性 返回混淆矩阵

6.f1_score(y_truey_predlabels=Nonepos_label=1average='binary'sample_weight=None): F1值

  F1 = 2 * (precision * recall) / (precision + recall) precision(查准率)=TP/(TP+FP) recall(查全率)=TP/(TP+FN)

7.log_loss(y_truey_predeps=1e-15normalize=Truesample_weight=Nonelabels=None):对数损耗,又称逻辑损耗或交叉熵损耗

8.precision_score(y_truey_predlabels=Nonepos_label=1average='binary',) :查准率或者精度; precision(查准率)=TP/(TP+FP)

9.recall_score(y_truey_predlabels=Nonepos_label=1average='binary'sample_weight=None):查全率 ;recall(查全率)=TP/(TP+FN)

10.roc_auc_score(y_truey_scoreaverage='macro'sample_weight=None):计算ROC曲线下的面积就是AUC的值,the larger the better

11.roc_curve(y_truey_scorepos_label=Nonesample_weight=Nonedrop_intermediate=True);计算ROC曲线的横纵坐标值,TPR,FPR

  TPR = TP/(TP+FN) = recall(真正例率,敏感度)       FPR = FP/(FP+TN)(假正例率,1-特异性)

【回归指标】

1.explained_variance_score(y_truey_predsample_weight=Nonemultioutput='uniform_average'):回归方差(反应自变量与因变量之间的相关程度)

2.mean_absolute_error(y_truey_predsample_weight=Nonemultioutput='uniform_average'):平均绝对误差

3.mean_squared_error(y_truey_predsample_weight=Nonemultioutput='uniform_average'):均方差

4.median_absolute_error(y_truey_pred)   中值绝对误差

5.r2_score(y_truey_predsample_weight=Nonemultioutput='uniform_average')  :R平方值

Scikit-learn(简称sklearn)是一个开源的Python机器学习库,它实现了许多用于数据分析和机器学习的算法。在sklearn中,metrics模块提供了用于评估模型性能的函数和类。这些评估指标通常用于分类、回归和聚类分析等任务。 分类任务的评价指标包括但不限于: - 准确率(accuracy):正确分类的样本数占总样本数的比例。 - 精确率(precision):正确预测为正类的样本数占所有预测为正类样本数的比例。 - 召回率(recall):正确预测为正类的样本数占所有实际为正类样本数的比例。 - F1分数(F1-score):精确率和召回率的调和平均数,用于衡量模型的精确度和召回率之间的平衡。 - ROC-AUC:接收者操作特征曲线下面积,用于衡量分类器在所有可能阈值下的平均表现。 回归任务的评价指标包括但不限于: - 平均绝对误差(MAE):预测值与真实值之间差的绝对值的平均。 - 均方误差(MSE):预测值与真实值之间差的平方的平均。 - 均方根误差(RMSE):MSE的平方根。 - 决定系数(R^2):衡量预测值与真实值之间拟合程度的一个指标。 聚类任务的评价指标包括但不限于: - 轮廓系数(Silhouette Coefficient):衡量样本与同类型其他样本的相似度与样本与异类型样本的相似度之间的差距。 - 轮廓分数(Silhouette Score):所有样本轮廓系数的平均值。 此外,sklearn.metrics模块还提供了其他一些工具,如混淆矩阵(confusion_matrix)来可视化分类器的性能,以及交叉验证(cross-validation)相关的评分函数。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

LRJ-jonas

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值