Skip to content

Commit

Permalink
Merge pull request #75 from MartinuzziFrancesco/fm/docs
Browse files Browse the repository at this point in the history
Docs landing page cleanup
  • Loading branch information
MartinuzziFrancesco authored Feb 16, 2025
2 parents c5c56cf + 4882722 commit 771dd28
Show file tree
Hide file tree
Showing 3 changed files with 38 additions and 10 deletions.
4 changes: 3 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@
<h2>RecurrentLayers.jl</h2>
</div>

RecurrentLayers.jl extends [Flux.jl](https://github.com/FluxML/Flux.jl) recurrent layers offering by providing implementations of bleeding edge recurrent layers not commonly available in base deep learning libraries. It is designed for a seamless integration with the larger Flux ecosystem, enabling researchers and practitioners to leverage the latest developments in recurrent neural networks.
RecurrentLayers.jl extends [Flux.jl](https://github.com/FluxML/Flux.jl)
recurrent layers offering by providing implementations of additional
recurrent layers not available in base deep learning libraries.

## Features 🚀

Expand Down
8 changes: 4 additions & 4 deletions benchmarks/adding_problem/main.jl
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
using Flux, RecurrentLayers, MLUtils, StatsBase, Comonicon, Printf, CUDA
using Flux, RecurrentLayers, MLUtils, StatsBase, Comonicon, Printf, CUDA, cuDNN

function generate_adding_data(sequence_length::Int, n_samples::Int;
kwargs...)
Expand Down Expand Up @@ -72,9 +72,9 @@ function test_recurrent(epoch, test_loader, model, criterion)
#println("Epoch $epoch/$num_epochs, Loss: $(round(avg_loss, digits=4))")
end

Comonicon.@main function main(; rlayer=MGU, epochs::Int=50, shuffle::Bool=false,
batchsize::Int=32, sequence_length::Int=10, n_train::Int=500, n_test::Int=200,
hidden_size::Int=32, learning_rate::AbstractFloat=0.01, num_layers::Int=2,
Comonicon.@main function main(; rlayer=MGU, epochs::Int=1000, shuffle::Bool=false,
batchsize::Int=100, sequence_length::Int=50, n_train::Int=10000, n_test::Int=1000,
hidden_size::Int=100, learning_rate::AbstractFloat=0.001, num_layers::Int=1,
dropout::AbstractFloat=0.2)
println("Getting data...")
train_loader, test_loader = generate_dataloaders(
Expand Down
36 changes: 31 additions & 5 deletions docs/src/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,13 @@ CurrentModule = RecurrentLayers

# RecurrentLayers

RecurrentLayers.jl extends [Flux.jl](https://github.com/FluxML/Flux.jl) recurrent layers offering by providing implementations of bleeding edge recurrent layers not commonly available in base deep learning libraries. It is designed for a seamless integration with the larger Flux ecosystem, enabling researchers and practitioners to leverage the latest developments in recurrent neural networks.
RecurrentLayers.jl extends [Flux.jl](https://github.com/FluxML/Flux.jl)
recurrent layers offering by providing implementations of additional
recurrent layers not available in base deep learning libraries.

## Implemented layers
## Features


The package offers multiple cells and architectures:
The package offers multiple layers for [Flux.jl](https://github.com/FluxML/Flux.jl):
- Modifications of vanilla RNNs:
[Independently recurrent neural networks](https://arxiv.org/abs/1803.04831),
[Structurally constrained recurrent neural network](https://arxiv.org/pdf/1412.7753), and
Expand Down Expand Up @@ -39,10 +40,35 @@ The package offers multiple cells and architectures:

- Additional wrappers: [Stacked RNNs](https://arxiv.org/pdf/1312.6026)

## Installation

You can install `RecurrentLayers` using either of:

```julia
using Pkg
Pkg.add("RecurrentLayers")
```

```julia_repl
julia> ]
pkg> add RecurrentLayers
```

## Contributing

Contributions are always welcome! We specifically look for :
- Recurrent cells you would like to see implemented
- Benchmarks
- Fixes for any bugs/errors
- Documentation, in any form: examples, how tos, docstrings
- Documentation, in any form: examples, how tos, docstrings

Please consider the following guidelines before opening a pull request:
- The code should be formatted according to the format file provided
- Variable names should be meaningful: please no single letter variables,
and try to avoid double letters variables too. I know at the moment there are
some in the codebase, but I will need a breaking change in order to fix the majority of them.
- The format file does not format markdown. If you are adding docs, or docstrings
please take care of not going over 92 cols.

For any clarification feel free to contact me directly (@MartinuzziFrancesco)
either in the julia slack, by email or X/bluesky.

0 comments on commit 771dd28

Please sign in to comment.