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

concat operation for the Cell in model_search.py #74

Closed
tengteng95 opened this issue Feb 21, 2019 · 5 comments
Closed

concat operation for the Cell in model_search.py #74

tengteng95 opened this issue Feb 21, 2019 · 5 comments

Comments

@tengteng95
Copy link

Hi, Thanks for your great work! I am a little confused by the line 58 in your model_search.py file, which writes as following:
return torch.cat(states[-self._multiplier:], dim=1)
Following the paper, the hidden states for concat operation should be the last self._steps states, so I think it should write as following:
return torch.cat(states[-self._steps:], dim=1)
However, I am not sure whether my understanding is right. Looking forward for your response.

@tengteng95
Copy link
Author

I have figured it out. It is right for the implementation of the code.

@lorenmt
Copy link

lorenmt commented May 29, 2019

Hi, I also found this question and haven't figured it out. Could you please kindly explain why it's multiplier rather than steps?

@StOnEGiggity
Copy link

StOnEGiggity commented Jun 14, 2019

I think multiplier should be the same as steps. As #13 said, If the input nodes have C channels, then there will be multiplier * C channels in the output of the cell. During each step in the loop, we add one new s to the list states with C channel. And we concat all state in the list except s0, s1, and we get multiplier*C channels in the output.
However, I am not sure whether my understanding is right :)

@lorenmt
Copy link

lorenmt commented Jun 14, 2019

Yes. That’s what I thought. If so, It’s not necessary to introduce a new variable then, right? Anyway, we can just keep it as it is.

@giangtranml
Copy link

I don't think it's neccessary to create a new variable multiplier, for me it makes no sense. Since, by default s0 and s1 is the input/initial nodes in a cell (a Directed Acyclic Graph), why don't we just use the variable steps instead?

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

4 participants