微信扫一扫
分享到朋友圈

资源 | 机器学习新框架Propel:使用JavaScript做可微分编程

作者:机器之心 来源:机器之心 公众号
分享到:

01-24

选自propelml.org

机器之心编译

参与:李亚洲


本文介绍了一种 JavaScript 的机器学习新框架 Propel,该框架技能在 Node 中使用,又能在浏览器中使用。以下是对该框架的使用介绍。


链接:http://propelml.org/


Propel 提供 JavaScript 中的 GPU 后端类似 numpy 的基础设施。JavaScript 作为快速、动态语言,我们认为可以作为所有科学类程序员的理想工作流。


Propel 在浏览器、Node 中都能运行。在两个环境中,Propel 都能够使用 GPU 硬件对计算进行加速。在浏览器中,它能通过 deeplearn.js 利用 WebG,在 Node 上,它能使用 TensorFlow 的 C API。


  1. import { grad, linspace, plot  } from "propel";



  2. f = x => x.tanh();


  3. x = linspace(-4, 4, 200);


  4. plot(x, f(x),


  5.     x, grad(f)(x),


  6.     x, grad(grad(f))(x),


  7.     x, grad(grad(grad(f)))(x),


  8.     x, grad(grad(grad(grad(f))))(x))



Propel 有个重要的 autograd 式的 API,这不同于 TensorFlow。在运行过程中,会随着追踪计算图,通用的一种梯度函数提供了做反向传播的简洁借口。


浏览器做 demo 很棒,但不是强大的数字平台。WebGL 又和 CUDA 相距甚远。通过在浏览器外运行 Propel,用户能够面向多种 GPU,并做 TCP 连接。服务器边开发的模型能够更容易部署为 HTML demo。


基础的 Propel npm 程序包只是 Javasript 的,没有 TensorFlow 捆绑物。为了提升速度,你可以安装:


  1. npm install propel_mac


  2. npm install propel_windows


  3. npm install propel_linux


  4. npm install propel_linux_gpu



在 Node 中使用 Propel:


  1. npm install propel


  2. import { grad } from "propel";



在浏览器中使用 Propel:


  1. <script src="https://unpkg.com/propel@3.0.0"></script>



本文为机器之心编译,转载请联系本公众号获得授权

✄------------------------------------------------

加入机器之心(全职记者/实习生):hr@jiqizhixin.com

投稿或寻求报道:content@jiqizhixin.com

广告&商务合作:bd@jiqizhixin.com


阅读8961
资源 javascript 
举报0
关注机器之心微信号:almosthuman2014

用微信扫描二维码即可关注
声明

1、头条易读遵循行业规范,任何转载的稿件都会明确标注作者和来源;
2、本文内容来自“机器之心”微信公众号,文章版权归机器之心公众号所有。

评论
更多

文章来自于公众号:

机器之心

微信号:almosthuman2014

邮箱qunxueyuan#163.com(将#换成@)
微信编辑器
免责声明
www.weixinyidu.com   免责声明
版权声明:本站收录微信公众号和微信文章内容全部来自于网络,仅供个人学习、研究或者欣赏使用。版权归原作者所有。禁止一切商业用途。其中内容并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。如果您发现头条易读网站上有侵犯您的知识产权的内容,请与我们联系,我们会及时修改或删除。
本站声明:本站与腾讯微信、微信公众平台无任何关联,非腾讯微信官方网站。