zl程序教程

您现在的位置是:首页 >  后端

当前栏目

Opencv学习笔记 - 使用opencvsharp和Boosting算法处理分类问题

Opencv算法笔记学习 处理 分类 问题 opencvsharp
2023-09-14 09:01:35 时间

        决策树非常有用,但单独使用时它并不是表现最佳的分类器。改进的方法随机森林和Boosting算法。随机森林与Boosting算法都是在内部循环中使用决策树的,因此继承了决策树的许多优良属性,它们通常是机器学习库中最佳的“开箱即用”监督学习技术。Boosting算法又被称为OpenCV机器学习库中最好用的监督学习算法。

一、Boosting算法原理

1、Boosting算法的基本思想

        随机森林采用的是Bagging算法。Bagging算法的特点是对多个弱学习器进行独立学习,之后取平均,而Boosting算法是对多个弱学习器依次进行学习。其基本思想是:在逐个训练弱分类器时,每次迭代都会调整样本的权重,改变权重的依据是该样本被上一个弱分类器成功分类的难度;给被错误分类的样本加上较大的权重,让接下来的弱学习器更多地关注这些困难样本,尽量避免将其再分错;最后,通过线性组合的方式集成所有弱学习器,构成强学习器。

        用于集成的弱学习器都非常简单,通常是只有一个节点的决策树,又称为决策树桩(Decision Stumps),或是只有很少节点的决策树。弱学习器是使用加权样本训练而成的,最后又通过加权“投票”的方式构成强学习器。因此,Boosting算法的关键是样本权重和弱分类器的“投票”权重如何分配。

2、Boosting算法的学习流程

        Boosting算法使用加权的原始样本集依次训练k个弱学习器,Boosting算法使用加权的原始样本集依次训练k个弱学习器。