Extending to Image Transformer
alexmathfb opened this issue · 3 comments
Thanks for this very important work.
I'm trying train Image Transformer as one layer flow and have a few questions I hope you can help me with.
In section 4 you describe how to make PixelCNN++ and related models (including Image Transformer) into a single-layer autoregressive flows.
Question 1. Is it correct that the modifications to be done for PixelCNN++ and Image Transformer are the same because both use DMOL?
Question 2. The below comment states that the PixelCNN++ is raw copy. If I am to extend Image Transformer, can I also just make a raw copy?
Question 3. It seems to me that the AutoregressiveSubsetFlow2d class does not assume PixelCNN++ and thus may work for ImageTransformer. In principle, if I change the following code to use Image Transformer, should it work?
Hi and thanks for your interest!
Q1: Yes, for an Image Transformer with DMOL, the setup is the same. Only the neural architecture that parameterizes the flow will be different.
Q2: Yes, that should be fine if you have an implementation of the neural architecture using in the Image Transformer.
Q3: Yes, by passing in the Image Transformer NN as net
everything should still work fine.