分享

开源机器学习库Deeplearn.js

 alayavijnana 2017-08-18

文 / Google Big Picture 团队软件工程师 Nikhil Thorat 和 Daniel Smilkov


机器学习 (ML) 已经成为一个日益强大的工具,该工具可以应用到横跨物体识别、语言翻译、健康医疗等各种领域。然而,目前,常常只有具备能够处理共用 ML 库的计算资源和技术专家的开发商才可以开发 ML 系统。


有了 PAIR 这款直观易学、重新设计的人类与机器学习交互的工具,我们希望面向尽可能多的人开放机器学习。为了追求该目标,我们非常兴奋地宣布推出 deeplearn.js 0.1.0:

https://pair-code./deeplearnjs


这是一款基于 WebGL 加速的开放源代码 JavaScript 机器学习库,该库可以直接在您的浏览器中运行,而无需进行安装,也无需借助后端运行。



将机器学习带入浏览器的理由有很多。客户端 ML 库可以是用于互动解说、快速原型开发和可视化甚至离线计算的平台。浏览器很可能是世界上最流行的编程平台之一了。


尽管网络机器学习库已问世多年(例如 Andrej Karpathy 的 convnetjs),但它们一直受到 JavaScript 速度的限制,或者一直局限于推理,而不是训练(例如 TensorFire)。对比之下,deeplearn.js 不仅通过利用 WebGL 在 GPU 上执行计算大幅提高了速度,同时还能够执行完整全面的反向传播。


此 API 模仿 TensorFlow 和 NumPy 的结构,包含一个延迟执行的训练模型(类似于 TensorFlow)以及一个立即执行的推理模型(类似于 NumPy)。我们还实现了某些最常用的 TensorFlow 操作版本。随着 deeplearn.js 的发布,我们提供了从 TensorFlow 检查点导出权重的工具,这些工具允许作者将这些权重导入到网页中,以便 deeplearn.js 进行推理。


您可以通过训练卷积神经网络识别照片和手写数字来挖掘该库的潜力,所有一切都可直接在浏览器中运行,而不必编写任何代码。




我们即将发布一系列展示 deeplearn.js 实战应用的演示。我们通过一个图像识别器来体验一下,该识别器可以实时使用您的网络摄像头并观看所拍摄画面在网络内部的表现形式。或者以流畅的每秒 60 帧的速度生成抽象艺术视频。deeplearn.js 首页包含上述及其他演示。


我们的愿景是:该库将极大地提高机器学习的能见度以及人们参与机器学习的热情,让开发者能够访问强大的工具,同时为普通用户提供与他们交互的途径。我们期待与开放源代码社区合作,共同推进该愿景的实现。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多