为什么负面图像用于训练?

时间:2016-03-25 09:04:23

标签: machine-learning computer-vision training-data haar-classifier adaboost

在训练分类器时,为什么我们使用负片或背景图像?它们如何用于训练对象分类器? 任何人都可以解释使用MATLAB等编程语言完成培训的一般程序吗?

2 个答案:

答案 0 :(得分:5)

首先,我怀疑你会得到how to train a classifier in matlab的任何答案。这是一个非常模糊的问题。很大程度上取决于您的数据和目标,基本上有数十到数百种算法可以执行分类, 简单。

对于主要问题,为什么将负样本提供给分类器。它再次取决于您使用的分类器,但简而言之,有两种分类模型(还有更多,但总结一下):generative modelsdiscriminative models

生成模型旨在模拟目标类的统计数据(外观或任何其他类型的特征)(例如,您正在尝试为汽车建模)。然后,生成模型将学习一种方法(来自正例的训练数据)以识别汽车。这是一个随机样本,它将告诉您汽车模型创建该样本的可能性。作为一个愚蠢的例子,对模型进行成像是单变量高斯模型,然后模型将告诉您从您学到的高斯分布中采样数据样本(点)的可能性。

当您没有负面的培训数据,或者您的数据可以通过简单分发建模时,生成模型很有用..但模型学习汽车如何,它没有学习汽车的样子

另一方面,判别模型学习更复杂(通常是健壮的)规则来区分目标类。拥有一组目标物体(例如汽车和背景,或汽车,自行车,房屋和天空),而不是学习汽车如何,算法会尝试学习如何汽车与背景不同

如果你的所有记忆只包含100张汽车照片,然后你会看到一辆摩托车的照片,那么你很难说摩托车不是一辆汽车(你有从未见过一个),两张图片都有背景和轮子。但是,如果您获得50张汽车图像,另外50张随机街道图片(包括自行车),您可以学习更强大的关系,以便在将来识别汽车。

答案 1 :(得分:0)

培训本身就是一个优化问题。该优化问题试图优化分类准确性。如果没有-ve样本,则不存在优化问题,边界可以设置为+, - 无限,将所有样本分类为正