constantinpape/torch-em

we should not filter students predictions

Opened this issue · 3 comments

loss = self.loss(prediction * label_filter, labels * label_filter)

filtering students prediction caused my model to predict far too many voxels/lesions than it should. I think it should not be done here. Same in line 57

Hmm okay. I think you can update this by not passing the label filters in the MeanTeacherTrainer (and similar in the lines below for the other training and validation functions)

or, an easier option would be to update the loss (and metric) functions to not consider the label filter at all, regardless of it's passed to the __call__ method or not.

yes I simply don't multiply prediction with label_filter, but wanted to let you know, coz it seems to me it should be formulated like this:
loss = self.loss(prediction, labels * label_filter)
or am I missing sth?

You don't need to mask the labels either. I think this should suffice:

loss = self.loss(predictions, labels)