数据挖掘决策树算法ID3和C4.5复习课程课件.ppt
《数据挖掘决策树算法ID3和C4.5复习课程课件.ppt》由会员分享,可在线阅读,更多相关《数据挖掘决策树算法ID3和C4.5复习课程课件.ppt(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 决策树的建立 Decision Tree数据挖掘学习数据挖掘的工具-wekaweka是用Java语言编写的完整的软件资源Explorer是weka的主要图形用户界面weka存储数据的原始方式是ARFF或CSV文件格式ARFF文件是由一组实例组成,并且每组实例的属性值由逗号分开。(属性的类别)天气数据outlooktemperaturehumiditywindyplay1sunnyhothighFALSEno2sunnyhothighTRUEno3overcasthothighFALSEyes4rainymildhighFALSEyes5rainycoolnormalFALSEyes6rain
2、ycoolnormalTRUEno7overcastcoolnormalTRUEyes8sunnymildhighFALSEno9sunnycoolnormalFALSEyes10 rainymildnormalFALSEyes11 sunnymildnormalTRUEyes12 overcastmildhighTRUEyes13 overcasthotnormalFALSEyes14 rainymildhighTRUEno我们希望从上面的实例中找出者若干条规则,使得能够对这些实例的类做出判断(理想情况下)(举例)if outlook=sunny and=high then play=noi
3、f humidity=normal then play=yes 第二条规则错分了一个实例样本n决策节点:决策节点:1.最上面的节点称为根节点,是整个决策树的开始。最上面的节点称为根节点,是整个决策树的开始。2.每个节点子节点的个数与决策树在用的算法有关。(二每个节点子节点的个数与决策树在用的算法有关。(二叉树、多叉树)叉树、多叉树)n分支:判断过程,要么是新的决策节点,要么是叶子分支:判断过程,要么是新的决策节点,要么是叶子n树叶树叶:树的结尾,每个叶子代表一个类别树的结尾,每个叶子代表一个类别根节点叶子节点决策节点叶子节点叶子节点步骤:步骤:1.决策树的生成:由训练样本数据集(根据历史数据生
4、成、有一定综合程度的用于数据分析处理的数据集)生成2.决策树的剪枝:采用新的样本数据集(测试数据集或者训练数据修剪集)检验决策树生成过程中产生的初步规则,将影响预测准确性的分支剪除。ID3决策树算法描述1.试探性地选择一个属性放置在根节点,并对该属性的每个值产生一个分支。2.分裂根节点上的数据集,并移到子女节点,产生一棵局部树。3.对该划分的信息增益进行计算。4.对其他属性重复该过程。5.每个用于划分的属性产生一棵局部树。6.根据局部树的信息增益值,选择一棵增益最大的属性的局部树。7.对选定的局部树的每个子女节点重复以上1-6步。8.这是一个递归过程。如果一个节点上的所有实例都具有相同的类,则
5、停止局部树的生长。选择属性作为根产生分支计算信息增益选择max增益数据进一步分裂?结束否是算法流程图信息值(熵)、信息增益的概念熵:entropy(p1,p2,.,pn)=-p1logp1-p2logp2-pnlogpn使用负号是因为分数p1,p2,.,pn的对数值是负数,而熵是一个正数。熵是以位bit位单位的,公式里的p1,p2,.,pn他们的和为1。entropy(p,q,r)=entropy(p,q+r)+(q+r)*entropy(q/(q+r),r/(q+r)我们需要一种度量来表示节点的纯度,并需要这种度量告诉我们根据一个变量的属性值将一个不纯的节点上的数据划分到其子女后,纯度提高了
6、多少。最为广泛使用的度量是信息值(熵)。(以天气数据为例)outlook属性的树桩yesyesnononoyesyesyesyesyesyesyesnonooutlooksunnyovercastrainy在叶子节点上的yes和no类的实例数量分别是2,3、4,0、3,2,因此,这些节点上的信息值分别是:info(2,3)=entropy(2/5,3/5)=0.971 bitinfo(4,0)=entropy(1,0)=0 bitinfo(3,2)=entropy(3/5,2/5)=0.971 bit然后计算这些叶子节点的平均信息值,并考虑到达每个分支的实例数量:有5个实例到达第一和第三个分支
7、;4个实例到达第二个分支:那么平均信息值info(2,3,4,0,3,2)=(5/14)*0.971+(4/14)*0+(5/14)*0.971=0.693 bit在任何初始树创建之前,处于根节点的训练样本由9个yes和5个no组成,与之相对应的信息值:info(9,5)=0.940 bit因此树桩所获得的信息增益为:gain(outlook)=info(9,5)-info(2,3,4,0,3,2)=0.940-0.693=0.247 bittemperature、humidity、wind属性的树桩yesyesnonoyesyesyesyesnonoyesyesyesnotemperatur
8、e hotmildcool分别计算它们的信息增益为:gain(temperature)=0.029 bityesyesyesnonononoyesyesyesyesyesyesnohumidity highnormalyesyesyesyesyesyesnonoyesyesyesnononowind falsetruegain(humidity)=0.152 bitgain(wind)=0.048 bit将这些属性的信息增益的值进行比较,信息增益最大的属性节点将作为决策树的根节点。所以我们选择outlook属性作为根节点,它是唯一一个获得了全纯子节点,这就为超越其他所有属性赢得了相当大的优势。
9、而湿度属性是第二个最佳选择,因为它产生了一个几乎是全纯且较大的子节点。根节点确定了,接着继续进行这种递归过程。下面是outlook属性值为sunny时的节点进一步分支的可能性:outlooksunnyhumiditynononoyesyeshighnormaloutlooksunnywindyesnonoyesnofalsetrueoutlooksunnytemperaturenonoyesnoyeshotmildcool他们的信息增益分别为:gain(temperature)=0.571 bitgain(humidity)=0.971 bitgain(wind)=0.493 bit因此选择湿
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 挖掘 决策树 算法 ID3 C4 复习 课程 课件
限制150内