我是机器学习的新手,正在尝试建立一个对象检测神经网络。
我有3000张图像,但只有150张被标记。我的图像由Web ui页面组成,我在这些页面上标记了按钮和徽标。
目前,我尝试使用faster_rcnn_inception_resnet_v2_coco模型进行训练,但是效果并不理想。找到了这些功能,但并不是完美定位到所需位置。
是否有改善结果的方法?也许有其他型号?
如果我使用自动编码器对所有3000张图像进行无监督训练,然后将转移学习用于带有标记数据的深度学习模型,我会得到更好的结果吗?如果是这样,如何使用带有tensorflow的python实现它?
感谢
首先,查看COCO和VOC数据集。
http://host.robots.ox.ac.uk/pascal/VOC/
如果它们的类与您的类非常相似,那么您可以采用预先训练的模型(deeplab,yolo,maskrnn等)并在您的数据集上进行训练,其性能应该很好。这里是一些可在github中检查的存储库:
https://github.com/search?l=Python&q=object+detection&type=Repositories
如果您的数据集与这些数据集截然不同,则可能无法获得良好的性能。在这种情况下,您必须通过更改类数来重新设计网络。您可以使用数据增强功能(在这里自动编码器可能不是很好的数据生成选择,因为生成高质量图像很复杂)。这是一个很好的数据增强库,可以使用蒙版增强样本。