#deep-learning #neural-network #wasm #machine-learning

wasm-nn

wasm-nn 是一个用于 WebAssembly 的深度学习框架

1 个不稳定版本

0.1.0 2022年12月17日

#456机器学习

MIT 许可协议

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