决策树
前面我们讲了线性回归和朴素贝叶斯分类模型。前者只能做回归,后者只能做分类。但本文中要讲的决策树模型,却既可以用于分类,又可以用于回归。
什么是决策树
决策树是一种非常基础又常见的机器学习模型。
一棵决策树(Decision Tree)是一个树结构(可以是二叉树或非二叉树),每个非叶节点对应一个特征,该节点的每个分支代表这个特征的一个取值,而每个叶节点存放一个类别或一个回归函数。
使用决策树进行决策的过程就是从根节点开始,提取出待分类项中相应的特征,按照其值选择输出分支,依次向下,直到到达叶子节点,将叶子节点存放的类别或者回归函数的运算结果作为输出(决策)结果。
决策树的决策过程非常直观,容易被人理解,而且运算量相对小。它在机器学习当中非常重要。如果要列举“十大机器学习模型”的话,决策树应当位列前三。
直观理解决策树
下图是一个决策树的例子:
这棵树的作用,是对要不要接受一个 Offer 做出判断。
我们看到,这棵树一共有7个节点,其中有4个叶子节点和3个非叶子节点。它是一棵分类树,每个叶子节点对应一个类别。
那么有4个叶子节点,是说一共有4个类别吗?当然不是!从图中我们也可以看出,总共只有2个类别:accept offer(接受)和 decline offer(拒绝)