14 releases
0.6.4 | Aug 11, 2023 |
---|---|
0.6.2 | May 13, 2023 |
0.5.2 | Apr 2, 2022 |
0.5.0 | Mar 31, 2022 |
0.3.0 | Jul 23, 2021 |
#847 in Algorithms
119 downloads per month
Used in set_genome
71KB
1.5K
SLoC
favannat (FAbricate and eVAluate Neural Networks of Arbitrary Topology)
Crate is functional but still in early development.
Introduction
This crates aims to provide some semantics and data structures that allow to turn a somewhat generic description of a neural net into some executable function.
Therefore it provides the "network" termes like "node" and "edge" and a roughly sketched interface to execute nets; namely the "Fabricator" trait and the "Evaluator" trait.
Further it provides one implementation of those traits.
Limitations
Only DAGs (directed, acyclic graphs) can be evaluated, which is by design. It is planned to implement logic to unroll recurrent networks into DAGs.
Contribution
Any thoughts on style and correctness/usefulness are very welcome. Different implementations of the "Fabricate/Evaluate" traits are appreciated.
lib.rs
:
This crate allows to evaluate anything that implements the network::NetworkLike
trait.
See network::net
for an examplatory implementation.
Networks accept any value that implements the network::NetworkIO
trait.
The feature ndarray
implements NetworkIO
from ndarray::Array1
when enabled.
Dependencies
~3.5MB
~67K SLoC