【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

当前端遇到机器学习?听 TensorFlow.js 负责人怎么说(二)

  • 2019-12-18
  • 本文字数:1962 字

    阅读完需:约 6 分钟

当前端遇到机器学习?听 TensorFlow.js 负责人怎么说(二)

TERVIEW


采访内容


Q :Hi, Ping Yu, 可否向中国的朋友们介绍一下您和您目前的工作?


Ping Yu:我在 Google 的 TensorFlow 团队中负责 TensorFlow.js 的开源项目。TensorFlow.js 是一个针对前端开发者机器学习平台,它不光提供建模,训练到推理的一套完整的 API, 还有一个结合实际应用场景的模型库。我们的目标是降低前端开发者使用机器学习的门槛,从而激发他们的创造力。


Q :我们知道,人工智能往往伴随着复杂的数据、模型和运算,而很多人认为 JavaScript 太弱了,不适合做人工智能,甚至说前端就不该趟 AI 这趟水,您怎么看待这个「老生常谈」的说法?


Ping Yu:这个问题可以从两个方面去看。首先,JavaScript 作为一个解释执行的语言,确实缺乏纯计算能力,但语言本身的计算速度并不决定它是否适合机器学习。比如 Python 同样作为解释执行的语言,速度并不是它的强项,甚至它比 JavaScript 的 V8 引擎要慢多了,这并没有妨碍它成为当今最受欢迎的机器学习语言。因为它并不需要直接解决速度的问题,它可以利用其他更底层的语言来获得计算速度的提升。TensorFlow Python 就是利用 binding C library 提供 CPU 上的加速,通过 cuDNN 的绑定获得了 GPU 提速。这都是 Javascript 可以做的事情。比如说 TensorFlow.js 通过 WebGL 的 Fragment Shader 来获得 GPU 加速,通过 Web Assembly 来获得 CPU 的加速等等。


另外作为一个机器学习 API Level 的语言,易用性才是真正吸引用户的地方。Python 的崛起很大程度上得益于一个非常受欢迎的数值运算库 numpy. 其实 Javascript 在易用性上并不逊色于 Python, 十几年来,从网页到后台,再到 iOT 设备,Javascript 无处不在。它跨平台的特性能很好的解决模型部署的任务。


我和很多工业界还有研究部门的伙伴了解的时候发现,他们现在共同的困境就是,缺乏人才能够真正把 AI 研究结果很好的落地。我们相信这个离不开前端工程师,但是需要有一套完善的工程解决方案。TensorFlow.js 只是一个开始,希望有更多的前端开发者可以加入我们的行列。


Q :那请问 TensorFlow.js 目前都有哪些应用场景、效果如何?如果没有足够的数据量能接入吗?


Ping Yu:TensorFlow.js 支持许多 Javascript 可以运行的环境,前端的浏览器,无线端的小程序,React Native 平台,中后台的 Node.js 等等。


不同的运行环境,应用场景也不尽相同。无线端多以实时人机交互模型为主,不论是视频还是语音,对模型的大小和执行速度的要求都很高。最近欧莱雅使用 TensorFlow.js 在微信小程序里推出了实时试妆,模型执行速度达到 25FPS, 但模型只有 800K. 在浏览器中的 Web App, 它的 AI 应用场景多以图形或文字模型为主。在中后台,应用场景会更丰富一些。TensorFlow.js 在 Node.js 里的执行速度和 TensorFlow Python 旗鼓相当,让 server 端的模型推理可以融入到现有的 BFF 架构内。


另外 TensorFlow.js 也支持模型训练,这意味着前端可以通过转移学习的方法为每个用户提供定制的模型。


Q :有人说,AI 技术的大进步,往往不是算法本身,而是源自人机交互的改进,您认同这个看法吗?目前(至少国内)已落地的人工智能大多是「人工人工智能」,请问国外面临这个窘境吗?您认为有何解法?


Ping Yu:这个问题涉及面有点广,但看法我是基本认同的。我理解这句话原意是,人机交互界面的改进,为 AI 技术提供的场景和契机。AI 的基础是数据,而前端技术可以帮助研究者更快更好地理解数据。虽然现在 AI 发展日新月异,新模型、新架构层出不穷,但当模型落地时候,如果并没有和前端实现一个闭环,也就会出现「人工人工智能」的现象。谷歌推出的联邦学习和 TFX 机器学习的框架,通过 AI 和前端的结合,就能够做到连续的验证和调整模型。


Q :您认为前端智能化未来会往什么方向发展?对于想做人工智能的前端工程师有什么学习建议?


Ping Yu:虽然前端有许多成功的框架,但总体来说还是有不少手工的工作。(我认为未来的考虑将是)如何将 AI 的能力融入到这些框架中,进一步减少前端工程师工作中低端的手工部分,从而进一步解放他们的创造力。


对于前端工程师而言,要对常用的模型和框架要有一定的认识,了解他们的特点和使用场景。要具备一定的 AI 工程方面的知识,比如模型加速和压缩,模型加密,端上和服务器上推理方案,这可以为模型落地提供切实可行的途径。


Q :请问参加您这次的分享需要准备什么前置知识?您将与国内开发者进行什么方面的交流?


Ping Yu:这次分享(我将)通过一些实例来介绍 TensorFlow.js 平台的能力,进一步探讨 AI 在前端落地的场景。目标受众就是前端工程师,没有特殊的前置知识。


本次专访是否解答你对于前端与机器学习的疑惑呢?本届 D2 上,Ping Yu 还将与我们探讨 TensorFlow.js 进一步优化的方式,以及未来发展的方向。


本文转载自淘系技术公众号。


原文链接:https://mp.weixin.qq.com/s/e3WoYNDwlzBoYNMBurANdA


2019-12-18 16:02708

评论

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

程序员入职国企,1周上班5小时,晒出薪资感叹,阿里P8架构师的Java大厂面试题总结

Java 程序员 后端

程序员开发必备22个终端CLI工具也太香了(附下载地址!

Java 程序员 后端

精心备战30天,三天斩获阿里offer,揭秘面试流程及我的学习方向

Java 程序员 后端

精心整理全网最全Tomcat面试专题及答案(共19题,含答案解析

Java 程序员 后端

系统性能典型案例分析:高性能队列Disruptor,一文深入理解(1)

Java 程序员 后端

秒懂 Java 的三种代理模式,任小龙java笔记百度云

Java 程序员 后端

程序员都应当知道的实用工具网站,Java400道面试题通关宝典助你进大厂

Java 程序员 后端

程序员一定要会的软件项目管理评估方案,不做只会敲代码的码农!

Java 程序员 后端

程序员面试时这样介绍自己的项目经验,成功率能达到98,华为od技术一面

Java 程序员 后端

算法入门 - 动态数组的实现(Java版本),分层架构图案例

Java 程序员 后端

秒懂数组拷贝,感知新境界,java编程思维百度云

Java 程序员 后端

究竟是什么样的奇葩需求?威胁到程序员的头发,java高级特性编程及实战第三章

Java 程序员 后端

[架构实战营]模块二作业:微信朋友圈高性能复杂度架构

Geek_99eefd

架构实战营

算法基础之递归,java核心技术卷

Java 程序员 后端

类加载器深入剖析,2021最新华为Java校招面试题

Java 程序员 后端

神操:凭借“阿里Java脑图,mysql数据库教学视频教程

Java 程序员 后端

程序员是如何看待薪资被高估的?内容过于真实,java语言程序设计与数据结构进阶版

Java 程序员 后端

算法基础之暴力递归到动态规划,java程序员面试算法宝典pdf猿媛之家

Java 程序员 后端

精通springcloud:服务发现,Eureka API,java技术上难以解决的问题

Java 程序员 后端

系统性能典型案例分析:高性能队列Disruptor,一文深入理解

Java 程序员 后端

程序员就意味着高薪?解除35岁的忧虑,一条正确的职业生涯规划

Java 程序员 后端

程序员必知必会之——服务网格istio概念,springboot项目案例百度云

Java 程序员 后端

立即可用的实战源码(springboot+redis+mybatis,java自学教程免费视频

Java 程序员 后端

算法在哈啰顺风车中的实践应用,netty实战pdf

Java 程序员 后端

秋招必备!阿里产出的高并发+JVM套餐,mybatis总结

Java 程序员 后端

精雕细琢!阿里大师53天悉心打磨出来的MyBatis+设计模式架构指南

Java 程序员 后端

系统性能百倍提升典型案例分析:高性能队列Disruptor,linux服务器架构师

Java 程序员 后端

秀儿!用SSM框架实现了支付宝的支付功能,神操作啊,大型分布式系统架构图

Java 程序员 后端

程序员欣宸的文章分类汇总,javaee教程文档

Java 程序员 后端

算法宝典最新分享:Alibaba+小米,redis笔记

Java 程序员 后端

系统性能百倍提升典型案例分析:高性能队列Disruptor(1)

Java 程序员 后端

当前端遇到机器学习?听 TensorFlow.js 负责人怎么说(二)_语言 & 开发_淘系技术_InfoQ精选文章