决策树模型
重要任务:是为了理解数据中所蕴含的知识信息,因此决策树可以使用不熟悉的数据集合,并从中提取出一系列规则,这些机器根据数据集创建规则的过程就是机器学习的过程。
优点:计算复杂度不高,输出结果易于理解,对中间值的缺失不敏感,可以处理不相关特征数据。
缺点:可能会产生过度匹配问题。
范例:专家系统。
如何构造决策树:
- 编写构造树的python代码
- 度量算法成功率
- 递归建立分类器
- Matplotlib绘制决策树图
利用信息论划分数据集,伪代码:
IF (整个数据集属于同一个类型) return 类标签
Else
寻找划分数据集的最好特征
划分数据集
创建分支节点
for 每个划分的子集
递归继续划分
return 分支节点
划分数据集的大原则是:将无序的数据变得更加有序。
信息增益
定义:在划分数据集之前之后的信息发生的变化称为信息增益。
可以用于评价一次信息划分的优劣。
集合信息的度量方式称为:香农熵。
熵定义为信息的期望值。
如果待分类的事务可能划分在多个分类之中,则符号 x i x_i xi的信息定义为:
l ( x i ) = − l o g 2 p ( x i ) l(x_i)=-log_2p(x_i) l(xi)=−log2p(xi)
p ( x i ) p(x_i) p(xi)是选择该分类的概率。
根据期望的公式,得
H = − ∑ i = 1 n p ( x i ) l o g 2 p ( x i ) H=-\sum^n_{i=1}p(x_i)log_2p(x_i) H=−i=1∑n