2个版本

0.1.1 2022年8月5日
0.1.0 2022年8月5日

#464机器学习

MIT 许可证

49KB
514

Blowtorch

Blowtorch是一个Python包,允许您使用纯Rust训练机器学习模型和进行推理。这是通过在JSON文件中一次性指定模型来实现的。然后,Blowtorch将您的规范导出到Rust和Python模型。您可以按需训练Python模型,然后再次运行Blowtorch以将权重共享到Rust。

Blowtorch的一个早期版本的一个示例应用是ZipNet,这是一个基于神经网络的压缩算法,完全在浏览器中运行。由于找不到任何可以编译成WebAssembly的易于扩展的机器学习框架,我们开发了Blowtorch。

相较于类似包的优势

  • 推理在纯Rust中进行,这意味着您的模型可以在Rust运行的任何地方运行。例如,您可以将其编译成WebAssembly。
  • 新层可以非常容易地实现,因为只需在Rust中编写一个前向传递即可
  • 训练完全在Python中进行,这意味着您可以使用您喜欢的任何训练程序
  • 可以通过将架构拆分为更简单的模块来构建复杂的网络,这些模块通过一些粘合代码组合在一起

我们的文档可以在https://blowtorch.readthedocs.io/en/latest/找到。

特性

  • 导出和导入训练好的权重
  • 以下层的实现
    • 卷积
    • 卷积转置
    • ReLU
    • GDN
    • iGDN
    • 展平
    • 线性
  • 易于使用的示例
  • 扩展框架的可能性
  • Python和Rust的文档

依赖

~10–19MB
~204K SLoC