Unified Implementations of Recurrent Neural Networks in Multiple Deep Learning Frameworks
This addresses a reproducibility and exploration problem for researchers and practitioners working with recurrent neural networks, though it is incremental as it builds on existing RNN concepts.
The authors tackled the lack of a central library for testing diverse RNN variants by introducing three open-source libraries (torchrecurrent, RecurrentLayers.jl, and LuxRecurrentLayers.jl) in Julia and Python that centralize implementations and provide a consistent framework for constructing and extending RNN models.
Recurrent neural networks (RNNs) are a cornerstone of sequence modeling across various scientific and industrial applications. Owing to their versatility, numerous RNN variants have been proposed over the past decade, aiming to improve the modeling of long-term dependencies and to address challenges such as vanishing and exploding gradients. However, no central library is available to test these variations, and reimplementing diverse architectures can be time-consuming and error-prone, limiting reproducibility and exploration. Here, we introduce three open-source libraries in Julia and Python that centralize numerous recurrent cell implementations and higher-level recurrent architectures. torchrecurrent, RecurrentLayers.jl, and LuxRecurrentLayers.jl offer a consistent framework for constructing and extending RNN models, providing built-in mechanisms for customization and experimentation. All packages are available under the MIT license and actively maintained on GitHub.