机器学习之模型效果衡量标准

true代表你判断的是正确的,positive代表是正力(即是你的目标)
false代表你的判断是错误的,negative代表是负力(即不是你的目标)
本例子当中,女生是目标即positive,TP,T代表判断正确,P代表你认为它是一个女生,加起来就是它真的是一个女生。
FP,f代表判断错误,你认为它是一个女生,加起来就是你认为它是一个女生,实际它是一个男生
这里写图片描述

用于检验positive的有效性(判断正确是女生,判断错误,把女生当男生)
这里写图片描述

用于检验negtive的有效性(判断正确是男生,和判断错误,认为它是一个女生)
这里写图片描述

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt

admissions = pd.read_csv("D:\\test\machineLearning\\admissions.csv")
from sklearn.linear_model import LogisticRegression

log = LogisticRegression()
log.fit(admissions[["gpa"]], admissions["admit"])
pre_pro=log.predict(admissions[["gpa"]])
plt.scatter(admissions["gpa"],pre_pro) #看它是属于0还是1,1代表被录取,0代表不被录取
plt.show()

这里写图片描述

label=log.predict(admissions[["gpa"]])
admissions["predicted_label"]=label
print (admissions["predicted_label"].value_counts())  #预测结果的各种可能类型的统计
print (admissions.head(2))
0    598
1     46
Name: predicted_label, dtype: int64
   admit       gpa         gre  predicted_label
0      0  3.177277  594.102992                0
1      0  3.412655  631.528607                0
predit=admissions[label==admissions["admit"]]  #计算本次预测的准确性
print (len(predit)/float(len(admissions)))
0.6459627329192547
#检查正力的效果即positive
true_positive_filter=(admissions["predicted_label"]==1)&(admissions["admit"]==1)
true_positive = len(admissions[true_positive_filter])
false_negtive_filter=(admissions["predicted_label"]==0)&(admissions["admit"]==1)
false_negtive = len(admissions[false_negtive_filter])
sensitive=true_positive/(true_positive+false_negtive)
print (sensitive)
0.12704918032786885
#检查负力的效果
true_negtive_filter=(admissions["predicted_label"]==0)&(admissions["admit"]==0)
true_negtive = len(admissions[true_negtive_filter])
false_positive_filter=(admissions["predicted_label"]==1)&(admissions["admit"]==0)
false_positive= len(admissions[false_positive_filter])
specifity=true_negtive/(true_negtive+false_positive)
print (specifity)
0.9625
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值