首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Adaboost级联TPR和FPR

Adaboost级联TPR和FPR
EN

Stack Overflow用户
提问于 2015-05-27 16:04:55
回答 1查看 207关注 0票数 0

当我们使用AdaBoost进行目标检测时,我们需要为每个阶段(AdaBoost的迭代)设置TPR和FPR。

我们需要高TPR和低FPR。

据我所知,结果是:

总TPR = (stage1 TPR)(stage2 TPR) .(StageN TPR)

例如,0.9*0.9*0.9~=0.729

总FPR = (stage1 FPR)(stage2 FPR) .(StageN FPR)

FPR 0.5*0.5*0.5= 0.125也是如此

所以你使用的阶段越多,你得到的FPR就越低,但TPR也会减少。

那么,为什么不在每个阶段使用TPR = 0.9999(9)和FPR = 0.00001,并且有少量的阶段呢?

如何选择每个阶段的TPR和FPR?它如何取决于阶段的数目?

EN

回答 1

Stack Overflow用户

发布于 2015-06-03 11:27:01

你是正确的,在如何计算总fpr和tpr,并观察到,随着更多的阶段,总fpr和tpr下降。我们不使用tpr为0.999999和fpr为0.000001的原因是,它将导致提升过程生成阶段,与许多弱分类器来实现这些速率。你的目标是一个高的tpr和一个低的整个级联,但如果你用这样的极端值训练阶段,你只需要一个阶段,因为它已经是一个很好的分类器与这些比率。

因此,我们通常使用像tpr = 0.99和fpr = 0.5这样的值的原因是为了保持阶段小和简单,并使用级联结构从错误的分类中恢复。实质上,tpr为0.99和fpr为0.5意味着任何阶段都必须检测99%的阳性样本,同时允许将50%的阴性样本分类为阳性。任何在第一阶段被归类为阳性的东西都会转移到第二阶段,然后再处理假阳性。其中,政府再接纳最多50%,然后转至第三阶段,以此类推。许多阶段的优点是,如果第一阶段拒绝一个样本,您不需要评估任何其他阶段,这将节省大量时间。

设fpr = 0.5,tpr = 0.99和20个阶段,则最终fpr为0.5^20 = 9.5*10e-7,最终tpr为0.99^20 = 0.82。

根据算法允许您选择的内容,您可以计算相应的fpr和tpr。例如,如果给出了阶段N和最终fpr的数目,您可以取最后fpr的第N根来得到阶段fpr。如果给出了舞台和最终的fpr,则可以使用log10并计算出至少要达到最终fpr (N = log10(final fpr)/log10(stage fpr) )所需的阶段数。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30487692

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档