决策树
基础的内容,参考的链接:
http://leijun00.github.io/2014/09/decision-tree/
ID3
- 最基础的决策树,多叉树,仅能处理离散型值
- 采用信息增益来处理 g(D,A)=H(D)−H(D|A)
- 会偏向有较多属性的feature,容易过拟合
C4.5
- 对ID3的改进
- 对于连续值,进行划分。假设是min,k1,k2,…,max的划分,依次尝试划分的方式,计算最佳划分
- 采用信息增益比率,避免了偏向较多属性feature
- 处理缺失值(填充or忽略)
CART
- 用基尼纯净度来衡量
- 二叉树的形式
回归树
- 采用平方误差损失求解最优的切分变量和切分点
- 每个叶子节点的输出就是一个值
Random Forest
类似bagging,然而并不是的。bagging会随机抽样若干个样本(不要求与原样本的个数一致,每次分裂时考虑所有的特征)
由多棵CART构成
使用的训练集是从总的训练集中有放回采样出来的,新样本大小与原样本大小一样,有些样本可能多次出现在一棵树的训练集中,也可能从未出现在一棵树的训练集中
使用的特征是从所有特征中按照一定比例随机地无放回的抽取的,根据Leo Breiman的建议,假设总的特征数量为M,这个比例可以是sqrt(M),1/2sqrt(M),2sqrt(M)
最后,用投票的方式。如果是回归问题,就取平均值
参数包括树的个数,深度等
参考链接:
GBDT
回归树
每次拟合的目标,是上一次的残差,所以最终结果,是将所有树的结果加起来
既然如此,那应该就没有数据集的sample了,不然没得搞(?)
特征应该还是随机抽取若干个,来处理每棵树(?)
参考链接: