其中为全部样本集合,是属性所有取值的集合,是的其中一个属性值,是中属性的
值为的样例集合,为中所含样例数。
在决策树的每一个非叶子结点划分之前,先计算每一个属性所带来的信息增益,选择最大信息增益的属性来划
分,因为信息增益越大,区分样本的能力就越强,越具有代表性,很显然这是一种自顶向下的贪心策略。以上
就是ID3算法的核心思想。
3.决策树停止的条件
如果发生以下的情况,决策树将停止分割
1.改群数据的每一笔数据已经归类到每一类数据中,即数据已经不能继续在分。
2.该群数据已经找不到新的属性进行节点分割
3.该群数据没有任何未处理的数据
4. ID3算法的C++实现
接下来开始用C++实现ID3算法,包括以下文件
ID3.h
[cpp]