什么是决策树
决策是是一种基本的分类与回归方法。决策树称属性结构,在分类问题中,表示基于特征对实例进行分类的过程。它可以分为是if-then规则的集合,也可以是定义在特征空间与类空间上的条件概率分布,其主要优点是模型具有可读性,分类速度快。学习时,利用损失函数最小化原则建立决策树模型。决策树模型学习通常包含3个步骤:特征选择、决策树的生成和决策树的修剪。决策树三种经典的学习算法为ID3、C4.5、CART。
决策树学习算法
决策树学习本质上是从训练数据中归纳出一组分类规则。能够对训练数据集进行正确分类的决策树有很多个,也可能没有,我们要从中选择一个矛盾较小的决策树,同时又要有很好的泛化能力。
决策树学习用损失函数表示这一目标,通常为正则化的极大似然函数。决策树的学习策略是以损失函数为目标函数的最小化。当损失函数确定以后,学习问题就变成了以损失函数意义下钻则最优决策树的问题,因为从所有的可能的决策树中选取最优的决策树是NP完全问题,所以通常采用启发式的方法,得到的往往是次优的。
特征选择
决策树的学习算法通常是一个递归地选择最优特征,并根据该特征对训练数据进行分割,使得对各个子数据集有一个最好分类的过程,这一过程对应着对特征空间的划分,也对应着决策树的构建,即决策规则的建立。
特征选择的关键是其准则。常用的准则为:
ID3 — 信息增益
数据集未划分前的信息熵为:
H(D)=−∑k=1K|Ck||D|log2|Ck||D|
其中,K为数据集类别数。数据集按照某一特征A进行划分之后的条件信息熵:
H(D|A)=∑i=1n|Di||D|H(Di)