Viola-Jones 人脸检测使用 adaboost 方法训练强分类器。我对 beta 参数更新政策感到困惑:
为什么选择这样的 beta 值?设置变量beta
的目的是增加权重的权重。如何选择:
最佳答案
Viola 和 Jones 的论文没有详细解释 beta 值,但我将尝试解释为什么 beta 值设置为这样。
设置变量 beta 的目的是 不是 总是增加权重,而是仅在特定的弱分类器是好的分类器时才减少/惩罚权重(我稍后会解释什么被认为是好的),如果分类器是坏的分类器,则增加/增加权重. (记住这里的权重是错误率的权重,而不是每个分类器的权重,所以分类器越好,权重应该越小)
显然你可以有不同的方式来定义什么是“好”分类器,但是在 Viola 和 Jones 的论文中使用了一个非常简单的标准,即如果弱分类器的错误率小于 50%,那么它就是“好” ”,否则为“坏”。分类器越好(错误率越小),我们希望增加更多的权重,反之亦然。到现在你应该已经明白为什么这样选择 beta 值了——每当错误率 (epsilon_e) 大于 1/2 时,beta 值就会大于 1,因此权重会增加,反之亦然反之。
关于face-detection - adaboost 更新权重 beta 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26523395/