<机器学习笔记-05 >决策树
关键词:机器学习,决策树
摘要:本文主要介绍了笔者对于决策树原理的理解。
知识要点总结
掌握决策树、分类器、积极/消极学习方法、集成学习的概念;
掌握构建决策树、随机森林的方法;
掌握熵、信息增益、基尼不纯度的概念和计算方法;
掌握在python中使用基本数学、决策树和随机森林的方法;
概念理解:
决策树:
是一种分类器;通过训练数据构建决策树,对未知数据进行分类;
构成:一个根结点(样本全集)、若干内部结点(属性测试)、若干叶结点(决策结果);
判定过程:输入一组未知数据,从根结点出发,按照决策树的判定测试序列,运行到叶结点输出决策结果;
决策树学习目的:产生泛化能力强(处理未见示例能力强)的决策树;
积极学习方法(eager learner):先从训练集建立一个与后面需求无关的模型,模型一旦建好后可以很快的预测出结果;消极学习方法(lazy learner):如KNN(k-Nearest Neighbor)有了训练集数据的预测需求,才会开始学习整个数据的特征;不需要花时间训练预测能力,但比积极学习方法预测慢;
熵(Entropy)
如何确定决策树应该先测试哪个解释变量?解决思路:较好的测试可以更大程度上降低分类的不确定度性;
熵:度量信息的不确定性;以比特(bits)为单位;完全确定的分类,其熵为0比特;其公式为
H(x)=−∑i=1nP(xi)logbP(xi)其中, n 是样本的数量,
P(xi) 是第 i 个样本的概率;b 一般取2或 e 或10;前面加符号是为了熵为非负数;举例以方便理解:
- ##### 投掷硬币一次,正反面概率各为0.5,则硬币投掷一次的结果变量熵为
H(x)=−(0.5log20.5+0.5log20.5)=1.0 - ##### 投掷硬币一次,正面概率0.8,反面概率0.2,则硬币投掷一次的结果变量熵为0.72;不确定性降低了,向另一种结果更加靠近;
H(x)=−(0.8log20.8+0.2log20.2)=0.72- ##### 投掷硬币一次,正面概率为1.0,反面概率为0,则硬币投掷一次的结果变量熵为0