normalising flows are generative models characterised by their invertible
architecture. However, the requirement of invertibility imposes constraints on
their expressiveness, necessitating a large number of parameters and innovative
architectural designs to achieve satisfactory outcome