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

第三章 线性模型

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

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

五种多目标优化算法(NSWOA、MOJS、MOAHA、MOPSO、NSGA2)性能对比(提供MATLAB代码)

一、5种多目标优化算法简介 1.1NSWOA 1.2MOJS 1.3MOAHA 1.4MOPSO 1.5NSGA2 二、5种多目标优化算法性能对比 为了测试5种算法的性能将其求解9个多目标测试函数(zdt1、zdt2 、zdt3、 zdt4、 zdt6 、Schaffer、 Kursawe 、Viennet2、 Viennet3)&#xff0…

上进计划 | Python爬虫经典实战项目——电商数据爬取!

电商数据采集之——电商数据爬虫|电商数据采集API接口 电商数据爬虫背景 在如今这个网购风云从不间歇的时代,购物狂欢持续不断,一年一度的“6.18年中大促”、“11.11购物节”等等成为了网购电商平台的盛宴。在买买买的同时,“如何省钱&#…

昇腾ACL应用开发之模型转换ATC

一.前提条件 在前面的章节中我们已经安装了包含模型转换的套件包CANN-TOOLKIT,默认的安装路径会在/usr/local/Ascend里面,我们将该套件所需要的东西加入到环境变量中以便我们调用: 将source /usr/local/Ascend/ascend-toolkit/set_env.sh加入…

【鸿蒙系统学习笔记】TypeScript开发语言

一、背景 HarmonyOS 应用的主要开发语言是 ArkTS,它由 TypeScript(简称TS)扩展而来,在继承TypeScript语法的基础上进行了一系列优化,使开发者能够以更简洁、更自然的方式开发应用。值得注意的是,TypeScrip…

力扣 面试题 05.06. 整数转换

思路: 牵扯到二进制数,基本上要考虑位运算符,相关知识可以见http://t.csdnimg.cn/fzts7 之前做过类似的题目,大致思路就是先用按位异或^找出不同位,再用n&(n-1)计算出不同位的个数&#x…

nuxt项目搭建

1.先下载nuxt脚手架 yarn create nuxt-app <项目名>&#xff0c;记得安装完项目&#xff0c;npm i,下载node包 目录介绍 components 存放组件分别是头部&#xff08;包含导航&#xff09;和底部 layouts 页面布局&#xff0c;实现一个页面整体架构规则&#xff0c;头…

Sora 全网最全资料

大家好,本资料库是全网集体智慧的结晶,通过这个资料库,我们希望能够为读者提供一个全方位、多角度了解和研究Sora大模型的平台。每一部分都旨在深入探讨Sora大模型的不同方面,从技术细节到社会影响,再到未来展望,以确保读者能够获得最全面的信息和洞见。 📁一. 概念和…

yolov5导出onnx转engine推理

yolov5导出注意事项 配置 需要提供配置文件和权重文件&#xff0c;不然导出模型不能正常推理。 默认提供检测头。 ModuleNotFoundError: No module named ‘tensorrt’安装TensorRT-python发现报错 由于ModuleNotFoundError: No module named ‘tensorrt’安装TensorRT-pyt…

Android14 InputManager-InputManagerService环境的构造

IMS分为Java层与Native层两个部分&#xff0c;其启动过程是从Java部分的初始化开始&#xff0c;进而完成Native部分的初始化。 □创建新的IMS对象。 □调用IMS对象的start&#xff08;&#xff09;函数完成启动 同其他系统服务一样&#xff0c;IMS在SystemServer中的ServerT…

不要抱怨,不如抱 Java 运算符吧 (1)

本篇会加入个人的所谓‘鱼式疯言’ ❤️❤️❤️鱼式疯言:❤️❤️❤️此疯言非彼疯言 而是理解过并总结出来通俗易懂的大白话, 小编会尽可能的在每个概念后插入鱼式疯言,帮助大家理解的. &#x1f92d;&#x1f92d;&#x1f92d;可能说的不是那么严谨.但小编初心是能让更多人…

mplfinance 使用make_addplot做复杂股票走势图

mplfinance 使用make_addplot做复杂股票走势图 1.代码 import talib as tb import pandas as pd import mplfinance as mpfimport matplotlib.pyplot as pltplt.rcParams[font.sans-serif][simHei] # 以黑体显示中文 plt.rcParams[axes.unicode_minus]False # 解决保存图像符…

Meta 发布 MMCSG (多模态智能眼镜对话数据集)

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

LeetCode 热题 100 Day01

哈希模块 哈希结构&#xff1a; 哈希结构&#xff0c;即hash table&#xff0c;哈希表|散列表结构。 图摘自《代码随想录》 哈希表本质上表示的元素和索引的一种映射关系。 若查找某个数组中第n个元素&#xff0c;有两种方法&#xff1a; 1.从头遍历&#xff0c;复杂度&#xf…

Java 学习和实践笔记(15):面向过程和面象对象其实很简单!

学完这一节&#xff0c;才真正明白了什么叫面向对象和面向过程&#xff0c;其实很简单~ 第一个例子&#xff1a;怎样把大象装进冰箱 这个很清楚很容易地可以列出第一步。 第二个例子&#xff1a;怎样制造一台汽车 这个就很难确定哪一步做第一步。 面向过程和面向对象的区别 …

【二十六】【C++】Map和Set

K模型与KV模型 在数据结构中&#xff0c;二叉搜索树&#xff08;BST&#xff09;的应用通常围绕着两种基本模型&#xff1a;键模型&#xff08;K模型&#xff09;和键值对模型&#xff08;KV模型&#xff09;。这两种模型定义了树中节点存储数据的方式&#xff0c;以及如何通过…

区块链游戏解说:什么是 Planet IX

作者&#xff1a;lesleyfootprint.network 编译&#xff1a;cicifootprint.network 数据源&#xff1a;Planet IX Dashboard 什么是 Planet IX Planet IX&#xff0c;一个由原生 IX TOKEN 推动的 Web3 玩赚平台。作为一款 GameFi 策略游戏&#xff0c; Planet IX 上的每项资…

如何修改docker容器的端口映射

要修改 Docker 容器的端口映射&#xff0c;你需要停止并删除现有的容器&#xff0c;然后使用新的端口映射重新运行容器。以下是详细步骤&#xff1a; 停止容器&#xff1a; 使用 docker stop 命令停止正在运行的容器。替换 <container_id> 为你要停止的容器的 ID 或者容器…

浅谈消防设备电源监控系统在高层建筑中的应用

摘要&#xff1a;火灾发生后&#xff0c;非消防电源被切断&#xff0c;火灾报警系统应立即接通消防电源&#xff0c;满足消防设施 处于良好运行状态&#xff0c;对消防设备电源状态的监控是十分必要的。介绍消防设备电源的重要性 和三种类型&#xff0c;分析消防设备电源监控系…

Python中HTTP重定向和重定向链的处理:网络迷宫的导航专家

在网络世界里&#xff0c;有时候&#xff0c;我们访问的URL并不是直接指向我们想要的内容&#xff0c;而是像是一个神秘的迷宫&#xff0c;指引我们绕来绕去。这时候&#xff0c;HTTP重定向就像是迷宫里的路标&#xff0c;告诉我们“嘿&#xff0c;你要找的东西不在这里&#x…

这才是No.1的门禁管理技巧!赶紧抄作业

随着社会的不断发展和科技的飞速进步&#xff0c;安全管理成为各个领域不可或缺的重要环节。在这个背景下&#xff0c;门禁监控系统作为一种先进而高效的安全管理工具逐渐受到了广泛关注和应用。 客户案例 企业大厦管理 在江苏某繁忙的商业大厦中&#xff0c;管理人员常常面临…