在 Adaboost haar 特征的机器学习中,怎么样降低参与训练的 haar 特征数量

1. 把全局搜索替换为遗传算法的搜索;2. 评估的时候先随机选100个样本,得到评分,去掉50%得分最低的特征,提高样本数量,直到覆盖所有;这两个方法都可以从这篇文章中找到对应的描述:High-performance rotation invariant multiview face detection, C Huang, H Ai, Y Li
■网友
这个比较简单,haar特征共五类,每类的每个特征包含多个矩形,每个矩形包括宽度,高度,位置(左上角横坐标和纵坐标)共四个参数,在设计特征时,没必要上述的四个参数都遍历去取,只要对位置,高度,宽度按照一定步长取就行了,比如横坐标纵坐标信息按照步长2取,高度和宽度也按照2去取,数量就差不多降低到原来的1/16了,差不多已经满足你的需求了。当然,这样由于候选弱分类器变少了,效果会略有下降,可以根据实际物理意义去调一下上述参数。
■网友
相信你是在纠结训练时间问题。你可以在weak classifier阶段加入筛选,用每一个特征来对训练样本进行判定,设定一个正确率阈值或者是取判断正确率最高的前N个,再使用这部分特征参与cascade adabboost训练,这样会加快很多。


    推荐阅读