BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Tensorflow实现在浏览器的深度学习

| 作者 Alexis Perrier 关注 1 他的粉丝 ,译者 刘嘉洋 关注 0 他的粉丝 发布于 2018年4月27日. 估计阅读时间: 4 分钟 | GMTC大前端的下一站,PWA、Web框架、Node等最新最热的大前端话题邀你一起共同探讨。

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

在最近的TensorFlow Dev Summit 2018大会上,Google宣布发布Tensorflow.js,这是用Javascript实现的开源深度学习框架Tensorflow。Tensorflow.js可以实现在浏览器中直接训练模型,通过使用WebGL JavaScript API获得更快的计算速度。

Tenforflow.js是由2017年8月Google发布的Javascript库deeplearn.js演化而来的。Deeplearn.js诞生于Tensorflow Playground这款由TypeScript编写的交互式可视化神经网络的大成功背景之下。

Tensorflow.js共有四层:WebGL API实现GPU支持的数字运算,web浏览器提供用户交互以及两款API:CoreLayers。低层的Core API对应于之前的deeplearn.js库。它提供了硬件加速线性代数运算操作,以及eager API实现自动微分服务。高层的Layers API在Core API 之上搭建机器学习模型。Layers API在Keras的基础上构建,实现了相似的功能。它同时支持引入之前用Keras或TensorFlow SavedModels通过python训练的模型,以推论或转移浏览器中的学习内容。

使用Tensorflow.js,可以通过三种方法将机器学习模型运用到浏览器中:引入已经预先训练过的模型,仅仅用来推论;在浏览器中直接训练模型;或是通过迁移学习先将引入的模型使用于用户环境中,之后再使用这些改进的模型进行推论。

Tensorflow团队成员Nikhil ThoratDaniel Smilkov发布的视频中告诉我们,在浏览器中运行Tensorflow有几个优势:由于后台API需求不再有,因此需求得到了简化;由于新设备的增加,可用的数据越来越多,比如电脑的摄像头和麦克风以及移动设备的GPS和陀螺仪等设备都可以提供数据;数据始终保留在客户端,也解决了隐私安全方面的问题。

基于Javascript的深度学习降低了许多web开发人员进入数据科学领域的门槛。他们可以将机器学习的功能整合到应用程序中,给数据科学领域带来更多创新方法。在线演示中展示了如何通过直接在浏览器中运行机器学习提升交互的速度和质量,演示内容包括情感分析手势检测风格转变

目前,已经存在几个类似的Javascript实现深度学习的框架,比如最早的brain.js项目,以及斯坦福大学卷积神经网络的ConvNet.js库,还有最近的KerasJSTensorFire库。然而,这些库既缺少利用浏览器WebGL组件实现基于GPU的运算,又不可以直接在浏览器中训练模型。最近基于Tensorflow.js的项目,科学计算Propel和机器学习ml5就不会碰到这些问题。

Tensorflow团队目前的工作重点是让TensorFlow.js支持Node.js,但还没有具体的时间表告诉我们什么时候可以实现。在TensorFlow Dev大会上还宣布了其他几项有关于Tensorflow的开发,包括TensorFlow for Swift将在2018年4月发布,以及TensorFlow Hub,“这是一个分享不同预制模块的库,开发人员可以跨多个模型复用它们”。

查看英文原文Tensorflow with Javascript Brings Deep Learning to the Browser


感谢冬雨对本文的审校。

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

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT