如何为deeplabV3 +改善miou?

时间:2018-06-19 11:37:38

标签: tensorflow deep-learning semantic-segmentation

目前,我正努力使用在自己的数据集中训练的 deeplabV3 + 来改善语义分割问题的结果。 我已经使用来自模型动物园的不同预训练模型(已经完全基于 xception_65 )成功地训练了 deeplabV3 + 几次,但是我的结果始终保持在相同的 miou < / strong>范围内,在此间隔 [10,11] 附近。 我只有一个拥有11GB GPU内存的GPU。 我的数据集有 8个类,对象大小各不相同,从小到大,并且非常不平衡。 标签的权重如下:[1、4、4、17、42、36、19、20]。 在我的数据集中,我有 757 个实例用于培训 100 验证

训练时的总体趋势是:前10k次迭代,我的损失减少了,但随后又开始振荡。
我尝试过:

  • 调整诸如学习率,last_layer_gradient_multiplier,权重衰减之类的参数

  • 各种图像尺寸的训练 321、513、769

  • 使用此公式中的上述权重进行某种加权

    权重= tf.to_float(tf.equal(scaled_labels,0))* 1 +           tf.to_float(tf.equal(scaled_labels,1))* 4 +           tf.to_float(tf.equal(scaled_labels,2))* 4 +           tf.to_float(tf.equal(scaled_labels,3))* 17 +           tf.to_float(tf.equal(scaled_labels,4))* 42 +           tf.to_float(tf.equal(scaled_labels,5))* 36 +           tf.to_float(tf.equal(scaled_labels,6))* 19 +           tf.to_float(tf.equal(scaled_labels,7))* 20 +           tf.to_float(tf.equal(scaled_labels,ignore_label))* 0.0

我训练时没有微调批处理标准化参数( fine_tune_batch_norm = False )。尽管我也尝试过以321作物大小训练那些参数( fine_tune_batch_norm = True ),以便能够适应批量大小我的GPU中strong> 12

重点是我需要一些提示来弄清楚我可以做什么以改善这些结果。 你们有什么感想?我是否需要更多数据以增加我的miou或硬件

0 个答案:

没有答案