Open mg515 opened 8 months ago
Hi
The assumption for the segmentation model is it should return the probability in the range 0 - 1.
I think you may be right, the clip
is not needed. Regarding the issue you described - if you have only one output class, then this class will be always picked as the most probably, even while having 0 probability, as we have argmax
at the end.
To achieve what you described, you should add another output class to your model ("background" class at output number 0).
Cheers
Przemek
Hey. I was hoping someone can explain the reasoning behind [0,1] clipping as a postprocessing step in order to obtain "the mask with the probability of the presence of the class in the image". It seems to me that uncontrolled clipping the model outputs can be rather dangerous, since the logits that come out of the model are unconstrained. In case there is a softmax layer applied already within onnx graph, clipping does nothing either way.
Context: I am trying out different probability thresholds from within the UI and can not observe much of a difference between setting 0.01 and 0.99 (I have a binary segmentation task). What is the recommended way to prepare the model to enable this?
https://github.com/PUTvision/qgis-plugin-deepness/blob/eb994e79b0b5c83b0c746f34e32a5ba9cf62e461/src/deepness/processing/models/segmentor.py#L40