2012-08-02 38 views
2

我有一个二元分类问题。我试图训练一个神经网络来识别图像中的物体。目前,我有大约1500张50x50的图片。 问题是,通过水平翻转的相同图像来扩展我当前的训练集是否是个好主意? (图片不是对称的)使用翻转图像进行机器学习数据集

感谢

回答

1

我认为你可以做到这一点,以更大的程度上,不只是水平翻转图像,但1度改变图像的角度。这将为您在训练集中的每个实例产生360个样本。根据算法的速度,这可能是确保算法不仅能够识别图像及其镜像的一种非常好的方法。

这可能是一个好主意,但是再次,我不知道图像识别的目标或领域是什么。假设图像包含字符,并且您要求图像识别软件确定图像是否包含正斜杠/或反斜杠\然后翻转图像会使您的训练数据无效。如果你的域名不存在这样的问题,那么我认为这是一个好主意,可以翻转它们,甚至可以不同程度地旋转。

1

我在AdaBoost中使用翻转图像,在课程中取得了巨大成功:http://www.csc.kth.se/utbildning/kth/kurser/DD2427/bik12/Schedule.php 从zip“TrainingImages.tar.gz”。

我知道在幻灯片的某处(在主页上)使用翻转图像的优点/缺点有一些信息,但我无法找到它。还有一个很好的资源是http://www.csc.kth.se/utbildning/kth/kurser/DD2427/bik12/DownloadMaterial/FaceLab/Manual.pdf(和幻灯片一起)通过诸如寻找不同尺度和方向的东西。

0

如果图像补丁不对称我不认为它是一个好主意翻转。更好的想法是对训练集进行一些相似变换,但有一些限制。增加数据集的另一种方法是向其中添加高斯平滑模板。确保正面和负面样本的数量成正比。太多的积极和太少的消极可能会歪曲分类器并给测试集带来不好的表现。

0

这取决于你的NN基于什么。如果您要提取不依赖于图像内空间位置的旋转不变特征或特征(如直方图或其他)并用这些特征训练NN,则旋转不是一个好主意。

如果您直接在像素值上进行训练,那么这可能是一个好主意。 一些更多的细节可能会有用。