写点什么

Propel: 由 Node.js 之父创建的 JavaScript 科学计算库

  • 2018-03-15
  • 本文字数:1003 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Propel 是一个新推出的 JavaScript 科学计算库,它使用图形处理器来支持 JavaScript 中的机器学习和科学计算。

虽然机器学习默认使用 Python 开发,但是 JavaScript 的使用也越来越流行。Propel 致力于缩短 Python 和 JavaScript 之间的计算差距。

Propel 提供了一种类似 NumPy 系统的工具。Ryan Dahl 是 Propel 和 Node.js 的创始人,据他所说,“JavaScript 是一种快速的,动态的语言。因此我们认为它可以作为所有语言开发者理想的工具。”

从这一点来看,Dahl 并不是孤军奋战。因为有很多其他项目,包括 brain.js, ConvNetJS, deeplearn.js, math.js, mljs, Natural, Synaptic 以及 Webdnn, 它们都在尝试改善 JavaScript 中的科学计算和机器学习。

Propel 能够在多个环境中运行,但是由于性能原因,如果需进行密集型计算,更推荐使用 Node.js。

使用 Propel 需要依赖一些基础的技术。web 版本的 Propel 需要调用到 WebGL 模型和 deeplearn.js。Node.js 版本的 Propel 需要调用 TensorFlow 的 C 语言 API,并且支持多个图形处理器和 TCP 连接的定位。相比而言,web 版本更多的用于演示或者直接计算。

关于机器学习方面,Propel 鼓励开发者在服务器端创建机器学习模型,然后快速部署到浏览器就可以看到一个神经网络的示例。

Propel 是用 TypeScript 编写的,同时推荐使用 ts-node,因为它给 TypeScript 提供了运行环境,给 Node.js 提供了简单的交互环境。安装 Propel 非常简单,在 Node.js 中,执行以下命令行:

复制代码
npm install propel

如果想要查看 Node.js 中的示例,执行以下命令行:

复制代码
npm install -g ts-node
./tools/build.js
ts-node ./example.ts

在浏览器中加入以下优化的 JavaScript 包:

复制代码
<script src="https://unpkg.com/propel@3.1.0"></script>

如果想要在 Node.js 或者 web 项目的源码中加入 Propel 库,使用 ES 语法从 Propel 中导入相应的模块即可,例如:

复制代码
import { grad, linspace, plot } from "propel";

作为一个新开发的库,Propel 还不是很稳定。欢迎大家通过 GitHub 来帮助我们完善它。

查看英文原文 Propel: Scientific Computing JavaScript Library from Node.js Founder


感谢冬雨对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们。

2018-03-15 03:0011002

评论

发布
暂无评论
发现更多内容

git客户端软件:Sublime Merge 激活版

真大的脸盆

Mac Mac 软件 Git客户端

TitanIDE:云原生开发到底强在哪里?

行云创新

ide 云原生 云开发

永洪BI、瓴羊Quick BI领衔国产BI工具

巷子

质量内建落地的四要素

老张

质量保障 质量内建 交付质量

任务卷轴模式系统开发NFT技术

薇電13242772558

系统

如何高效搭建资产管理平台?众安科技告诉你答案是图技术

NebulaGraph

图数据库

百图生科AIGP平台发布:提供多种蛋白质生成能力,邀伙伴联手开发“新物种”

硬科技星球

两项大奖加持,浩鲸科技福利小店-WHALE SELECT

鲸品堂

福利 平台 平台搭建 企业号 3 月 PK 榜

关于 MyBatis 我总结了 10 种通用的写法

三十而立

Java mybatis

从GPT-4、文心一言再到Copilot,AIGC卷出新赛道?

引迈信息

微软 AIGC 文心一言 GPT-4

MobTech|如何选择应用内广告SDK产品

MobTech袤博科技

阿里云高级技术专家林立翔:基于阿里云弹性GPU服务的神龙AI加速引擎,无缝提升AI训练性能

云布道师

阿里云 AI

就在明天!用友企业数智化财务峰会落地广州,聚焦实现业财合一新价值

用友BIP

ADDS-DepthNet:基于域分离的全天图像自监督单目深度估计

飞桨PaddlePaddle

数据库领域3月大事件

NineData

数据库 云计算

华为昇思MindSpore开源社区三周年生日会,三大亮点不容错过!

Geek_2d6073

山东大学-飞桨人工智能教育创新中心正式挂牌,打造区域产教融合新范式

飞桨PaddlePaddle

智慧公厕:未来城市的必备设施

光明源智慧厕所

物联网 智慧城市

黄牛党“屯购”OPPO Find X6 无感验证护航官方商城安全

Geek_2d6073

低代码开发:助力企业高效实现数字转型的一大利器

加入高科技仿生人

大数据 低代码 数字化 数字转型

ShareSDK iOS端如何实现微信分享链接与登录

MobTech袤博科技

百度安全助力小度智能屏通过中国泰尔实验室适老化技术测试认定

百度安全

智能硬件

游戏版《西部世界》来了!NPC全由AI操控,行动自如有理想和记忆,基于最新GAEA技术系统打造

Openlab_cosmoplat

AI 游戏 开源社区

GPT-4写代码能力提升21%!MIT新方法让LLM学会反思,网友:和人类的思考方式一样

Openlab_cosmoplat

机器学习 开源社区 智能 ChatGPT GPT-4

中康科技黄毅宁:AI+医疗,于我而言是圆梦

飞桨PaddlePaddle

软件测试/测试开发丨在Docker 上搭建持续集成平台 Jenkins

测试人

软件测试 自动化测试 测试开发

面试造火箭?GitHub飙升“2023(Java 岗)面试真题汇总”转载40万

三十而立

Java java面试

解决90%面试问题!GitHub顶级"Java面试手册"了解下八股文天花板

三十而立

Java java面试

模型驱动软件开发 打造企业数字化未来

力软低代码开发平台

币安/欧意合约自动跟单软件开发源代码

开发v-hkkf5566

Propel: 由Node.js之父创建的JavaScript科学计算库_JavaScript_Dylan Schiemann_InfoQ精选文章