尧图网站设计 尧图网站设计YAOTU DESIGN
ARTICLE DETAIL

资讯详情

深耕网站设计与一线实操的经验洞察。

机器学习入门第三章:决策树分类器-理论

机器学习入门第三章:决策树分类器-理论 H 欢迎来到, 用于监督学习的, 第三种基本分类算法, 决策树。如同前面的章节, 也就是第1章: 朴素贝叶斯和第⒉章: SVM分类器那种情况一样, 本章同样被划分成两部分, 分别是理论, 以及编码练习。在这一部分里头, 我们会去探讨理论以及那决策树背后所开展的工作, 我们会遇上该算法的一些数学层面, 也就是熵跟信息增益, 在第二部分当中, 我们对库里面用于决策树分类器的垃圾邮件分类代码进行了修改, 我们还会对朴素贝叶斯和SVM的准确性予以比较。Dark side of and ! :D0.动机试想存在两个分别以黑色圆圈以及蓝色方块予以表示的类的图, 能够去绘制一条单独的分隔线吗, 或许并不存在这种情况。你可以去给这些而画出条线路吗 , 那些线?我们将需要多个行来划分类。 与下图类似我们需要两条线, 一条用于关于x的情况, 另一条用于关于y的情况。在我们所需要的两条线之中, 其中一条是依照x的阈值来进行分开的, 而另一条则是依据y的阈值予以分开的。您现在已经猜到了决策树将要做什么。有如图所示的工作区域, 决策树分类器会通过识别线, 频繁地将其重复划分成子部分, 之所以说重复, 是因可能存在两个同类别但距离远的区域被另一区域分隔开。那么它何时终止· 要么将其划分为纯类仅包含单个类的成员· 满足分类器属性的某些条件。我们很快将看到这两点。1.杂质于上述的这般划分里头, 我们清晰地进行了班级划分。然而, 要是我们碰到了如下这般的情况该如何是好呢?并非纯粹意味着, 我们存在把一类鉴定为另一类的迹象, 这或许是由下述缘由所引发的。· 我们没有可用的功能来划分类。这一定百分比的杂质, 我们能够忍受, 进而停止下进一步的除法操作去提高性能, 毕竟在准确性与性能之间向来都得进行取舍。举个例子, 于第二种情形里, 当我们所余的元素数量比x要少的时候, 我们能够终止除法。这亦被称作基尼杂质。based on some .2.熵熵乃是元素的随机程度, 换而言之, 它是杂质的一种量度方式。于数学范畴之中, 能够借助以下几项所对应的概率予以计算:p(x) is of item x.它是概率x项x的概率对数的负和。比如说, 要是我们把项目当作投掷事件里骰子面出现的次数呈现为1123这种情况, 那么熵就是。概率中, p(1)的值是0.5 , p(2)的值是0.25 , p(3)的值是0. 等于负的(0.5乘以以相关底数的0.5的对数)减去(0.25乘以以相关底数的0.25的对数)再减去(0.25乘以以相关底数的0.25的对数)结果是0.45。3.信息获取设想一下, 我们存在着多个具备用来划分当前工作集的功能, 那么, 我们究竟应该去挑选哪一个功能来实施划分操作呢, 说不定这样做能够降低我们的杂质。假设, 我们按照如下所展示的那样, 将类划分成多个分支, 则, 任何节点上的信息增益被定义为。Gain (n) (x) — (* ( for ))这需要一点解释假设我们最初有以下课程可以使用假设我们根据属性对其进行划分可被2整除根级熵是0.66, 左子级熵是0.45, 加权值等于4除以9再乘以0.45, 结果是0.2, 右子级熵是0.29, 加权值等于5除以9再乘以0.29, 结果是0.16, 信息增益等于0.66减去。0.2 0.16 0.3倘若我们把决策当作质数, 而非进行除以2的操作, 那么请核查, 我们获取了哪些信息增益? 在此种情形下, 哪种方法更为优良?从每一阶段来看, 决策树会去选择那种能够提供最佳信息增益的决策树。当出现信息增益为0的状况时, 这就意味着该功能对于工作集而言, 完全不存在划分行为。让我们解决一个例子倘若您早已知晓了决策树的基础常识, 那就能够去解决示例, 进而明白其运行机制。假设我们有以下各种条件下打高尔夫球的数据。现在如果天气条件为前景阴雨温度凉爽湿度高大风假我们应该打高尔夫球吗在起始阶段, 我们获取到了结果, 这是由于其中Y代表是, N代表否按照规定的顺序予以执行。当下, 该根节点的熵值为0.3, 此刻尝试针对各种预测变量的相关前景, 诸如温度、湿度以及Windy展开划分操作, 并且分别计算信息增益。究竟哪一个信息增益是最高的呢? 举例来说, 要是基于某种依据进行划分的话, 那么划分情况如下: 对于Rainy而言, 呈现的是NNN熵等于0对于Sunny来说, 呈现的是YYN熵等于0.041对于阴天来讲, 呈现的是YY熵等于0。所以, 信息增益等于0.3减去。0 3/8* 0.041 0假设等于0.28, 在其他状况下, 去试着尝试一回。鉴于划分的时候, 信息增益是最大的。当下, Rainy相关的杂质是0。在此就不再过多叙述了。我们要把Sunny分开, 要是除以Windy, 我们会得到最大的信息增益。Sunny是YYN, Windy呢? 答案是是为N, 否为YY。所以决策树看样子就如下图呈现的那样。不存在预测数据是: 下雨, 温度是: 凉爽, 湿度是: 高, 多风情况是: 错误。依据结果从树上流下来, 我们最先检查Rainy? 答案是不, 那我们不打高尔夫球句号。我期望这一节能够对理解决策树分类器背后所进行的工作起到助力作用。要是您存有任何的意见, 或是建议, 又或者是提议, 那么请在下方将其写下来。最后的想法进行有效划分所依据的是最大信息增益, 这对于决策树分类器而言是关键所在。然而了, 在现实的世界当中, 把数量以百万计的数据划分成纯类这种情况, 实际上是不具备可行性的, 原因在于这有可能需要耗费更久的训练时间, 所以, 当满足特定的某些参数, 比如说杂质百分比的时候, 我们就会在树节点所处的位置停止。这一点我们会在编码练习时看到。下个部分里, 我们会运用库于其中撰写决策树分类器, 我们要调节某些参数借着容忍些许杂质去获更高精度。在以下各节当中, 我们去定义一些和决策树有关联的术语, 之后运用示例来执行那些计算。这篇文章, 是从Savan Patel所撰写的《3 : Tree — 》那儿翻译过来的, 参考了相关内容。)
返回列表