评估指标与评分(上):二分类指标

🚀 优质资源分享 🚀

学习路线指引(点击解锁) 知识定位 人群定位
🧡 Python实战微信订餐小程序 🧡 进阶级 本课程是python flask+微信小程序的完美结合,从项目搭建到腾讯云部署上线,打造一个全栈订餐系统。
💛Python量化交易实战💛 入门级 手把手带你打造一个易扩展、更安全、效率更高的量化交易系统

精度可以作为度量模型好坏的一个指标,它表示预测正确的样本数占所有样本数的比例。

但是在实践中,我们通常不仅对精确的预测感兴趣,还希望将这些预测结果用于更大的决策过程

1、 二分类指标

我们先看一下测量精度可能会怎么误导我们

1.1错误类型

⭐精度并不能很好地度量预测性能,因为我们所犯得错误并不包括我们感兴趣的所有信息:

例如:有一个自动化测试筛选癌症,如果测试结果为阴性,则认为该患者是健康的,若是阳性则需要进一步筛查。在这里我们将阳性测试结果称为正类,阴性结果称为负类,

于是就有了以下两种常见的错误类型

第一类错误:假正例(错误的阳性预测,可能导致额外费用)
第二类错误:假反例(错误的阴性预测,可能使得病人无法及早发现病情,造成严重后果)

1.2不平衡数据集

不平衡数据集:一个类别比另一个类别出现次数多很多的数据集

  • 精度无法帮助我们区分:不变的‘未点击’模型潜在的优秀模型

下面将用到:

  • 两个虚拟分类器:dummy_majority(始终预测多数类),dummy(产生随机输出)
  • 两个常用的分类模型:LogisticRegression,DecissionTree

创建数据集

  #创建一个不平衡数据集

  from sklearn.datasets import load_digits
  import numpy as np

  digits = load_digits()
  y = digits.target==9

  print("类别:{}".format(np.bincount(y)))

  '''
 `类别:[1617 180]`
 '''

建立四个模型

  from sklearn.dummy import DummyClassifier
  from sklearn.model_selection import train_test_split
  from sklearn.linear_model import LogisticRegression
  from sklearn.tree import DecisionTreeClassifier


  X_train,X_test,y_train,y_test = train_test_split(digits.data,y,random_state=0)

  #构建始终预测大多数的模型



  #始终预测多数类
  dummy_majority = DummyClassifier(strategy='most\_frequent').fit(X_train,y_train)
  pred_most_frequent = dummy_majority.predict(X_test)

  print("始终预测多数类 Test score:{:.2f}".format(dummy_majority.score(X_test,y_test)))

  #产生随机输出
  dummy = DummyClassifier()
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值