1 个不稳定版本
0.1.0 | 2022年12月17日 |
---|
#456 在 机器学习
10KB
119 行
wasm-nn:一个用于 WebAssembly 的深度学习框架
wasm-nn 是一个用于 WebAssembly (Wasm) 的深度学习框架,允许您在浏览器或服务器上训练和部署神经网络。它提供了与 PyTorch 兼容的 Python 绑定,因此您可以使用 wasm-nn 使用现有的 PyTorch 代码和模型。
功能
- 在 Wasm 上编译和运行,以实现快速高效的执行
- 为 PyTorch 提供Python绑定,易于集成
- 支持广泛的层类型和优化算法
- 易于使用且文档齐全的API
安装
要安装 wasm-nn,您需要在系统上安装 Rust 和 wasm-pack。然后,您可以使用以下命令安装 wasm-nn
wasm-pack install wasm-nn
使用方法
[dependencies]
wasm-nn = "0.1.0"
然后,您可以在 Rust 代码中使用它,如下所示
extern crate wasm_nn;
use wasm_nn::tensor::Tensor;
use wasm_nn::optim::SGD;
use wasm_nn::nn::{Module, Linear};
fn main() {
let mut model = Linear::new(2, 3);
let optimizer = SGD::default();
// Train the model on some data...
}
要使用 Python 与 wasm-nn 一起使用,您可以使用 pip 安装 Python 包
pip install wasm-nn
然后,您可以在 Python 代码中使用它,如下所示
import wasm_nn
model = wasm_nn.Linear(2, 3)
optimizer = wasm_nn.SGD()
# Train the model on some data...
有关如何使用 wasm-nn 的更多详细信息,请参阅 API 文档。
贡献
我们欢迎对 wasm-nn 的贡献!如果您想贡献,请阅读我们的贡献指南并提交一个拉取请求。
许可协议
wasm-nn 根据 MIT 许可协议授权。
致谢
wasm-nn 建立在 WasmBindgen 项目之上,这使得 Rust 和 JavaScript 之间的接口变得简单。我们感谢 WasmBindgen 团队和社区为使 Wasm 开发变得愉快所付出的努力。
依赖项
~1.2–2MB
~29K SLoC