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

ADD Selection channel in another network #1

Open
ZirshaRiaz opened this issue May 14, 2020 · 2 comments
Open

ADD Selection channel in another network #1

ZirshaRiaz opened this issue May 14, 2020 · 2 comments

Comments

@ZirshaRiaz
Copy link

Hi, I really appreciate your research and efforts. I want to extend this work. I am trying to implementing selection channel on a CNN architecture. I am confused in coding section of m.alloc() and dealloc(). I have replaced conv2d with SelectiveConv as you mentioned in the paper.
I would be thankful for your concern and help. Thanks

@jh-jeong
Copy link
Owner

Hi, @ZirshaRiaz, thanks for your interest.

After replacing Conv2d to SelectiveConv2d, you can call m.dealloc() and m.realloc() during training whenever needed (e.g. for every epoch). This part can be found in L220 of main.py:

for m in model.modules():
    if type(m).__name__ in ['SelectiveConv2d']:
        if epoch < 0.5 * args['num_epochs']:
            m.dealloc()
            m.realloc()

Please let me know if I misunderstood your question.

@ZirshaRiaz
Copy link
Author

Thanks for your fast response. I was doing this thing but I was facing issue in iterating through network. It seems working now. Let's see how it performs after training. Moreover, I would like to ask what if I add SelectiveConv2d in Unet. Will it work? and UNet also contains convTranspose layers. How to add it in Unet?

Again I really appreciate your concern.
Thanks,
Zirsha

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