Qianxiao Li, Shida Wang
We lifted 4 functions out of this paper's own repositories and ran 4 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.
| Repository | Role | Ran |
|---|---|---|
| radarFudan/Curse-of-memory | — | 4 of 4 |
| Function | Status | Where it lives |
|---|---|---|
| CustomLinearLayer | Ran | radarFudan/Curse-of-memory/src/models/recurrent/ssm.py pointer only (licence: NONE) · get_code("0574ab3f378459b7") |
| CustomOrthogonalLayer | Ran | radarFudan/Curse-of-memory/src/models/recurrent/ssm.py pointer only (licence: NONE) · get_code("fdec8730f11b5da1") |
| MLP | Ran | radarFudan/Curse-of-memory/src/models/recurrent/ssm.py pointer only (licence: NONE) · get_code("19e757d2ed1c8b73") |
| SimpleSSM | Ran | radarFudan/Curse-of-memory/src/models/recurrent/ssm.py pointer only (licence: NONE) · get_code("55283a8d2d388711") |
Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.
In this paper, we investigate the long-term memory learning capabilities of state-space models (SSMs) from the perspective of parameterization. We prove that state-space models without any reparameterization exhibit a memory limitation similar to that of traditional RNNs: the target relationships that can be stably approximated by statespace models must have an exponential decaying memory. Our analysis identifies this "curse of memory" as a result of the recurrent weights converging to a stability boundary, suggesting that a reparameterization technique can be effective. To this end, we introduce a class of reparameterization techniques for SSMs that effectively lift its memory limitations. Besides improving approximation capabilities, we further illustrate that a principled choice of reparameterization scheme can also enhance optimization stability. We validate our findings using synthetic datasets, language models and image classifications.
The same record, over MCP at https://syntology.ai/mcp:
get_harvested_code_for_paper("2311.14495")
get_code_for_paper("2311.14495")
have("2311.14495")
Connect an agent — have() is free.