facebookresearch/fairseq
Ver no GitHubWhy inplace operation in `AdaptiveSoftmax`
Open
#760 aberto em 28 de mai. de 2019
enhancementhelp wantedstale
Métricas do repositório
- Stars
- (29.107 stars)
- Métricas de merge de PR
- (Nenhuma PRs mesclada em 30d)
Description
I used log_output for training purpose, but pytorch complains about inplace operation on backward.
For lines 204 and 205: https://github.com/pytorch/fairseq/blob/e6422528dae0b899848469efe2dc404c1e639ce9/fairseq/modules/adaptive_softmax.py#L200-L208
- why doing a
copy_on tailout - why inplace add_
I changed to
tail_output = ...
... = self.lsm(tail_out) + tail_priors[idxs, i, None]
And it works for training.