举例:判断是否喜欢玩游戏

决策树与集成算法

机器学习算法并没有哪个好哪个不好,而是哪个算法更适合于那种数据类型

决策顺序:先按照重要的,然后次重要的,依次类推

决策树与集成算法

决策树与集成算法

即针对每个特征,都做一次切割分类,特征越多越好吗?

决策树与集成算法

根据什么依据去选择根节点?如何切分?

决策树与集成算法

决策树与集成算法

希望透过一次分支后,熵值越小越好。

pi:取到某一个类别的概率

对数函数曲线如下,由于概率值pi属于【0-1】区间,因此对数值恒为负数,H(x)函数中的-p*lg(p) 负号就负责将结果变为正数; 概率越小,对数值负的越厉害,即概率越小,熵越大

决策树与集成算法

决策树与集成算法

信息增益最大的为大当家,其次二当家,三当家,以此类推

决策树与集成算法

决策树与集成算法

决策树与集成算法

Outlook=summy时,H(x) = - [2/5 * lg(2/5) + 3/5 * lg(3/5)] = 0.971

Outlook=overcast时,H(x) = - [0 * lg(0) + 1 * lg(1)] = 0  特别纯粹的一个单一结果,必然发生,熵值为0

Outlook=rainy时,H(x) = - [2/5 * lg(2/5) + 3/5 * lg(3/5)] = 0.971

决策树与集成算法

上式的熵值为,把Outlook作为根节点的熵值

决策树与集成算法

ID3

原始数据中,除了outlook/temperature/humidity/windy 四个特征,还有一个ID编号,每个样本都有一个唯一的编号。14行这14个数据,每行一个ID,对应一个特征。

如果以ID为特征,作为根节点,进行遍历,则ID1遍历后对应的是自己,ID2对应的也是自己,。。。,一直到ID14,对应的都是自己那一个样本;即以ID为根节点遍历后,每个样本都是一个独立的子节点,每个叶子节点对应的熵值都是0,即最终的熵值也是0,即信息增益最大,即以ID为特征进行遍历最佳。

ID只是一个编号,对最终结果没有影响,即ID对应的属性非常稀疏,每个样本的结果又是固定的,熵值很低

C4.5:

ID3 算法信息增益很大,那它自身的熵值又是什么样呢?

ID[1,2,3,...,14], 熵值 = - 1/14 * lg(1/14) , 得到自身的熵值是一个极大的熵值。信息增益率:信息增益/自身的熵值

CART

越纯,概率越接近于1,基尼系数越小

决策树与集成算法

如果拿到的原始数据是连续值,最好先进行离散化,即进行二分,遍历所有的值,找出在哪个点进行二分更合理。

决策树与集成算法

假如有100个特征,每次按照每个特征进行切分,问题是这棵树是否过大?

如果特征多,每次都用到每个特征,则会导致这棵树过大,则需要修整一下,剪枝,防止过拟合。

假设有100个数据样本,构造一棵树,可以将100个样本都落在对应的叶子节点上,每个叶子节点无休止的分割下去,可能有些叶子节点有两个,则继续切割,所有样本都会落到唯一的叶子节点上面,每个叶子节点只有一个样本,即所有的叶子节点都极度纯净,理论上,决策树可以把每一个数据完全分开。但效果不佳,泛化能力较弱

过拟合:训练集上表现很好,测试集上表现很差。

预剪枝:N个特征对应决策树的深度为N,透过限制特征个数来限制决策树的深度

决策树与集成算法

SVM/神经网络等算法,无法做可视化展示,且计算复杂

决策树算法便于分析/可视化展示,效果还不错。

根节点算第一级深度,每向下加一层,深度加1

不可分给的节点为叶子节点。

如果限制深度为3,则效果如下,只保留前三层,第三层以下均不再继续切分

决策树与集成算法

1- 限制叶子节点个数:如下图,所有不可分割的最终节点就是叶子节点,限制的条件为限制圈起来的叶子节点的总书目

决策树与集成算法

2- 如果限制叶子结点个数为5,则子节点个数到达5个时,就不会继续分裂,若下图,只有编号为1-5 5个子节点。深度为第3层切割完成后<到了第4层>,由于叶子节点的数目达到5个,则停止切割

决策树与集成算法

3- 限制叶子节点样本数:每个叶子节点都有对应的各自的样本数。

如果限制的最小样本数为10,当某叶子节点样本数为8,小于10,则不再继续分裂

4- 限制信息增益:基尼系数差值

后剪枝

C(T): 当前损失:叶子节点的样本数 * 熵值或基尼系数

计算每个叶子节点的<叶子节点的样本数 * 熵值或基尼系数>,然后再把它们累加在一起

alpha * |Tleaf|:限制叶子节点个数

将alpha * |Tleaf| 加入到损失函数中,目的是让整体损失值越小越好(叶子节点越多,损失越大)

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

决策树与集成算法

 

相关文章:

  • 2021-05-10
  • 2021-05-08
  • 2021-10-10
  • 2021-09-01
猜你喜欢
  • 2021-11-30
  • 2021-08-12
  • 2021-04-06
  • 2022-12-23
  • 2021-12-28
  • 2021-09-12
相关资源
相似解决方案