训练完全卷积网络时忽略标签

Ignore label(s) when training Fully Convolutional Network

我在 Caffe 中使用完全卷积网络进行语义分割,使用 Cityscapes 数据集。

script 允许转换 classes 的 ID,并表示将 classes 的 ID 设置为在 255 和 "ignore these labels during training" 处忽略。我们如何在实践中做到这一点?我的意思是,我如何 'tell' 我的网络 255 不是真正的 class 作为其他整数?

感谢您给我直觉。

使用,例如"SoftmaxWithLoss"层,可以加一个loss_param { ignore_label: 255 }告诉caffe忽略这个标签:

layer {
  name: "loss"
  type: "SoftmaxWithLoss"
  bottom: "prediction"
  bottom: "labels_with_255_as_ignore"
  loss_weight: 1
  loss_param: { ignore_label: 255 }
}

我没有检查,但我相信 ignore_label 也被 InfogainLoss 损失和其他一些损失层使用。