开始陆续介绍决策树与随机森林,理解原理与会用来做分类算法是其一,更重要的是要理解决策树构造的精髓并加以推广应用才是算融会贯通。
先来看看所谓的树结构,其实很简单,就是从一个节点往下依次不断分裂节点的一种结构,比如下面这个图描述的是根据一个人的信息(包括职业、年龄、收入、学历)去判断他是否有贷款的意向的树结构图:
可以看到,所谓的树结构其实就是一大堆有顺序的if-else条件判断语句的组合,如果职业是什么,走向对应分支,再如果年龄是什么,走向一条分支,一直到没有分支了为止。而我们的决策树就是想建立这样的一个组合条件的树结构,树的最底层给出分类的结果,这样给定一组(职业、年龄、收入、学历)的特征,在这个树结构中过一遍就能得到结果了。有一个宏观的认识我们再来细说决策树的构造过程。
第一步,从我们拥有的数据说起。
上面的树结构是最终的结果,而最开始我们并不知道这个结构, 大多数时候我们所拥有的只是训练样本,也就是特征以及标签,比如下面这样:
在实际情况中,所有的属性都可以数值化表示,比如职业属性的这一栏,可以用1,2,3,4代表不同的职业(工人,白领等),依次类推&