erwin模型怎么保存_模型的评估指标

erwin模型怎么保存_模型的评估指标_第1张图片

想必大家都知道,构建机器学习模型就是为了能够更好的训练我们的数据集,使得模型的准确率达到最大,那么当我们构建好了我们的学习模型,可以通过哪些指标来评估我们模型的好坏呢?这就是我今天要给大家介绍的内容。

一.精确率与召回率

1.混淆矩阵

在分类过程中,预测结果与正确标记之间存在四种不同的组合,构成了混淆矩阵。(适用于多分类)

erwin模型怎么保存_模型的评估指标_第2张图片

2.精确率:预测结果为正例的样本中真实为正例的比例

erwin模型怎么保存_模型的评估指标_第3张图片

3.召回率:真实为正例的样本中预测结果为正例的比例(查得全,对得能力)

erwin模型怎么保存_模型的评估指标_第4张图片

4.F1—score:反映了模型的健稳性

erwin模型怎么保存_模型的评估指标_第5张图片

5.分类评估报告API

sklearn.metrics.classification_reporty(y _true ,Y _predict, labels =[], target_ names = None)

y_true:真实的目标值

y_predict : 估计器预测目标值

labels :指定类别对应得数字

return : 每个类别的精确率与召回率

二.ROC曲线与AUC指标

总共有100个人,如果有99个样本为癌症患者,1个样本为非癌症患者----此时样本不均衡

不管怎么样我全部都预测为正例(默认癌症为正例)--此时该模型就会显得太粗暴,不能正确预测出样本中癌症患者数目。

此时该问题的精确率:99%;召回率: 9 9/99 = 100 %。此时用召回率这个指标来评估模型的准确性就会出现误差,实际情况的召回率 会低于1.

  • 问题:如何衡量样本不均衡下的评估
  • 此时我们需要引入新的评价指标:ROC曲线与AUC指标

1.TPR与FPR

TPR= TP/(TP+FN) 所有真实类别为1 的样本中,预测类别为1 的样本比例

FPR=FP/(FP + TN )所有真实类别为0的样本中,预测类别为1 的比例

ROC曲线的横轴是FTPRATE,纵轴是TPRate ,当两者相等时,表示不论真实类别是1还是0的样本,分类器预测为1的概率是相等的,此时AUC为0.5

erwin模型怎么保存_模型的评估指标_第6张图片
  • AUC曲线的意义随机取一对正负样本,正样本得分大于负样本的概率
  • AUC的最小值为0.5,最大值为1,取值越高分类效果越好
  • AUC=1,是一个完美分类器
  • 0.5
  • 最终AUC的范围在0.5 到1 之间,并且越加接近1越好。

2.AUC计算的API

sklearn.metrics import roc_auc score(y_true, y_score)

  • 计算ROC曲线的面积即为AUC值
  • y_true :每个样本的真实类别,必须为0 (反例),1(正例)标记
  • y_score: 预测得分可以是正类的估计概率,置信值或者分类器方法的返回值

三.模型的保存与加载

当训练好模型后,如果别人需要我们提供预测结果,就需要保存模型,主要是保存模型的参数。

API:from sklearn.externals import joblib

保存: joblib.dump(,"xxxx.pkl")

加载 : estimator= joblib.load("xxxx.pkl")

必须保存为PKL文件形式

#模型保存与加载
from sklearn.externals import joblib
#保存模型
joblib.dump(estimator,"my_ridge.pkl")
#加载模型
estimator=joblib.load("my_ridge.pkl")

今天的内容相对来说比较简单,但是很重要。我在最近找实习生的时候笔试就遇到了很多这方面的问题。大家记得多复习哦!

你可能感兴趣的:(erwin模型怎么保存)