I come from a math background, so I am not up-to-date with machine learning literature.
For the purpose of learning dynamics, I would like to train a model to minimize the following loss: $$\mathcal{L} = |\mathcal{M}(\mathcal{M}(x)) - y|,$$ more generally, there can be $k \geq 2$ recursive applications of the model $\mathcal{M}$.
From my experimentation, regular fully-connected neural networks perform poorly—a single application of $\mathcal{M}$ performs better and intermediate results do not correspond to intermediate data.
Are there other architectures that are better suited for this problem? Maybe graph-based models or the U-net from DDPMs?
Edit: Just a note on RNNs (I could be completely wrong): Although RNNs are used for recursive applications, I don't think they are what I am looking for. RNNs accept a sequence of inputs, whereas my input is a single tensor. Also, going from one hidden state to the next corresponds to a matrix multiplication which seems not very expressive(?).