前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >资源 | 机器学习新框架Propel:使用JavaScript做可微分编程

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

作者头像
机器之心
发布2018-05-10 10:55:20
6050
发布2018-05-10 10:55:20
举报
文章被收录于专栏:机器之心

选自propelml.org

机器之心编译

参与:李亚洲

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

链接:http://propelml.org/

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

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

代码语言:javascript
复制
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 捆绑物。为了提升速度,你可以安装:

代码语言:javascript
复制
npm install propel_mac
npm install propel_windows
npm install propel_linux
npm install propel_linux_gpu

在 Node 中使用 Propel:

代码语言:javascript
复制
npm install propel
import { grad } from "propel";

在浏览器中使用 Propel:

代码语言:javascript
复制
<script src="https://unpkg.com/propel@3.0.0"></script>

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-01-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 机器之心 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档