• Day3监督学习——决策树原理


    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特性:

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

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

      基于NumpySciPymatplotlib

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

    1.2覆盖问题领域:

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

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





  • 相关阅读:
    Python全栈day19(函数补充)
    Python全栈day18(三元运算,列表解析,生成器表达式)
    Python全栈day18(迭代器协议和for循环工作机制)
    KVM虚拟化
    Python使用函数实现把字符串转换成整数
    MySQL备份1356错误提示修复办法
    Python全栈day17(文件处理)
    CentOS添加PHP至环境变量
    CentOS7.2编译配置LNMP环境(MySQL5.7.20,PHP7.0.24)
    php查询mysql数据库 查询条件替中文字符串变量时无法查询
  • 原文地址:https://www.cnblogs.com/Michelle-Yang/p/6706220.html
Copyright © 2020-2023  润新知