-
Notifications
You must be signed in to change notification settings - Fork 26
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
Accidentially used Encoder instead of Decoder? #10
Comments
Hey, @DerEchteFeuerpfeil! The article should indeed be saying decoder-only. Thank you for this, I'll fix it up! Implementation-wise, if I understand correctly, there is no other way to implement a decoder-only transformer in xFormers, at least until this lands facebookresearch/xformers#617. |
Alright, makes sense! Does not speak for the library that a decoder-only architecture issue is open for >1y 😅 When re-implementing parts of this for my project I used x_transformers by lucidrains instead. I'll close this issue for now, as it has served its purpose. Cheers! |
Hey there, great project!
I have just one thing that I am not sure if I misunderstood or you did. You wanted to reproduce the architecture of IconShop, but to my understanding, IconShop is a decoder-only transformer (like a language model).
Excerpt from their paper:
I first thought you had a minor mistake in your blog post, but also there you wrote encoder-only:
An encoder-only autoregressive transformer is self-contradictory, isn't it?
Also here, you took the
xFormerEncoderConfig
instead of the (imo) correctxFormerDecoderConfig
.fontogen/model/model.py
Lines 201 to 227 in de1e50b
I haven't thought this through what the implications are. You correctly used causal attention, so there should not be issues on that front. There might not even be an issue at all, as decoders (without cross-attention) are kinda just encoders with causal attention masking, but I don't know the xformers library and its inner workings. Just wanted to set the mental model straight.
Thanks for releasing your code and project!
The text was updated successfully, but these errors were encountered: