机器学习笔记5-决策树

小编 2026-06-05 阅读:864 评论:0
机器学习笔记5-决策树 决策树是一种基本的分类与回归方法。决策树学习通常包括三个步骤:特征选择、决策树的生成和决策树的剪枝。一般一个决策树包含一个根结点,若干个内部结点和若干个叶结点。叶结点对...

机器学习笔记5-决策树

决策树是一种基本的分类与回归方法。决策树学习通常包括三个步骤:特征选择、决策树的生成和决策树的剪枝。一般一个决策树包含一个根结点,若干个内部结点和若干个叶结点。叶结点对应于决策结果,其它的每个结点则对应于一个属性测试。每个结点包含的样本集合根据属性测试的结果被分到子结点中。根结点包含样本全集。

  • 特征选择。特征选择会选取对训练数据具有分类能力的特征,这样可以提高决策树学习的效率。通常特征选择的准则是信息增益或信息增益比。
    (1)信息增益
    在信息论与概率统计中,熵(entropy)表示随机变量不确定性的度量,它由变量的分布决定,与变量的取值无关。假设X是一个取有限个值的离散随机变量,其概率分布为
    P(X=xi)=pi,i=1,2, ,nP(X = {x_i}) = {p_i},i = 1,2, \\cdots ,nP(X=xi)=pi,i=1,2,,n
    则其熵定义为
    H(X)=i=1npilogpiH(X) = - \\sum\\limits_{i = 1}^n {{p_i}\\log {p_i}}H(X)=i=1npilogpi
    熵越大,随机变量的不确定性就越大。设有随机变量(X,Y)(X,Y)(X,Y),其联合概率分布为
    P(X=xi,Y=yi)=pij,i=1,2, ,n;j=1,2, ,nP(X = {x_i},Y = {y_i}) = {p_{ij}},i = 1,2, \\cdots ,n{\\rm{; }}j = 1,2, \\cdots ,nP(X=xi,Y=yi)=pij,i=1,2,,n;j=1,2,,n
    条件熵H(YX)H(Y|X)H(YX)表示在已知随机变量X的条件下随机变量YYY的不确定性,定义为X给定条件下Y的条件概率分布的熵对X的数学期望
    H(YX)=i=1npiH(YX=xi)H(Y|X) = \\sum\\limits_{i = 1}^n {{p_i}} H(Y|X = {x_i})H(YX)=i=1npiH(YX=xi)
    pi=P(X=xi),i=1,2, ,n{p_i} = P(X = {x_i}),i = 1,2, \\cdots ,npi=P(X=xi),i=1,2,,n
    信息增益表示得知特征X的信息而使得类Y的信息的不确定性减少的程度。特征A对训练数据集D的信息增益g(D,A)g(D,A)g(D,A),定义为集合D的熵H(D)H(D)H(D)与特征A给定条件下D的条件熵H(DA)H(D|A)H(DA)之差,即
    g(D,A)=H(D)H(DA)g(D,A)=H(D)-H(D|A)g(D,A)=H(D)H(DA)
    (2)信息增益比
    以信息增益作为划分训练数据集的特征,存在偏向于选择取值较多的特征的问题。使用信息增益比可以对这一问题进行校正。特征A对训练数据集D的信息增益比gR(D,A)g_R(D,A)gR(D,A)定义为信心增益g(D,A)g(D,A)g(D,A)与训练数据集D关于特征A的值的熵HA(D)H_A(D)HA(D)之比,即gR(D,A)=g(D,A)HA(D){g_R}(D,A) = \\frac{{g(D,A)}}{{{H_A}(D)}}gR(D,A)=HA(D)g(D,A)

  • 决策树生成
    (1)ID3算法。利用信息增益选择特征,递归地构建决策树。具体地,从根结点开始,对结点计算所有可能的特征的信息增益,选择信息增益最大的特征作为节点的特征,由该特征的不同值建立子结点;再对子结点递归地调用以上方法,构建决策树。直到所有特征的信息增益均很小或没有特征可以选择为止。其中,建立子结点,计算新的信息增益是以子结点所包含的数据集为基础来计算的。
    (2)C4.5算法。该算法与ID3算法类似,但采用了信息增益比来选择特征。

  • 决策树的剪枝
    决策树学习时会过多考虑如何提高对训练数据的正确分类,从而构建出过于复杂的决策树,造成过拟合。这时候就需要剪枝,在已生成的树上裁掉一些子树或叶结点,从而提高泛化能力。决策树的剪枝可以通过引入正则化来实现,如定义决策树的损失函数为:
    Cα(T)=t=1TNtHt(T)+αT{C_\\alpha }(T) = \\sum\\limits_{t = 1}^{|T|} {{N_t}{H_t}(T) + \\alpha |T|}Cα(T)=t=1TNtHt(T)+αT(可理解为叶结点的熵加正则化)
    其中叶节点的个数为T|T|T,每个叶结点有NtN_tNt个样本点,其中k类的样本点有NtkN_{tk}Ntk个,Ht(T)=kNtkNtlogNtkNt{H_t}(T) = - \\sum\\limits_k {\\frac{{{N_{tk}}}}{{{N_t}}}\\log \\frac{{{N_{tk}}}}{{{N_t}}}}Ht(T)=kNtNtklogNtNtk,令C(T)=t=1TNtHt(T)C(T) = \\sum\\limits_{t = 1}^{|T|} {N_t}{H_t}(T)C(T)=t=1TNtHt(T),这时Cα(T)=C(T)+αTC_\\alpha(T)=C(T)+\\alpha|T|Cα(T)=C(T)+αTC(T)C(T)C(T)表示模型对训练数据的预测误差,T|T|T表示模型复杂度。损失函数完成了两者的平衡。
    树的剪枝算法:(1)计算每个结点的熵;(2)递归地从树的结点回缩,计算回缩前后的损失函数,如果变小则进行剪枝,即将父结点变为新的叶结点;(3)返回(2)直到不能继续,得最小的子树。

补充
CART算法
CART(分类与回归树)模型也是基于以上三个步骤,既可以用于分类,也可用于回归。CART假设决策树是二叉树,内部结点特征的取值为“是”和“否”。这样决策树递归地二分每个特征。

  • CART生成
    CART在特征选择时,对回归树用平方误差最小化准则,对分类树用基尼指数最小化准则。
    (1)回归树的生成
    回归树对应着输入空间(即特征空间)的一个划分以及在划分单元上的输出值。当输入空间划分确定时,可以用平方误差xiRm(yif(xi))2\\sum\\limits_{{x_i} \\in {R_m}} {{{({y_i} - f({x_i}))}^2}}xiR@font-face { font-family: "autolinktags"; src: url("https://www.seowoai.com/zb_users/plugin/AutoLinkTags/style/fonts/iconfont.woff2") format("woff2"), url("https://www.seowoai.com/zb_users/plugin/AutoLinkTags/style/fonts/iconfont.woff") format("woff"), url("https://www.seowoai.com/zb_users/plugin/AutoLinkTags/style/fonts/iconfont.ttf") format("truetype"); font-weight:normal; font-style:normal; }.tagslink::after { content:"\e613"; margin:2px 0 0 0px; font-size:12px; font-family:"autolinktags"; display:inline-block; vertical-align:top; }
版权声明

本文仅代表作者观点,不代表百度立场。
本文系作者授权百度百家发表,未经许可,不得转载。

热门文章
  • 机房智能化温湿度解决方式之POE供电以太网温湿度传感器

    机房智能化温湿度解决方式之POE供电以太网温湿度传感器
    机房智能化温湿度解决方式之POE供电以太网温湿度传感器 北京盈创力和电子科技有限公司 智能型TCP网口温湿度记录仪 北京IP网络温湿度记录仪厂家,北京盈创力和 北京智能型TCP网口温湿度记录仪IP网络温湿度记录仪是一种新型的基于TCP/IP协议双绞线以太网标准温湿度采集模块,利用它可以实现现场温度值、相对湿度值的采集,同时利用其自身的RJ45通信接口可以方便地和机房监控主机或交换机集线器进行联网。 工作于-40℃~85℃工业级带...
  • Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering

    Sequential Monte Carlo Methods (SMC) 序列蒙特卡洛/粒子滤波/Bootstrap Filtering
    Problem Statement 我们考虑一个具有马尔可夫性质、非线性、非高斯的状态空间模型(State Space Model):对于一个时间序列上的观测结果{yt,t∈N}\\{ y_t , t \\in N \\}{yt​,t∈N},我们认为每个观测结果yty_tyt​的生成依赖于一个无法直接观察的隐变量xt∈{xt,t∈N}x_t \\in \\{x_t , t \\in N \\}xt​∈{xt​,t∈N},即:p(...
  • HTTP状态保持的原理

    HTTP状态保持的原理
    a)在用户登录之后,浏览器返回响应的时候会在响应中添加上cookieb)浏览器接收到cookie之后会自动保存c)当用户再次请求同一服务器中的其他网页的时候,浏览器会自动带上之前保存的cookied)服务接收到请求之后可以请 request 对象中取到cookie 判断当前用户是否登录  Http是无状态的,就是连接时数据互通,关闭后...
  • Hive 系统函数及示例

    Hive 系统函数及示例
    查看所有系统函数 show functions; 函数分类 内置函数【系统函数】 数学函数: floor、round、ceil、cos、log2等 字符串函数: length、reverse、trim、lower、get_json_object、repeat等 收集函数: size 转换函数: cast 日期函数: year、month、datediff、date、date_add等 条件函数: coalesce、case…w...
  • CSRF的原理和防范措施

    CSRF的原理和防范措施
    a)攻击原理:i.用户C访问正常网站A时进行登录,浏览器保存A的cookieii.用户C再访问攻击网站B,网站B上有某个隐藏的链接或者图片标签会自动请求网站A的URL地址,例如表单提交,传指定的参数iii.而攻击网站B在访问网站A的时候,浏览器会自动带上网站A的cookieiv.所以网站A在接收到请求之后可判断当前用户是登录状态,所以...
标签列表