Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Doubling channels before pooling #10

Closed
alexklibisz opened this issue May 2, 2017 · 2 comments
Closed

Doubling channels before pooling #10

alexklibisz opened this issue May 2, 2017 · 2 comments

Comments

@alexklibisz
Copy link

Hello,

Looking at your code in model.py, it seems that you overlooked this statement on page 4 of the Cicek paper:

Like suggested in [13] we avoid bottlenecks by doubling the number of channels already before max pooling. We also adopt this scheme in the synthesis path.

I annotated the figure below:

image

I believe this wasn't the case in 2D UNet, so it's likely a copy-paste artifact. I'm not sure what difference it will make in terms of performance, but I figured it's worth mentioning.

@ellisdg
Copy link
Owner

ellisdg commented May 2, 2017

Nice catch!
Does #12 fix the issue?

@alexklibisz
Copy link
Author

alexklibisz commented May 2, 2017

Thank you. It does for the downward pass (i.e. left side of figure). However the bottom "block" should be Pool -> Conv 256 -> Conv 512 -> Deconv 512 -> Concat. It's not apparent in the paper or figure, but if you look at the prototxt you'll see it. It's also helpful to visualize the prototxt, which you can do here.

I might submit a PR later today that fixes it. That being said - I'm not sure if it will improve performance. So it goes with deep nets. :)

smatzek added a commit to smatzek/3DUnetCNN that referenced this issue Mar 2, 2020
This commit reenables training with Horovod which was removed due to
Horovod changes while moving to TensorFlow 2.
smatzek added a commit to smatzek/3DUnetCNN that referenced this issue Apr 15, 2020
This commit reenables training with Horovod which was removed due to
Horovod changes while moving to TensorFlow 2.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants