如何在没有大量标记数据的情况下训练神经网络

问题描述 投票:-1回答:1

我是机器学习的新手,正在尝试建立一个对象检测神经网络。

我有3000张图像,但只有150张被标记。我的图像由Web ui页面组成,我在这些页面上标记了按钮和徽标。

目前,我尝试使用faster_rcnn_inception_resnet_v2_coco模型进行训练,但是效果并不理想。找到了这些功能,但并不是完美定位到所需位置。enter image description here

是否有改善结果的方法?也许有其他型号?

如果我使用自动编码器对所有3000张图像进行无监督训练,然后将转移学习用于带有标记数据的深度学习模型,我会得到更好的结果吗?如果是这样,如何使用带有tensorflow的python实现它?

感谢

tensorflow deep-learning object-detection autoencoder
1个回答
0
投票

首先,查看COCO和VOC数据集。

http://cocodataset.org/#home

http://host.robots.ox.ac.uk/pascal/VOC/

如果它们的类与您的类非常相似,那么您可以采用预先训练的模型(deeplab,yolo,maskrnn等)并在您的数据集上进行训练,其性能应该很好。这里是一些可在github中检查的存储库:

https://github.com/search?l=Python&q=object+detection&type=Repositories

如果您的数据集与这些数据集截然不同,则可能无法获得良好的性能。在这种情况下,您必须通过更改类数来重新设计网络。您可以使用数据增强功能(在这里自动编码器可能不是很好的数据生成选择,因为生成高质量图像很复杂)。这是一个很好的数据增强库,可以使用蒙版增强样本。

https://github.com/mdbloice/Augmentor

© www.soinside.com 2019 - 2024. All rights reserved.