Closed attozeta closed 3 years ago
You are right. Sorry, I forgot to add the deepest deep-supervision layer. I will have a bug fix later today.
Thank you.
Try pip install keras-unet-collection==0.1.0
, the issue should be fixed.
Wow, that was really fast, thanks. I wasn't sure if it might have been on purpose as the deepest RSU is naturally the hardest to learn, so it might have been on purpose (to not include it into the final loss), however now the implementation is identical to the paper.
So indeed a classic off-by-one error? :)
Thanks, closing.
Thanks for the feedback.
Yeah, I didn't add the deepest tensor for my own use (copied my research code and added print-out information incorrectly).
from keras_unet_collection import base
X_out = base.u2net_2d_base(input_tensor, ...)
This would return all the output tensors and you can create your own model head.
Hello yingkaisha,
thanks for all the implementations, it really helps people try out different U-Nets.
I tried your U2-Net implementation and ran it with the parametes in your documentation, i.e.
and it works fine. However I don't get why I get output as follows:
This is just (verbose) reporting from the Keras-API about all the outputs (
sup0
tosup4
andfinal
for training and validation), but I am wondering wheresup5
is gone as the original paper seems to have 7 outputs and I think you don't addsup5
(?) to the output?At the beginning of the training one gets the following report:
but it seems that
sup5
is not in the output stack here. Therange
goes toL_out-1
so the last output is missing?So if you find the time I would be happy for an explanation.
Cheers.