3 个版本
0.1.14 | 2024 年 5 月 25 日 |
---|---|
0.1.13 | 2024 年 5 月 10 日 |
0.1.12 | 2024 年 5 月 7 日 |
#444 in 科学
140 每月下载次数
在 concision 中使用
160KB
4.5K SLoC
Concision
该库目前处于开发初期,尚未准备好用于生产使用。
Concision 被设计成用于在 Rust 中构建机器学习模型的完整工具包。
Concision 是一个用于在 Rust 中构建强大模型的机器学习库,优先考虑易用性、效率和灵活性。该库旨在利用即将到来的 Rust 2024 版本的 autodiff
实验性功能和泛型支持的增加。
入门
从源代码构建
首先克隆仓库
git clone https://github.com/FL03/concision.git
cd concision
cargo build --features full -r --workspace
用法
示例:线性模型(有偏置)
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::<f64, Ix2>((samples, d_in)).unwrap();
let model = Linear::<f64>::from_features(d_in, d_out).uniform();
// let model = Linear::<f64, cnc::linear::Unbiased>::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(())
}
贡献
欢迎提交拉取请求。对于重大更改,请首先创建一个问题来讨论您希望更改的内容。
请确保适当地更新测试。
许可
依赖项
~2.5–4MB
~77K SLoC