| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> 初识决策树 -> 正文阅读 |
|
[人工智能]初识决策树 |
决策树的生成主要分以下两步,这两步通常通过学习已经知道分类结果的样本来实现。 1. 节点的分裂:一般当一个节点所代表的属性无法给出判断时,则选择将这一节点分成2个 子节点(如不是二叉树的情况会分成n个子节点) 2. 阈值的确定:选择适当的阈值使得分类错误率最小 (Training Error)。 比较常用的决策树有ID3,C4.5和CART(Classification And Regression Tree),CART的分类效果一般优于其他决策树。 ID3: 由增熵(Entropy)原理来决定那个做父节点,那个节点需要分裂。对于一组数据,熵越小说明分类结果越好。熵定义如下: Entropy=- sum [p(x_i) * log2(P(x_i) ] 其中p(x_i) 为x_i出现的概率。假如是2分类问题,当A类和B类各占50%的时候, Entropy = - (0.5*log_2( 0.5)+0.5*log_2( 0.5))= 1 当只有A类,或只有B类的时候, Entropy= - (1*log_2( 1)+0)=0 枚举每个属性,计算熵减 熵减为父节点的熵减去所有子节点的熵
结果: {'no surfacing': {0: 'no', 1: {'flippers': {0: 'no', 1: 'yes'}}}} C4.5:通过对ID3的学习,可以知道ID3存在一个问题,那就是越细小的分割分类错误率越小,所以ID3会越分越细。为了避免分割太细,c4.5对ID3进行了改进,C4.5中,优化项要除以分割太细的代价,这个比值叫做信息增益率,显然分割太细分母增加,信息增益率会降低。除此之外,其他的原理和ID3相同。 CART:分类回归树,CART是一个二叉树 CART只能将一个父节点分为2个子节点。CART用GINI指数来决定如何分裂: GINI指数:总体内包含的类别越杂乱,GINI指数就越大(跟熵的概念很相似)。 CART还是一个回归树,回归解析用来决定分布是否终止。理想地说每一个叶节点里都只有一个类别时分类应该停止,但是很多数据并不容易完全划分,或者完全划分需要很多次分裂,必然造成很长的运行时间,所以CART可以对每个叶节点里的数据分析其均值方差,当方差小于一定值可以终止分裂,以换取计算成本的降低。 CART和ID3一样,存在偏向细小分割,即过度学习(过度拟合的问题),为了解决这一问题,对特别长的树进行剪枝处理,直接剪掉。 以上的决策树训练的时候,一般会采取Cross-Validation法 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 22:47:41- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |