这篇博文用来记录已经学习了的机器学习算法,持续更 ~ (哎,学了太容易忘)
一、回归算法
- 线性回归:预测连续值
- 逻辑回归:预测离散值或分类
二、决策树 Decision Tree (DT)
根据一个准则,选取最优划分属性 (最优划分属性:决策树的分支节点的类别尽可能纯,即尽可能属于同一类别)
- ID3:根据信息增益选取最优划分属性
- C4.5:根据信息增益和增益率选取最优划分属性
- CART (classification and regression tree) :根据基尼指数选取最优划分属性
三、集成学习 (ensemble learning)
Boosting:个体学习器间有强依赖关系,必须串行生成的序列化方法 (训练集基于上一轮结果进行调整)
Bagging:个体学习器间没有强依赖关系,可同时生成的并行化方法 (训练集互不相关)
1.集成学习之 Boosting
弱学习器提升为强学习器的过程称为Boosting,Boosting产生一系列的学习器,后产生的学习器的训练集取决于之前的产生的学习器,之前被误判的示例在之后占据较大的概率。
不同的boosting实现,主要区别:
(1) 弱学习算法本身不同
(2) 在每一轮学习之前,改变训练数据的权值分布的方法不同
(3) 将一组弱分类器组合成一个强分类器的方法不同
Boosting 算法总结
AdaBoost
AdaBoost 算法是模型为加法模型、损失函数为指数函数、学习算法为前向分步算法的学习方法
GBDT 梯度提升决策树
GBDT = Boosting Decision Tree 提升决策树 (DT)+ Gradient Boosting 梯度提升(GB)
是一种迭代的决策树算法
XGBoost
XGBoost是在GBDT的基础上对Boosting算法进行的改进,内部决策树使用的是回归树。
2.集成学习之Bagging
Bagging是基于bootstrap sampling也称为自助采样法法,是一种有放回的抽样方法,目的为了得到统计量的分布以及置信区间。
Random Forest 随机森林 (RF) 就是基于Bagging,进一步在训练过程中引入随机属性。随机森林简单来说就是用随机的方式建立一个森林,森林由很多的决策树组成,随机森林的每一棵决策树之间是没有关联的。