Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/fl03/concision
Concision is a complete machine-learning toolkit written in pure Rust and optimized for WebAssembly (WASM) operations.
https://github.com/fl03/concision
ai data-science machine-learning math rust scsys toolkit wasm
Last synced: 3 months ago
JSON representation
Concision is a complete machine-learning toolkit written in pure Rust and optimized for WebAssembly (WASM) operations.
- Host: GitHub
- URL: https://github.com/fl03/concision
- Owner: FL03
- License: apache-2.0
- Created: 2022-10-17T17:23:07.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2024-05-18T20:25:23.000Z (8 months ago)
- Last Synced: 2024-05-19T14:52:33.234Z (8 months ago)
- Topics: ai, data-science, machine-learning, math, rust, scsys, toolkit, wasm
- Language: Rust
- Homepage: https://fl03.github.io/concision/
- Size: 1.09 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 15
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Security: SECURITY.md
Awesome Lists containing this project
README
# Concision
[![crates.io](https://img.shields.io/crates/v/concision.svg)](https://crates.io/crates/concision)
[![docs.rs](https://docs.rs/concision/badge.svg)](https://docs.rs/concision)[![clippy](https://github.com/FL03/concision/actions/workflows/clippy.yml/badge.svg)](https://github.com/FL03/concision/actions/workflows/clippy.yml)
[![rust](https://github.com/FL03/concision/actions/workflows/rust.yml/badge.svg)](https://github.com/FL03/concision/actions/workflows/rust.yml)***
### _The library is currently in the early stages of development and is not yet ready for production use._
Concision is designed to be a complete toolkit for building machine learning models in Rust.
Concision is a machine learning library for building powerful models in Rust prioritizing ease-of-use, efficiency, and flexability. The library is built to make use of the
both the upcoming `autodiff` experimental feature and increased support for generics in the 2024 edition of Rust.## Getting Started
### Building from the source
Start by cloning the repository
```bash
git clone https://github.com/FL03/concision.git
cd concision
``````bash
cargo build --features full -r --workspace
```## Usage
### Example: Linear Model (biased)
```rust
extern crate concision as cnc;use cnc::prelude::{linarr, Linear, Result, Sigmoid};
use ndarray::Ix2;fn main() -> Result<()> {
tracing_subscriber::fmt::init();
tracing::info!("Starting linear model example");let (samples, d_in, d_out) = (20, 5, 3);
let data = linarr::((samples, d_in)).unwrap();let model = Linear::::from_features(d_in, d_out).uniform();
// let model = Linear::::from_features(d_in, d_out).uniform();assert!(model.is_biased());
let y = model.activate(&data, Sigmoid::sigmoid).unwrap();
assert_eq!(y.dim(), (samples, d_out));
println!("Predictions:\n{:?}", &y);Ok(())
}
```## Contributing
Pull requests are welcome. For major changes, please open an issue first
to discuss what you would like to change.Please make sure to update tests as appropriate.
## License
* [Apache-2.0](https://choosealicense.com/licenses/apache-2.0/)
* [MIT](https://choosealicense.com/licenses/mit/)