Very nice and convenient function, thanks for pointing it out.
Turns out it works with arbitrary networks. I'll post the notebook of what I've done so far. Apparently applying this function to the single-step network functions out-of-the-box, even though that network is quite complicated.
I'll add the notebook of my current progress. (It's very early though).
PS. I've just learned about
NetFoldOperator
, which is possibly preferable to a long chain of nets with shared parameters.
Creating a net such as NetChain[ConstantArray[oneStepNet,100]]
seemed to lag at least the interface, so it's possibly not a good idea. I have a hard time believing this would be trainable by the way, but that's what they did in the paper, so what do I know.
PS#2. Or even NetNestOperator
. Damn, so many things to know.