机器学习十大算法( 三 )


因此,为每个数据样本创建的模型比在其它情况下创建的模型更加独特,但是这种独特的方式仍能保证较高的准确率 。结合它们的预测结果可以更好地估计真实的输出值 。
如果你使用具有高方差的算法(例如决策树)获得了良好的结果,那么你通常可以通过对该算法执行 Bagging 获得更好的结果 。
10. Boosting 和 AdaBoost
Boosting 是一种试图利用大量弱分类器创建一个强分类器的集成技术 。要实现 Boosting 方法,首先你需要利用训练数据构建一个模型,然后创建第二个模型(它企图修正第一个模型的误差) 。直到最后模型能够对训练集进行完美地预测或加入的模型数量已达上限,我们才停止加入新的模型 。
AdaBoost 是第一个为二分类问题开发的真正成功的 Boosting 算法 。它是人们入门理解 Boosting 的最佳起点 。当下的 Boosting 方法建立在 AdaBoost 基础之上,最著名的就是随机梯度提升机 。

机器学习十大算法

文章插图
AdaBoost
AdaBoost 使用浅层决策树 。在创建第一棵树之后,使用该树在每个训练实例上的性能来衡量下一棵树应该对每个训练实例赋予多少权重 。难以预测的训练数据权重会增大,而易于预测的实例权重会减小 。模型是一个接一个依次创建的,每个模型都会更新训练实例权重,影响序列中下一棵树的学习 。在构建所有的树之后,我们就可以对新的数据执行预测,并根据每棵树在训练数据上的准确率来对其性能进行加权 。
由于算法在纠正错误上投入了如此多的精力,因此删除数据中的异常值在数据清洗过程中是非常重要的 。

【机器学习十大算法】


推荐阅读