资源 | 机器学习新框架Propel:使用JavaScript做可微分编程
选自propelml.org
机器之心编译
参与:李亚洲
本文介绍了一种 JavaScript 的机器学习新框架 Propel,该框架技能在 Node 中使用,又能在浏览器中使用。以下是对该框架的使用介绍。
链接:http://propelml.org/
Propel 提供 JavaScript 中的 GPU 后端类似 numpy 的基础设施。JavaScript 作为快速、动态语言,我们认为可以作为所有科学类程序员的理想工作流。
Propel 在浏览器、Node 中都能运行。在两个环境中,Propel 都能够使用 GPU 硬件对计算进行加速。在浏览器中,它能通过 deeplearn.js 利用 WebG,在 Node 上,它能使用 TensorFlow 的 C API。
import { grad, linspace, plot } from "propel";
f = x => x.tanh();
x = linspace(-4, 4, 200);
plot(x, f(x),
x, grad(f)(x),
x, grad(grad(f))(x),
x, grad(grad(grad(f)))(x),
x, grad(grad(grad(grad(f))))(x))
Propel 有个重要的 autograd 式的 API,这不同于 TensorFlow。在运行过程中,会随着追踪计算图,通用的一种梯度函数提供了做反向传播的简洁借口。
浏览器做 demo 很棒,但不是强大的数字平台。WebGL 又和 CUDA 相距甚远。通过在浏览器外运行 Propel,用户能够面向多种 GPU,并做 TCP 连接。服务器边开发的模型能够更容易部署为 HTML demo。
基础的 Propel npm 程序包只是 Javasript 的,没有 TensorFlow 捆绑物。为了提升速度,你可以安装:
npm install propel_mac
npm install propel_windows
npm install propel_linux
npm install propel_linux_gpu
在 Node 中使用 Propel:
npm install propel
import { grad } from "propel";
在浏览器中使用 Propel:
本文为机器之心编译,转载请联系本公众号获得授权。
✄------------------------------------------------
加入机器之心(全职记者/实习生):hr@jiqizhixin.com
投稿或寻求报道:content@jiqizhixin.com
广告&商务合作:bd@jiqizhixin.com
关注公众号:拾黑(shiheibook)了解更多
[广告]赞助链接:
四季很好,只要有你,文娱排行榜:https://www.yaopaiming.com/
让资讯触达的更精准有趣:https://www.0xu.cn/
随时掌握互联网精彩
- 1 牢记嘱托 感恩奋进 4943273
- 2 华为三折叠秒售罄 4990837
- 3 北京:适时取消普通和非普通住宅标准 4842560
- 4 南航首架C919飞机成功首航 4710735
- 5 大爷电梯大便被曝光后自杀 4630820
- 6 公安机关重拳打击网络谣言 4556736
- 7 西班牙网红夫妇吐槽中国厕所 4451054
- 8 遭20人拦门要烟 接亲队伍就地打牌 4332869
- 9 四川多人当街打架致2死系谣言 4216965
- 10 游客捡到800万龙涎香?业内人士发声 4132120