机器学习分类

UCI心脏病二分类这个题目主要是通过一系列数据的挖掘来判断病人有没有心脏病。
机器学习分为四个基本问题,分类、回归、聚类、降维

分类和回归是监督学习,需要用到标签,分类需要预测离散的类别,回归是要预测出一个连续的值
聚类和降维是无监督学习,不需要用到标签,聚类是把数据按照自组织的相似行聚类成一簇一簇的,在聚类之前也不知道哪些会聚簇,降维是高维映射到低维

心脏病数据集是分类中的二分类
逻辑回归、SVM、决策树都是传统的分类算法,可以作为上面的黑箱

数据可视化

模型建立

希望构建一个简单的准则,尽可能快的筛选过滤
如何衡量数据的纯,通过信息熵、信息增益、信息增益率、基尼指数等一系列的指标来判断数据纯度

构建出很多的树,然后集成在一起,那么就组成了随机森林,每一颗决策树都是随机采样单独训练而成,不光对数据随机采样,对特征也随机采样,每一颗树都不一样,但是集成在一起,会非常强大

为什么要成为随机森林,把很多基学习集成在一起,可以让很多的弱学习集集成成为一个强学习集,大大提升准确率,每个都是不同,共同做决策要比单个做决策少很多的偏见,可以有效防止过拟合。
这里是可视化出来的过程,落到每一个结点的数据,以及它是否纯
蓝色表示得了心脏病,黄色表示没得心脏病,颜色越深表示落到节点的数据越纯

对于机器学习,并不想让他成为一个黑箱,尽可能有可解释性,因为是医学上使用,还是要有可靠性
左边这个混淆矩阵,测试机共有六十多个数据,做一个比较组成了混淆矩阵,26代表实际健康也被预测为健康的人数,22是真实心脏病同时被预测为心脏病人数,9表示真实健康但是误判为心脏病,4表示真实心脏病但是被误判为健康。这里的数据中,4是最危险,因为没有检测出来

根据这个混淆矩阵,可以生成一系列评估指标
模型预测健康人中真实健康:26除以所在列的和
真健康人中多少被模型预测为健康,衡量模型的特异性:22除以所在行的和

在模型中也可以设置一些阈值,例如,大于0.8被认定为心脏病,通过调整阈值,得到多大范围的结果,每个阈值都可以生成一个混淆矩阵,每个混淆矩阵也都可以生成一个ROC曲线(工作受试者特性曲线),模型越靠近左上角性能越好,也就是ROC曲线面积越大越好

机器学习的可解释性分析


把数据集中某一个特征打乱,预测的结果偏离很大,表明特征重要,反之,模型性能不受影响,则这个特征无用
这个图每一条线代表一个病人,反映出心脏血管个数越多,患病概率越低
这个是年龄的关系,可以明显看出一拨人随着年龄增加风险增加,一拨人是风险降低

这样可以分析出每一个病人受某一个特征影响从小到大的影响程度
还可以画出两两之间关系的图,横轴表示心率,心率越高风险越大,纵轴表示血管个数,个数越多风险越小,这样可以分析出特征之间的耦合性,特征之间的互相影响
还有一个角度可以从SHAP值,这个值可以被认为,某一个病人的某一个特征对他预测为某一个结果的贡献,把每一个特征的贡献加起来,又可以得到一个特征的重要度
也可以画成这种图,对于左边,第二行主要血管的个数,红色表示主要血管多的病人,蓝色表示主要血管比较少的病人。从中轴线,越靠近右患心脏病正向贡献越大,越靠近左患心脏病负向贡献越大

二分类数据集_玩转UCI心脏病二分类数据集 领学课笔记相关推荐

  1. 玩转UCI心脏病二分类数据集 领学课笔记

    机器学习分类 UCI心脏病二分类这个题目主要是通过一系列数据的挖掘来判断病人有没有心脏病. 机器学习分为四个基本问题,分类.回归.聚类.降维 分类和回归是监督学习,需要用到标签,分类需要预测离散的类别 ...

  2. 优酷视频怎么转二维码_优酷视频转二维码

    有的人想将自己制作的视频分享出去,那么该如何将视频转换成二维码来分享呢?其实方法很简单,直接在视频界面中就能生成,这里和大家讲讲. 01. 登录自己的优酷帐号,然后点击右上角的上传按钮. 优酷视频怎么 ...

  3. linux绝育玩客云_玩机技巧 篇二:玩客云实用指南(真·无痛绝育),附玩物下载对比...

    玩机技巧 篇二:玩客云实用指南(真·无痛绝育),附玩物下载对比 2019-12-10 15:52:41 408点赞 3771收藏 336评论 创作立场声明:看到站内有些关于玩客云❎绝育的帖子,补充一下 ...

  4. pandas的自带数据集_盘点 | Python自带的那些数据集

    01  Seaborn自带数据集 在学习Pandas透视表的时候,大家应该注意到,我们使用的案例数据"泰坦尼克号"来自于seaborn自带的在线数据库,我们可以通过seaborn提 ...

  5. python的自带数据集_盘点 | Python自带的那些数据集

    01 Seaborn自带数据集 在学习Pandas透视表的时候,大家应该注意到,我们使用的案例数据"泰坦尼克号"来自于seaborn自带的在线数据库,我们可以通过seaborn提供 ...

  6. python文本分类模型_下载 | 最全中文文本分类模型库,上手即用

    原标题:下载 | 最全中文文本分类模型库,上手即用 本文转自『大数据文摘』 如何选择合适的模型上手进行中文文本分类呢? 别慌,福利来了,GitHub上一位名为"huwenxing" ...

  7. java knn文本分类算法_使用KNN算法的文本分类.PDF

    使用KNN算法的文本分类.PDF 第31 卷 第8 期 计 算 机 工 程 2005 年4 月 Vol.31 8 Computer Engineering April 2005 人工智能及识别技术 文 ...

  8. python制作二维码_基于Python生成个性二维码过程详解

    一.问题描述 通过调用MyQR模块来实现生成个人所需二维码. 安装: pip install myqr 二.代码实现 1.普通二维码 from MyQR import myqr # 普通二维码 myq ...

  9. opencv测试代码_玩转OpenCv(二):安装vs2010和opencv3

    winows10环境 vs2010下载及安装 鉴于此类网上教程很多,不复述(懒?_?). opencv3下载及安装 第一步:去官网挑个版本3下载.注意下载的是win pack.以3.4.5为例.下载完 ...

  10. 监督分类空白处也被分类了_用于半监督短文本分类的异构图注意网络

    文章:Heterogeneous Graph Attention Networks for Semi-supervised Short Text Classification. Linmei Hu,T ...

最新文章

  1. python安装教程32位-python为什么要装32位的
  2. VTK:图像加权和用法实战
  3. 使用支持向量机训练mnist数据
  4. ELF文件格式详解-请查收
  5. C++ 线程池的思想
  6. Connection to node 0 (/192.168.204.131:9092) could not be established
  7. 中国石油大计算机在线考试中心,中国石油大在线考试.doc
  8. 返回结果的HTTP状态码——《图解http》第四章
  9. 好久没弄数学了,一本书上出现了,应该是指代了什么意思,问下.
  10. 重温Android——调节屏幕亮度
  11. LaTeX详细教程+技巧总结
  12. 计算机信息安全专业代码0839,网络安全/信息安全专业大学排名(2017-2018-安全导航)...
  13. 个人设置随身携带口袋操作系统手到擒来
  14. BEC剑桥英语高级真题4 Test 2-Part 2-High fliers of the future head for specialist fairs
  15. 年薪50万PM总结的20个成功项目管理经验
  16. cadence allegro - PCB走线 线宽、线距
  17. 01-JavaScript基础
  18. C#实现串口通信的上位机开发
  19. Idea中变量的下划线
  20. 用于光导耦合的倾斜光栅的分析

热门文章

  1. 1.Spring实现数据库的读写分离
  2. Linux 进程间通信的六种机制
  3. 原生JS实现图片懒加载之一:Element.getBoundingClientRect()
  4. IE8 SVG Viewer下一些对象属性和方法
  5. springMVC整合mybatis 项目遇到问题总结
  6. 难道我们就是那0.0000001%
  7. [转]使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(三)-- Logger
  8. windows 10 l2tp 连接无响应问题解决
  9. 工作周记 - 第四周 (2016/06/12 - 2016/06/18) 我没喝多,但是今天话多了 - -
  10. 第六次作业阶段一 学生成绩录入系统设计与实现