您当前的位置: 首页 >  机器学习

wendy_ya

暂无认证

  • 1浏览

    0关注

    342博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

基于机器学习的心脏病预测方法(3)——数据预处理及评价指标介绍

wendy_ya 发布时间:2021-09-09 16:32:28 ,浏览量:1

目录
  • 一、数据预处理
    • 1.1 训练集和测试集的划分
  • 二、评价指标介绍
    • 2.1 TP,TN,FP,FN
    • 2.2 混淆矩阵
    • 2.3 准确率与精准率
    • 2.4 召回率
    • 2.5 F分数
    • 2.6 ROC曲线和AUC指标

心脏数据集下载地址如下:https://download.csdn.net/download/didi_ya/87451172。本文所用数据集与前文数据集介绍中描述数据集均不一致,但属性方法类似,故以本数据集作为举例说明。实际以你的数据集为准。

一、数据预处理 1.1 训练集和测试集的划分

从303份数据中随机抽取80%作为训练集,20%作为测试集。即242份进行训练,61份进行测试。

from sklearn.model_selection import train_test_split

predictors = data.drop("target",axis=1)
target = data["target"]

X_train,X_test,Y_train,Y_test = train_test_split(predictors,target,test_size=0.20,random_state=0)
print("Training features have {0} records and Testing features have {1} records.".\
      format(X_train.shape[0], X_test.shape[0]))

可以查看训练集和测试集的形状: 在这里插入图片描述

二、评价指标介绍 2.1 TP,TN,FP,FN
  • True Positive(TP):本来是正样例,分类成正样例;
  • True Negative(TN):本来是负样例,分类成负样例;
  • False Positive (FP):本来是负样例,分类成正样例;
  • False Negative(FN):本来是正样例,分类成负样例;

在这里插入图片描述

2.2 混淆矩阵 2.3 准确率与精准率

正确预测数与预测总数之间的比例,即所有预测正确的比例 a c c = T P + T N T P + T N + F P + F N acc = \frac{TP + TN}{TP + TN + FP + FN} acc=TP+TN+FP+FNTP+TN​

精准率:被预测为正样本里实际为正样本的比例 P r e c i s i o n ( p ) = T P T P + F P Precision (p) = \frac{TP}{TP + FP} Precision(p)=TP+FPTP​

2.4 召回率

召回率:所有正样本里被预测正确的比例,公式为: r e c a l l = T P T P + F N recall = \frac{TP}{TP + FN} recall=TP+FNTP​ 在这里插入图片描述

2.5 F分数

F分数被称为精确性和召回率的调和平均值,其公式为: F = 1 1 2 ( 1 p + 1 r ) = 2 p r p + r F = \frac{1}{\frac{1}{2}(\frac{1}{p}+\frac{1}{r})} = \frac{2pr}{p+r} F=21​(p1​+r1​)1​=p+r2pr​

2.6 ROC曲线和AUC指标

整个项目的主要目标是以最高的准确性预测心脏病的发生。为了实现这一点,我们将测试几种分类算法。接下来将分别介绍心脏病预测的几种机器学习算法及其实现过程。

关注
打赏
1659256378
查看更多评论
立即登录/注册

微信扫码登录

0.0406s