Recent Releases of neurons

neurons - v2.6.2

Fixed-size vectors and reduced redundant cloning.

Use fixed-size vectors where possible to increase performance. Modify tensor operations to both utilise parallelisation and reduce redundant cloning. #6 Reduce general redundant cloning in the network etc. #6

Benchmarking benches/benchmark.rs (mnist version):

  • v2.6.2: 19.826974433s (1.92x speedup from v2.6.1)
  • v2.6.1: 38.140101795s (2.31x slowdown from v2.0.1)
  • v2.0.1: 16.504570304s

Note: v2.0.1 is massively outdated wrt. modularity etc., reflected through benchmarking.

- Rust
Published by hallvardnmbu about 1 year ago

neurons - v2.6.1

Bugs and visualisation.

  • Fix bugs concerning expanded feedback approach 1.
  • Improved results visualisation.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.6.0

Expand loopbacks.

  • Improved implementation of approach 1 feedback connections.
  • Add possibility of selecting iteration count.
  • Improve averaging; now takes a vector of tensors.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.5.5

Comparison and timing

  • Added timing functionality.
  • Improve comparison functionality.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.5.4

Bugs and examples.

  • Fix a typo in Adam and AdamW optimizers.
  • Updated examples.
  • Updated comparisons

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.5.3

Architecture comparison.

Added examples comparing the performance of different architectures. Probes the final network by turning off skips and feedbacks, etc. * examples/compare/*

Corresponding plotting functionality. * documentation/comparison.py

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.5.2

Bug extermination and expanded examples.

  • Fix bug related to skip connections.
  • Fix bug related to validation forward pass.
  • Expanded examples.
  • Improve feedback block

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.5.1

Convolution dilation.

  • Add dilation to the convolution layer.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.5.0

Deconvolution layer.

Initial implementation of the deconvolution layer.

Created with the good help of the GitHub Copilot.

Validated against corresponding PyTorch implementation; * documentation/validation/deconvolution.py

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.4.1

Bug-fixes.

  • Minor bug-fixes and example expansion.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.4.0

Feedback blocks.

Thorough expansion of the feedback module. Feedback blocks automatically handle weight coupling and skip connections.

When defining a feedback block in the network's layers, the following syntax is used:

rs network.feedback( vec![feedback::Layer::Convolution( 1, activation::Activation::ReLU, (3, 3), (1, 1), (1, 1), None, )], 2, true, );

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.3.0

Add the possibility of skip connections.

Limitations: * Only works between equal shapes. * Backward pass assumes an identity mapping (gradients are simply added).

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.2.0

Selectable scaling wrt. loopbacks.

Add possibility of selecting the scaling function. * tensor::Scale * feedback::Accumulation

See implementations of the above for more information.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.1.0

Maxpool tensor consistency.

  • Update maxpool logic to ensure consistency wrt. other layers.
  • Maxpool layers now return a tensor::Tensor (of shape tensor::Shape::Quintuple), instead of nested Vecs.
  • This will lead to consistency when implementing maxpool for feedback blocks.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.0.5

Bug fixes and renaming.

  • Minor bug fixes to feedback connections.
  • Rename simple feedback connections to loopback connections for consistency.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.0.4

Add skeleton for feedback block structure #9. Missing correct handling of the backward pass.

How should the optimizer be handled (wrt. buffer, etc.)?

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.0.3

Improved optimizer creation.

Before: ```rs network.setoptimizer( optimizer::Optimizer::AdamW( optimizer::AdamW { learningrate: 0.001, beta1: 0.9, beta2: 0.999, epsilon: 1e-8, decay: 0.01,

          // To be filled by the network:
          momentum: vec![],
          velocity: vec![],
      }
  )

); ```

Now: rs network.set_optimizer(optimizer::RMSprop::create( 0.001, // Learning rate 0.0, // Alpha 1e-8, // Epsilon Some(0.01), // Decay Some(0.01), // Momentum true, // Centered ));

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.0.2

Improved layer->layer compatibility #26.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.0.1

Improved optimizer step, minimizing the amount of (repeated) loops.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v2.0.0

Fix bug in batched weight updates.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v1.1.0

What's Changed

  • Optimizer by @hallvardnmbu in https://github.com/hallvardnmbu/neurons/pull/19

Full Changelog: https://github.com/hallvardnmbu/neurons/compare/v1.0.0...v1.1.0

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v1.0.0

Fully functional network. Major changes. See release log in README.md.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.3.0

Parallel minibatched training.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.2.2

Improved documentation.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.2.1

Improved convolution backprop wrt. specified optimizer.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.2.0

Convolutional backward pass works #1!

- Rust
Published by hallvardnmbu over 1 year ago

neurons - Custom documentation

Seen here.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.1.1

Added functionality for further expansion.

  • Unit tests
  • Custom Tensor types
  • Convolution feedforward
    • NOT feedback (yet)

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.1.0

Everything seems to work properly. Improved documentation and layout, as well as various bug-fixes and changes.

- Rust
Published by hallvardnmbu over 1 year ago

neurons - v0.0.4

Bug-fixes along with improvements.

- Rust
Published by hallvardnmbu almost 2 years ago

neurons - v0.0.3

Improved backprop, and add another example.

- Rust
Published by hallvardnmbu almost 2 years ago

neurons - v0.0.2

Updated functionality.

- Rust
Published by hallvardnmbu almost 2 years ago

neurons - v0.0.1

Initial release to crates.io; link.

- Rust
Published by hallvardnmbu almost 2 years ago