SomeB1oody/RustyML
A high-performance machine learning library in pure Rust, offering statistical utilities, ML algorithms and neural networks.
解决的问题
RustyML 是一个完全用 Rust 编写的库,提供完整的机器学习和深度学习工作流。它消除了对 C 或 C++ 依赖(FFI)的需求,为在 Rust 中实现 ML 模型提供了一种内存安全、可移植且高性能的替代方案。
如何工作
该库采用模块化功能标志设计,允许用户仅包含所需组件。它利用 ndarray crate 进行张量运算,并使用 Rayon 实现重型内核的多线程并行化。支持两种类型的神经网络架构:用于线性堆叠层的 Sequential 模型,以及用于复杂架构(如残差连接或多输入/输出网络)的 Graph 模型。
适用人群
希望使用纯 Rust 生态系统构建和部署机器学习模型的开发者,避免链接外部 C/C++ 库的复杂性,同时保持内存安全和并发性。
主要亮点
- 纯 Rust 实现:无 FFI 或外部 C/C++ 依赖,便于移植且内存安全。
- 广泛的算法覆盖:包含经典的监督/无监督学习、异常检测以及完整的神经网络框架。
- 灵活的神经网络架构:支持顺序模型和图结构模型(允许实现残差块和共享塔结构)。
- 确定性结果:提供全局和组件级种子管理,确保实验可复现。
- 模型持久化:使用
Serde和postcard将训练好的模型保存和加载为紧凑的二进制文件。 - 与 Scikit-learn 兼容的评估指标:包含回归、分类和聚类任务的全面评估指标集。
相关
- 项目
- 项目
- 项目
- 项目
- 项目