谷歌也发布了Web前端机器学习库,就叫deeplearn.js

雷锋网 AI 科技评论按:在人工智能时代,不管是音箱、手机、汽车、app,自家产品没有用上深度学习都不好意思跟别人打招呼;另外,谷歌和
Facebook 都分别在 TensorFlow 和 Caffe 2
里提出了在移动设备上运行机器学习算法的目标和相关支持,更优秀的框架和更低的计算力要求确实是移动应用开发者的福音。不过这还没完,在浏览器上以
WebApp 的形式做模型推理甚至模型训练也有重要的开发和应用需求。

以往大家对前端机器学习库的关注度较低,不外乎人们认为 JavaScript
运行速度低、应用范围窄、支持前端的库少等几个原因。不过许多JS图形库已经有力地证明了 JavaScript
不是低速的代名词,带有构建好的机器学习算法的库也确实有一些,比如
brain.js、Synaptic、Natural、ConvNetJS、mljs等等,分别是几个神经网络、自然语言处理等的库,其中最出名、最先进的是卷积神经网络库
ConvNetJS,不过据雷锋网 AI 科技评论了解,它已经不再积极地维护了。

现在谷歌也决定在机器学习前端开发领域添一把柴,昨天发布了开源了自己的前端机器学习库 deeplear.js(https://pair-code.github.io/deeplearnjs/ )。

谷歌的
PAIR(People + AI Research)研究小组是一个以人为中心的 AI
系统研究小组,他们的研究兴趣是各种人类和人工智能之间的互动可能,包括为工程师提供更便捷的开发方式,一直到用人工智能理解生活中各种各样的事情。deeplearn.js
就是 PAIR 出力、借助了谷歌大脑团队的一点帮助开发出来的,它除了支持构建可微的数据流图、带有可以直接使用的数学函数外,还使用 WebGL
来加速训练和推理过程,从而提供了高性能的机器学习模型开发平台,可以在浏览器环境下训练模型或者用训练好的模型做推理。PAIR
希望对机器学习感兴趣的人可以把它用在教育、理解模型、艺术工作等各个领域。

deeplear.js 提供了两套 API,一套是类似
NumPy 的即时执行模型,另一套是对 TensorFlow API
的重现,不过会略有延迟。它当然也提供了详细的开发文档和新手教程。为了方便刚接触的人快速了解核心概念,新手教程里有专门面向初次接触机器学习者的部分,讲解了基本的计算原理;自带的
demo 也非常简单直观便于操作,比如下图就是用 deeplear.js 实现的经典卷积网络 MNIST
识别模型,界面美观、清晰易懂。只有加载时候花一点时间,修改模型的时候非常方便快捷。


deeplear.js 的官网上也一并介绍了这个项目的路线图,除了下一步要支持到 WebGL
2.0以外,SGD之外的优化器、2D逻辑采样(目前需要在3D逻辑空间实际2D空间之间转换)、增大batch大小、提高与 TensorFlow
之间协作的易用性、增加循环网络类型等等修补、增添也会加入到 deeplear.js 中来。可预见的是,deeplear.js
在不久的将来会成为真正完善好用的前端机器学习库,成为轻量的初学者和严肃的web开发者的一个好选择。

雷锋网(公众号:雷锋网) AI 科技评论报道。

本文作者:杨晓凡

本文转自雷锋网禁止二次转载,原文链接

时间: 2024-08-01 01:02:57

谷歌也发布了Web前端机器学习库,就叫deeplearn.js的相关文章

工欲善其事 之 Web 前端调试工具格式化混淆过的 JS 代码

工欲善其事 之 Web 前端调试工具格式化混淆过的 JS 代码 太阳火神的美丽人生 (http://blog.csdn.net/opengl_es) 本文遵循"署名-非商业用途-保持一致"创作公用协议 转载请保留此句:太阳火神的美丽人生 -  本博客专注于 敏捷开发及移动和物联设备研究:iOS.Android.Html5.Arduino.pcDuino,否则,出自本博客的文章拒绝转载或再转载,谢谢合作. FireBug: inline code 不能格式化 外部 js 可以格式化 Ch

Angular.js v1.6.0 发布,Web 前端框架

Web 前端框架 Angular.js v1.6.0 发布了.该版本合并了之前 1.6.0 候选版本中显示的所有更改. 新特性 ngModelOptions: 允许选项从祖先继承 ngModelOptions (296cfc, #10922) $compile: 默认设置 preAssignBindingsEnabled 为 false (bcd0d4, #15352) jqLite: implement jqLite(f) as an alias to jqLite(document).rea

Web前端性能优化教程:精简JS 移除重复脚本

本文是Web前端性能优化系列文章中的第七篇,主要讲述内容:精简Javascript代码,以及移出重复脚本.完整教程可查看:Web前端性能优化 一.精简javascript 基础知识 精简:从javascript代码中移除所有的注释以及不必要的空白字符(空格,换行和制表符),减少javascript文件的大小. 混淆:和精简一样,会从javascript代码中移除注释和空白,另外也会改写代码.作为改写的一部分,函数和变量的名字将被转换为更短的字符串,所以进一步减少了javascript文件的大小.

Angular 4.2.1 发布,Web 前端框架

Angular 4.2.1 发布了,这是一个小 bug 修复版本: compiler: don't write summaries for jit by default (d3a5f1a) http: move destructuring inside {Request,Response}Options ctor (c2d31fb), closes #16663 文章转载自 开源中国社区 [http://www.oschina.net]

Angular 4.2.0 正式版发布,Web 前端框架

Angular 4.2.0 正式版发布了,更新如下: Bug 修复 animations: ensure web-animations understands a numeric CSS perspective value (819514a), closes #14007 animations: evaluate substitutions on option param values (e9886d7) forms: fix min and max validator behavior on

web前端开发upload上传头像js示例代码_javascript技巧

这次分享一个简易的上传头像示例,其大致流程为: 一.将选择的图片转为base64字符串 function preview(file) {//预览图片得到图片base64 var prevDiv = document.getElementById('preview'); if (file.files && file.files[0]) { var reader = new FileReader(); reader.onload = function(evt){ prevDiv.innerHT

一张图掌握移动Web前端所有技术(大前端、工程化、预编译、自动化)

你要的移动web前端都在这里! 大前端方向:移动Web前端.Native客户端.Node.js. 大前端框架:React.Vue.js.Koa 跨终端技术:HTML 5.CSS 3.JavaScript 跨平台框架:React Native.Cordova 前端工程化:Grunt.Gulp.Webpack 前端预编译:Babel.Sass.Less 自动化测试:Jasmine.Mocha.Karma 一图在手,应有尽有!

Silverlight 5 Beta发布 Web前端应用程序开发解决方案

Microsoft Silverlight是微软所发展的 Web 前端应用程序开发解决方案,是微软丰富型互联网应用程序(Rich Internet Application)策略的主要应用程序开发平台之一,以浏览器的外挂组件方式,提供 Web 应用程序中多媒体(含影音流与音效流)与高度交互性前端应用程序的解决方案,同时它也是微软 UX(用户经验)策略中的一环,也是微软试图将美术设计和程序开发人员的工作明确切分与协同合作发展应用程序的尝试之一. silverlight标志 微软Silverlight

最好的Python机器学习库

引言 毫无疑问,神经网络和机器学习在过去几年一直是高科技领域最热门的话题之一.这一点很容易看出,因为它们解决了很多真正有趣的用例,如语音识别.图像识别.甚至是乐曲谱写.因此,在这篇文章,我决定编制一份囊括一些很好的Python机器学习库的清单,并将其张贴在下面. 在我看来,Python是学习(和实现)机器学习技术最好的语言之一,其原因主要有以下几点: 语言简单:如今,Python成为新手程序员首选语言的主要原因是它拥有简单的语法和庞大的社区. 功能强大:语法简单并不意味着它功能薄弱.Python