二.西瓜书——线性模型、决策树

第三章 线性模型

1.线性回归

        “线性回归”(linear regression)试图学得一个线性模型以尽可能准确地预测实值输出标记.

2.对数几率回归

        假设我们认为示例所对应的输出标记是在指数尺度上变化,那就可将输出标记的对数作为线性模型逼近的目标,即

                               lny=w^Ta+b.
由此,引入对数几率回归:

        

        称为“几率”(odds),反映了a作为正例的相对可能性.对几率取对数则得到“对数几率”(log odds,亦称logit)

3.线性判别分析

        LDA的思想非常朴素:给定训练样例集,设法将样例投影到一条直线上,使得类样例的投类样的投尽可;在对新样本进行分类时,将其投影到同样的这条直线上,再根据投影点的位置来确定新样本的类别.

4.多分类学习 

        利用二分类学习器来解决多分类 问题:
  • “一对一”(One vs.One,简称OvO):OvO将这N个类别两两配对,从而产生N(N-1)/2个二分类任务
  • “一对其余”(One vs.Rest,简称OvR):OvR则是每次将一个类的样例作为正例、所有其他类的样例作为反例来训练N个分类器.
  • MvM是每次将若干个类作为正类,若干个其他类作为反类.显然,OvO和 OvR是MvM的特例.
        MvM的正、反类构造必须有特殊的设计,不能随意选 取.这里我们介绍一 种最常用的 MvM 技术:“ 纠错输出码 ”(E rror Correcting  Ou t p u t C o d es , E C O C ) .
         ECOC Dietterich and Bakiri,1995]是将编码的思想引入类别拆分,并尽可能在解码过程中具有容错性.ECOC工作过程主要分为两步:
  • 对N个 M 划分 次划分将一 部分类 别划为 一部 分划为反类,从而形成一个二分类训 练集;这样一 共产生M个训练集,可 训练出M个分类器.
    • 解码:M个分类 器分 别对测试样本 进行预测, 这些预 测标记组成一个编 .将这个预测编码与每 个类别各自的编码进行比较,返回其中距离最小的类别作为最终预测结果.
              为什么称为“纠错输出码”呢?这是因为在测试阶段,ECOC编码对分类 器的错误有一定的容忍和修正能力.例如图3.5(a)中对测试示例的正确预测编 码是 ( - 1 , + 1 , + 1 , - 1 , + 1 ) , 测时 f 2 导致了错误编码(-1,-1,+1,-1,+1),但基于这个编码仍能产生正确的最终分 类结果C3.一般来说,对同一个学习任务,ECOC编码越长,纠错能力越强.然 而,编码越长,意味着所需训练的分类器越多,计算、存储开销都会增大;另一 方面,对有限类别数,可能的组合数目是有限的,码长超过一定范围后就失去了
      .

      5.类别不平衡问题

              类别不平衡(class-imbalance)就是指分类任务中不同类别的训练样例数 目差别很大的情况.
      类别平衡时, y > 0.5 判别 ,否 则为反 . y实 际上表 了正例的可能性,几率分类规则为:
      类别不平衡时, 只要分 类器的预测几率高于观测 几率就应判定为正例,即

        此时,需要进行再缩放:

        大体上有三类做法:

  • 一类是直接对训练集里的反类样例进行“欠采样”(undersampling),即去除一些反例使得正、反例数目接近,然后再进行学习;
  • 第二类是对训练集里的正类样例进行“过采样”(oversampling),即增加一些正例使得正、反例数目接近,然后再进行学习;
  • 第三类则是直接基于原始训练集进行学习,但在用训练好的分类器进行预测时,将式(3.48)嵌入到其决策过程中,称为“阈值移(threshold-moving).
        欠采样法的时间开销通常远小于过采样法,因为前者丢弃了很多反例,使 得分类器训练集远小于初始训练集, 而过采样法增 加了很多正例,其训练集 大于初始训练集.需注意的是,过采样法不能简单地对初始正例样本进行重 复采样,否则会招致严重的过拟合;

第四章 决策树

1.基本流程 

        决策树将样本根据属性测试的结果被划分到子结点中;根结点包含样本全集.从根结点到每个叶结点的路径对应了一个判定测试序列.决策树学习的目的是为了产生一棵泛化能力强,即处理未见示例能力强的决策树,其基本流程遵循简单且直观的“分而治之”(divide-and-conquer)策略

        策树的生成是一个递归过程.在决策树基本算法中,有三种情形会导致递归返回:

  • (1)当前结点包含的样本全属于同一类别,无需划分;
  • (2)当前属性集为空,或是所有样本在所有属性上取值相同,无法划分;当前结点标记为叶结点,并将其类别设定为该结点所含样本最多的类别;利用当前结点的后验分布
  • (3)当前结点包含的样本集合为空,不能划分.当前结点标记为叶结点,但将其类别设定为其父结点所含样本最多的类别.父结点的样本分布作为当前结点的先验分布.

2.划分选择

        一般而言,随着划分过程不断进行,我们希望决策树的分支结点所包含的样本尽可能属于同一类别,即结点的“纯度”(purity)越来越高.

(1)信息增益

信息熵的定义 

         

Ent(D)值越D.

        信息增益的计算为父节点的信息熵减去划分后各子节点的信息熵之和,其中子节点信息熵的权重为   第v个分支节点样本数/父节点样本数

         

        一般而言,信息增益越大,则意味着使用属性a来进行划分所获得的“纯 度提升”越大.ID3决策树学习算法以信息增益为准则来选择划分属性.

 例如:

 

(2)增益率

        当考虑编号时,每个类别仅仅包含1个样本,此时信息增益最大,这些分支结点的纯度已达最大.然而,这样的决策树显然不具有泛化能力,无法对新样本进行有效预测.

        也就是说信息增益准则对可取值数目较多的属性有所偏好,为减少这种偏好可能带来的不利影响,著名的C4.5决策树算法[Quinlan,1993]不直接使用信息增益,而是使用“增益率”(gainratio)来选择最优划分属性采用与式(4.2)义为

 IV(a)称为属性a的“固有值”(intrinsic value)[Quinlan,1993].属性a的可能取值数目越多(即V越大),则IV(a)的值通常会越大.

        需注意的是,增益率准则对可取值数目较少的属性有所偏好,因此,C4.5

        算法并不是直接选择增益率最大的候 选划分属性,而是使用了一个启发式 先从候选划分属性中找出信息增益高于平均水平的属性,再从 中选择增益率最高的.

(3)基尼指数

        CART决策树[Breiman et al.,1984]使用“基尼指数”(Gini index)来选择划分属性.采用与式(4.1)相同的符号,数据集D的纯度可用基尼值来度量:

        直观来说,Gini(D)反映了从数据集D中随机抽取两个样本,其类别标记不一致的概率.因此,Gini(D)越小,则数据集D的纯度越高

        采用与式(4.2)相同的符号表示,属性a的基尼指数定义为

 3.剪枝处理

  1. 预剪枝在决策树生成过程中,对每个结点在划分前先进行估计,若当前结点的划分不能带来决策树泛化性能提升,则停止划分并将当前结点标记为叶结点;
  2. 后剪枝:先从训练集生成一棵完整的决策树然后自底向上地对非叶结点进行考察,若将该结点对应的子树替换为叶结点能带来决策树泛化性能提升,则将该子树替换为叶结点.
        预剪枝使得决策树的很多分支都没有“展开”,这不仅降低了过拟合的风险,还显著减少了决策树的训练时间开销和测试时间开销.但另一方面,有些分支的当前划分虽不能提升泛化性能、甚至可能导致泛化性能暂时下降,但在其基础上进行的后续划分却有可能导致性能显著提高;预剪枝基于“贪心”本质禁止这些分支展开,给预剪枝决策树带来了欠拟合的风险.

         后剪枝决策树通常比预剪枝决策树保留了更多的分支.一般情形下,后剪枝决策树的欠拟合风险很小,泛化性能往往优于预剪枝决策树.但后剪枝过程是在生成完全决策树之后进行的,并且要自底向上地对树中的所有非叶结点进行逐一考察,因此其训练时间开销比未剪枝决策树和预剪枝决策树都要大得多.

4.连续与缺失值         

 (1) 连续值处理

          连续值将区间的中点作为候选划分点,然后像离散值属性一样考察这些点,

        对属性a,表示无缺失值样本所占的比例,表示无缺失值样本中第k类所占的比例,则表示无缺失值样本中在属性a上取值a^{v}的样本所占的比例.

        

        若样本α在划分属性a上的取值已知,则将a划入与其取值对应的子结点,且样本权值在子结点中保持为wg.若样本z在划分属性a上的取值未知,则将a同时划入所有子结点,且样本权值在与属性值a^{v}对应的子结点中调整为;直观地看,这就是让同一个样本以不同的概率划入到不同的

子结点中去.

5.多变量决策树  

        若我们把每个属性视为坐标空间中的一个坐标轴,则d个属性描述的样本就对应了d维空间中的一个数据点,对样本分类则意味着在这个坐标空间中寻找不同类样本之间的分类边界.决策树所形成的分类边界有一个明显的特点:轴平行(axis-parallel),即它的分类边界由若干个与坐标轴平行的分段组成,

       

        分类边界的每一段都是与坐标轴平行的.这样的分类边界使得学习结果有较好的可解释性,因为每一段划分都直接对应了某个属性取值.但在学习任务的真实分类边界比较复杂时,必须使用很多段划分才能获得较好的近似,此时的决策树会相当复杂,由于要进行大量的属性测试,预测时间开销会很大.

        “多变量决策树”(multivariate decision tree)就是能实现这样的“斜划 分”甚至更复杂划分的决策树.以实现斜划分的多变量决策树为例,在此类决策树中,非叶结点不再是仅对某个属性,而是对属性的线性组合进行测试

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/695602.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

投简历这样投就对了

相关文章 写一份让HR过目不忘的简历 后悔没有早点发现这篇嵌入式简历模板 了解校招类型 投简历这样投就对了 前言一、线上投简历需要注意的东西1.线上APP投递简历(以BOSS为例)(1)填好个人信息(2)注意打招呼…

堆的结构实现与应用

目录 前言: 1.认识堆 a.如何认识堆? b.大根堆与小根堆 c.堆应用的简单认识 2.堆的结构与要实现的功能 3.向上调整算法 4.向下调整算法 5.向堆插入数据并建堆 6.堆的大小 7.堆的判空 8.取堆顶数据 9.删除堆顶数据 10.向上调整时间复杂度 11.向下调整时…

rtsp推拉流

1.搭建视频服务器 smart-rtmpd: smart_rtmpd 是一款 rtmp、rtsp 服务器,非常好用,解压既运行,支持跨平台,无任何依赖,性能和 SRS 相比不分上下 2.推拉流 下载windows版本ffmpeg,并设置环境变量. 推流 ffmpeg -re -st…

170基于matlab的DNCNN图像降噪

基于matlab的DNCNN图像降噪,网络分为三部分,第一部分为ConvRelu(一层),第二部分为ConvBNRelu(若干层),第三部分为Conv(一层),网络层数为17或者20层…

制造业客户数据安全解决方案(终端安全/文件加密/介质管理等)

针对前文制造业客户数据安全解决方案(数据防泄密需求分析)提到的泄密风险,本文详细介绍一套完整、合理的解决方案,通过该方案构建公司数据安全防护边界,自动加密、全方位保护数据安全。 PC端:https://isite…

VUE2整合markdown编辑器 mavon-editor

GITEE文档 文档中详细介绍了自定义工具栏等 toolbars: {bold: true, // 粗体italic: true, // 斜体header: true, // 标题underline: true, // 下划线strikethrough: true, // 中划线mark: true, // 标记superscript: true, // 上角标subscript: true, // 下角标quote: true, …

大气颗粒物与VOCs PMF源解析实践技术应用

目前,大气颗粒物和臭氧污染成为我国亟待解决的环境问题。颗粒物和臭氧污染不仅对气候和环境有重要影响,而且对人体健康有严重损害。而臭氧的前体物之一为挥发性有机物(VOCs)。为了高效、精准地治理区域大气颗粒物和臭氧污染&#…

[corCTF 2022] CoRJail: From Null Byte Overflow To Docker Escape

前言 题目来源:竞赛官网 – 建议这里下载,文件系统/带符号的 vmlinux 给了 参考 [corCTF 2022] CoRJail: From Null Byte Overflow To Docker Escape Exploiting poll_list Objects In The Linux Kernel – 原作者文章,poll_list 利用方式…

Linux 权限详解

目录 一、权限的概念 二、权限管理 三、文件访问权限的相关设置方法 3.1chmod 3.2chmod ax /home/abc.txt 一、权限的概念 Linux 下有两种用户:超级用户( root )、普通用户。 超级用户:可以再linux系统下做任何事情&#xff…

深信服技术认证“SCCA-C”划重点:深信服超融合HCI

为帮助大家更加系统化地学习云计算知识,高效通过云计算工程师认证,深信服特推出“SCCA-C认证备考秘笈”,共十期内容。“考试重点”内容框架,帮助大家快速get重点知识 划重点来啦 *点击图片放大展示 深信服云计算认证(S…

Shell 脚本系列 | shell三剑客

目录 1、三剑客介绍2、三剑客之—grep1. 常用参数2. 常用示例1.过滤以#开头的行和空白行2.找出所有的mp3文件包含艺术家jayZ,不包含remix3.计算匹配项的数目4.在匹配字符串周围打印出行5.匹配显示所有IP 3、三剑客之一sed1.常用参数2.常用示例1. 奇数行后增加2. 删除…

http协议工具:apache详解

目录 一、常见的http服务程序 1、 Apache HTTP Server 介绍 1.1 apache 概念 1.2 apache 功能 1.3 apache 特性 2、MPM(multi-processing module)工作模式 2.1 prefork 2.2 worker 2.3 event 二、Apache HTTP Server安装和相关文件 1、安装方…

MySQL|MySQL基础(求知讲堂-学习笔记【详】)

MySQL基础 目录 MySQL基础一、 MySQL的结构二、 管理数据库1)查询所有的数据库2)创建数据库3)修改数据库的字符编码4)删除数据库5)切换操作的数据库 三、表的概念四、字段的数据类型4.1 整型4.2 浮点型(float和double)…

Linux密码重置不求人:三种方法教你轻松搞定普通用户密码更改

在Linux服务器管理中,为普通用户设置和管理密码是一项基础且重要的任务。通过为普通用户设置登录密码,可以确保系统的安全性和用户访问的合法性。本文将详细介绍在Linux系统中,如何通过三种不同的方法为普通用户设置登录密码。 Linux下&…

基于 java springboot+layui仓库管理系统

基于 java springbootlayui仓库管理系统设计和实现 博主介绍:5年java开发经验,专注Java开发、定制、远程、文档编写指导等,csdn特邀作者、专注于Java技术领域 作者主页 央顺技术团队 Java毕设项目精品实战案例《1000套》 欢迎点赞 收藏 ⭐留言 文末获取源…

c++类和对象新手保姆级上手教学(下)

目录 前言: 初始化列表: explicit关键字: static成员: 友元函数: 友元类: 内部类: 匿名对象: 前言: 类和对象下篇中剩余的部分较为简单易理解,认真记住…

PC端封装侧边导航

PC端封装侧边导航 template <div v-if"showBox false" class"leftShow" click.stop"toggleBox"></div><div class"container" :class"{ show: showBox, fixed: fixedBox }"><div class"arrow&qu…

《C++ Primer Plus》《7、函数——C++的编程模块》

文章目录 前言1复习函数的基本知识1.1定义函数1.2函数原型和调用函数 2函数的参数和按值传递2.1多个参数2.2另一个接受两个参数的函数 3函数和数组3.1函数如何用指针来处理数组3.2将数组作为参数意味着什么3.3更多的数组函数示例3.4使用数组区间的函数3.5指针和const 4函数和二…

【实时渲染】图形处理单元

介绍 早期的图像加速技术是使用三角形扫描&#xff0c;将这些扫描的颜色通过插值显示在屏幕上&#xff0c;而且也拥有访问数据的能力&#xff0c;将这些访问的数据通过插值显示在屏幕上 程序内部又加上了许多的可见性的像素检查&#xff0c;如深度测试等&#xff0c;由于这些过…

Java集合1——Collection

集合是一种容器&#xff0c;用来装数据&#xff0c;类似于数组&#xff0c;但是集合的大小可变&#xff0c;开发中也经常能用到&#xff0c;为了满足不同的业务场景需求&#xff0c;JAVA还提供了不同特点的集合。 集合体系结构&#xff1a;单列集合(Collection)每个元素只包含…