Day3 机器学习监督学习——决策树原理

.决策树的原理

1.机器学习中分类和预测算法的评估:

  准确率

  速度

  强壮型:有数据缺失或错误时算法的运行

  可规模性:数量级规模比较大

  可解释性

2.决策树(decision tree)

  决策树是一个类似于流程图的树结构:其中,每个内部结点表示在一个属性上的测试,每一个分支代表一个属性输出,而每个树叶节点代表类或类分布。树的最顶层是根节点。

3.熵(entropy)概念:

  信息比较抽象,度量信息,香农提出了“信息熵”的概念。变量的不确定性越大,熵也就越大。比特来衡量信息的多少。

4.决策树归纳算法(ID3)——Information Gain

  选择属性判断节点:信息获取量(通过A来作为节点分类获取了多少信息)

  a.先计算出目标函数的信息熵

  b.计算每一个属性的信息熵

  c.用目标函数与变量(属性)的信息熵作差,结果最大的属性作为第一个判断节点。不断重复此过程,创建当前节点,增长决策树。其中在处理连续型变量的属性的时候,我们需要将连续变量给离散化。

此外,还有一些其他的算法,他们有相同的地方,也有不同的地方。

  共同点:贪心算法,自上而下。

  不同点:属性选择度量方案不同

5.树减枝叶(避免overfitting)

  a.先剪枝:分到一定程度不再分

  b.后剪枝:完全先把树建好,在根据一定标准剪叶子。

6.决策树优缺点:

  优点:直观,小规模数据集有效

  缺点:在处理连续型变量时不好;类别较多时,错误增加的比较多;可规模性一般。

二.决策树的实现

1.Python机器学习的库:scikit-learn

1.1特性:

  简单高效地数据挖掘和机器学习分析

  对所有用户开放,根据不同需求高度可重用性

  基于Numpy,SciPy和matplotlib

  开源,商用级别:获得BSD许可

1.2覆盖问题领域:

  分类(classification),回归(regression),聚类(clustering),降维(dimensionality reduction)

  模型选择(model selection),预处理(preprocessing)

Day3监督学习——决策树原理的更多相关文章

  1. 监督学习——决策树理论与实践(下):回归决策树(CART)

    介绍 决策树分为分类决策树和回归决策树: 上一篇介绍了分类决策树以及Python实现分类决策树: 监督学习——决策树理论与实践(上):分类决策树          决策树是一种依托决策而建立起来的一种 ...

  2. 机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理、源码解析及测试

    机器学习实战(Machine Learning in Action)学习笔记————03.决策树原理.源码解析及测试 关键字:决策树.python.源码解析.测试作者:米仓山下时间:2018-10-2 ...

  3. 1. 决策树(Decision Tree)-决策树原理

    1. 决策树(Decision Tree)-决策树原理 2. 决策树(Decision Tree)-ID3.C4.5.CART比较 1. 前言 决策树是一种基本的分类和回归方法.决策树呈树形结构,在分 ...

  4. 决策树原理、Scikit-learn实现及其在生物信息中的应用

    之前转过一篇文章:2016年GitHub排名前20的Python机器学习开源项目(转),说明现在已经有了很多很好的机器学习的包,我们不必从底层开始实现,只要懂点算法.会看文档,一般人也能玩好机器学习. ...

  5. 决策树原理实例(python代码实现)

    决策数(Decision Tree)在机器学习中也是比较常见的一种算法,属于监督学习中的一种.看字面意思应该也比较容易理解,相比其他算法比如支持向量机(SVM)或神经网络,似乎决策树感觉“亲切”许多. ...

  6. 监督学习——决策树理论与实践(上):分类决策树

    1. 介绍         决策树是一种依托决策而建立起来的一种树.在机器学习中,决策树是一种预测模型,代表的是一种对象属性与对象值之间的一种映射关系,每一个节点代表某个对象/分类,树中的每一个分叉路 ...

  7. spark 机器学习 决策树 原理(一)

    1.什么是决策树 决策树(decision tree)是一个树结构(可以是二叉树或者非二叉树).决策树分为分类树和回归树两种,分类树对离散变量做决策树,回归树对连续变量做决策树. 其中每个非叶节点表示 ...

  8. 决策树(ID3 )原理及实现

    1.决策树原理 1.1.定义 分类决策树模型是一种描述对实例进行分类的树形结构.决策树由结点和有向边组成.结点有两种类型:内部节点和叶节点,内部节点表示一个特征或属性,叶节点表示一个类. 举一个通俗的 ...

  9. 决策树ID3原理及R语言python代码实现(西瓜书)

    决策树ID3原理及R语言python代码实现(西瓜书) 摘要: 决策树是机器学习中一种非常常见的分类与回归方法,可以认为是if-else结构的规则.分类决策树是由节点和有向边组成的树形结构,节点表示特 ...

随机推荐

  1. const与define的区别

    const与#define最大的差别,Const在堆栈分配了空间,而#define只是把具体数值 直接传递到目标变量罢了.或者说,const的常量是一个Run-Time的概念,他在程 序中确确实实的存 ...

  2. win7 64位 [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认

    问题描述: VBA程序连接Access数据库,Excel中执行相关宏,提示[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认 解决方案: 1.重新安装 AccessDa ...

  3. ajax上传json串格式的数据的处理 以及 js操作dom的另一种方式

  4. A Plug for UNIX UVA - 753(网络流)

    题意:n个插座,m个设备及其插头类型,k种转换器,没有转换器的情况下插头只能插到类型名称相同的插座中,问最少剩几个不匹配的设备 lrj紫书里面讲得挺好的. 先跑一遍floyd,看看插头类型a能否转换为 ...

  5. Linux开机自动挂载文件fstab介绍

    这个文件描述系统中各种文件系统的信息.一般而言,应用程序仅读取这个文件,而不对它进行写操作.对它的维护是系统管理员的工作. [root@localhost mnt]# cat /etc/fstab # ...

  6. JAVA 正则表达式的三种模式: 贪婪, 勉强和占有的讨论

    假设待处理的字符串是  xfooxxxxxxfoo 模式.*foo (贪婪模式): 模式分为子模式p1(.*)和子模式p2(foo)两个部分. 其中p1中的量词匹配方式使用默认方式(贪婪型). 匹配开 ...

  7. SpringBoot dubbo之class is not visible from class loader

    使用了两个类加载器加载了同一个类,区分一个Class对象是否相等要看包名+类名,也要看是否是同一个类加载器 方案一,排查掉spring-boot-devtools模块的maven引入可以解决,这时候所 ...

  8. [C/C++语言标准] ISO C99/ ISO C11/ ISO C++11/ ISO C++14/ISO C++17 Downloads

    语言法典,C/C++社区人手一份,技术讨(hu)论(peng)必备 ISO IEC C99 https://files.cnblogs.com/files/racaljk/ISO_C99.pdf IS ...

  9. 远程私有库的创建 pod 组件化

    参考:   http://www.cnblogs.com/hs-funky/p/6780203.html http://www.jianshu.com/p/4b63dfbd8be7 http://ww ...

  10. mybatis主键返回语句 使用方法,就是实体类.getid即可拿到返回的id

    <insert id="insertSelective" parameterType="com.o2o.Content" useGeneratedKeys ...