决策树学习之一——干什么

在撸决策树的时候总有这么一个问题一直重复在我脑海里出现:我要撸出来的到底是一个什么东西?一堆数据,喂给它,它吃进去,自行向下生长,然后呢?也正因为这个问题的困扰,一直没撸顺决策树,总觉得july大那篇blog缺了点什么。这两天连续翻了好几本书,终于弄明白了这个玩意儿的作用(也就是我写出来代码的需求分析)。

       决策树的分支机理这里掠过,因为提及的很多了,ID3,C4.5,估计大家都懂,那么决策树拿来干什么?

       很简单,它是用于预测的,举个栗子:我手头有一堆萌新的简历,然后我肯定要按某种顺序挨个面他们吧,但人太多,我想针对性地面一些人。那么很好,我把以往我收到的萌新的简历和面试结果扔进某种决策树,它应当返回一个树结构,最终的节点的标志在于录取/未录取(以下简称P/N),那么我要做的就是把新的萌新们的简历再扔进这个树结构,根据它原先的分支进行分类,然后挑出所有以P为标志的萌新简历,挨个面试他们,完结。

用阐述性的语言来说,决策树通过对给出的学习样本进行学习,自行产生出一个树结构,每个叶节点都对应一簇数据,这一簇数据导向的结果是相同的;之后,将该树结构抽离出来,对所需要进行分类并预测结果的数据进行分类,并预测其结果。这就是决策树的活动过程。

需求分析:

0.学习样本数据,树依托于此建立。

1.一个自行向下生长的树(依赖于某种规则分支),并依托某些控制参数终止树长成。

2.抽离出树的分支原则。

3.对要进行分类的数据基于树的分支原则进行分支,得出的叶与原树的叶具有相同的返回值,即我们所需求的预测值。

那么为什么说决策树会overfitting(过度拟合数据)?因为它仅仅针对数据进行分类,分类必定有对应返回值,也即意味着,它只能处理它见过的东西,碰上没见过的就不知道怎么分类了,此外训练数据若是不是正常的数据的话,也会非常的影响到数据的分类,因为整个决策树的基石就是训练数据,基石立歪了,树也肯定长歪了。


此即鄙人浅见。

写于一个与沼跃鱼大小姐欣赏滕斯泰特与伦敦爱乐的马勒第五的夜晚。

你可能感兴趣的:(Work)