算法原理

从逻辑角度:通过一系列if-else语句进行多重判断,比如白富美的判断条件(“白”“富”“美”)。
从几何角度:根据定义的标准进行样本空间的划分。
以二分类问题为例,我们希望通过一系列的条件进行分类。
以下是算法原理的伪代码图:
机器学习西瓜书之决策树-LMLPHP
比较形象的图:
机器学习西瓜书之决策树-LMLPHP

剪枝处理

目的:为了防止模型在训练的过程中将自己的一些特征当成了所有模型都会有的特征,手动将一些分支去掉,减少分支和过拟合的操作。

  • 预剪枝操作:根据经验判断事先将一些用于判断的分支剪掉

  • 后剪枝操作:用剪去一些分支作为实验,判断最后的结果,然后判断要不要剪枝。

比较形象的一幅图:
机器学习西瓜书之决策树-LMLPHP

连续值处理

上面分析的是离散情况下的处理,但是现实生活中更多见的是连续值的处理。
对于连续值,用下面公式进行划分
机器学习西瓜书之决策树-LMLPHP

缺失值处理

机器学习西瓜书之决策树-LMLPHP

多变量决策树

机器学习西瓜书之决策树-LMLPHP

个人感觉这个图非常形象表示了多变量决策树,相较于单变量决策树的线性判别,多变量分类目的是实现用光滑的曲线实现分类。

02-18 12:45