信息熵
一个系统越是混乱,信息熵就越高,
例子
划分之前的熵:是:3个 否:7个
按房产划分:有房产:否:4个 无房产:否:3个 是:3个
按房产划分的信息增益是:
决策树构造:
决策树的构造就是进行属性选择度量,构建决策树的关键步骤就是分裂属性,分裂属性是指
在 某个节点按照某一类特征属性的不同划分构建不同的分支,其目标就是让各个分裂子集尽
可能的'纯'
ID3,C4.5,CART 算法
CART算法构建的一定是二叉树,ID3和C4.5构建的不一定是二叉树。(主要区别)
三种算法在进行树分裂时的评价标准不同,ID3使用信息增益、C4.5使用信息增益
率
、CART使用
基尼系数
(分类树)。(不是主要区别)

分类树和回归树
分类树用叶子结点中概率最大的类别作为预测值
回归树用叶子结点中所有值的均值作为预测值
from sklearn.tree import DecisionTreeClassifier, DecisionTreeRegressor
algo = DecisionTreeClassifier(max_depth=2)
"""
参数:
criterion: 给定决策树构建过程中的纯度的衡量指标,可选值: gini、entorpy, 默认gini
splitter:给定选择特征属性的方式,best指最优选择,random指随机选择
max_features:当splitter参数设置为random的有效,是给定随机选择的局部区域有多大。
max_depth:剪枝参数,用于限制最终的决策树的深度,默认为None,表示不限制
min_samples_split=2:剪枝参数,给定当数据集中的样本数目大于等于该值的时候,允许对当前数据集进行分裂;如果低于该值,那么不允许继续分裂。
min_samples_leaf=1, 剪枝参数,要求叶子节点中的样本数目至少为该值。
class_weight:给定目标属性中各个类别的权重系数。作用是:解决类别不均衡的问题。
"""
集成学习参考文档: