美文网首页
决策树算法概念以及代码实现

决策树算法概念以及代码实现

作者: yep_58ed | 来源:发表于2017-12-22 20:20 被阅读0次

一、决策树(ID3)算法

概念:采用西瓜书上的描述来说,决策树是一类常见的机器学习方法,以二分类为例,我们希望从给定的训练数据集学得一个模型用以对新示例进行分类,把这个样本分类的任务,可看作对“当前样本属于正类吗?”这个问题的“决策” 或“判定”过程。顾名思义,决策树是基于树结构来进行决策的,这恰是人类在面临决策问题时一种很自然的处理机制。

例如:判断一个西瓜是否好瓜可以通过如下决策树

现在则给出个问题,为什么最开始会先看 “色泽” 而不是先看 “根蒂” 或者 “敲声”?那么按照生活习惯的理解可以认为色泽属性在某种程度上对于是不是好瓜这个结果的影响最大,所以看一个瓜是不是好瓜我们一般先从色泽上面开始观察,即属性优先级上 “色泽” 要优于其他属性,所以构建决策树的关键问题出来了!那就是:

决策树的关键问题 :如何从属性集中选择最优划分属性出来!!

那么现在假设我们需要训练一个用来对西瓜进行分类的决策树:首先需要使用一部分既有的数据集来作训练数据集,则若给定如下数据

总共提供17个西瓜给我们做训练数据集,每个瓜有6个属性即{“色泽”,“根蒂”,“敲声”,“纹理”,“脐部”,“触感”},有两个分类{“是好瓜”,“不是好瓜”}

那么怎么判断哪个属性是最优划分属性?

引入一个 信息熵” 的概念:

D是样本集,|y| 是数据的类别数,这儿 |y| = 2。pk是指当前样本集合D中第K类样本所占的比例。

当然光凭信息熵还不能够,还要引入一个 “信息增益” 的概念

在这儿根节点的信息熵为:Ent (D) = - (8/17 * log 8/17 + 9/17 * log 9/17) = 0.998

相关文章

  • 决策树算法概念以及代码实现

    一、决策树(ID3)算法 概念:采用西瓜书上的描述来说,决策树是一类常见的机器学习方法,以二分类为例,我们希望从给...

  • JS简单实现决策树(ID3算法)

    推荐阅读:ID3算法 wiki决策树算法及实现完整示例代码:JS简单实现决策树(ID3算法)_demo.html ...

  • Python学习——决策树中纯度算法的实现

    决策树 决策树算法是机器学习中的一个基础算法,该算法有着诸多的优点。在python中实现决策树,现阶段都已经集成中...

  • ID3和C4.5决策树算法总结及其ID3Python实现

    ID3和C4.5决策树算法总结及其ID3Python实现 1.决策树的算法流程 决策树的算法流程主要是:1.如果当...

  • 数据分析方法-决策树

    大家好,这篇文章我们探讨下,决策树算法的相关的知识,决策树是一种分类算法,现在也可以应用与回归,决策树算法的实现有...

  • 理论-决策树

    ID3算法Building Decision Trees in Python如何实现并应用决策树算法?

  • 通俗地说决策树算法(三)sklearn决策树实战

    前情提要 通俗地说决策树算法(一)基础概念介绍 通俗地说决策树算法(二)实例解析 上面两篇介绍了那么多决策树的知识...

  • 决策树简记

    具有不同划分准则的算法决策树原理剖析及实现(ID3)理解决策树算法(实例详解)-ID3算法与C4.5算法 ID3(...

  • [NLP]TFIDF算法简介

    本文主要介绍了自然语言处理领域中文本表示的一个重要算法:TF-IDF算法。包括其基本概念,以及简单的代码实现。 T...

  • Decision tree

    Decision tree(决策树) (注:本文并非原创,但修改了原文中几处代码错误以及部分概念描述的模糊之处,新...

网友评论

      本文标题:决策树算法概念以及代码实现

      本文链接:https://www.haomeiwen.com/subject/vtotgxtx.html