贾扬清:把生命浪费在有意思的事情上

今天,是1024程序员节。在这个“攻城狮”自带光芒的日子里,阿里妹请来AI大神贾扬清,作为一位开发者,聊一聊他自己的开发者经历,希望对你有所启发。


贾扬清
阿里巴巴集团副总裁、高级研究员
阿里巴巴计算平台事业部总裁

深度学习框架Caffe 作者,TensorFlow 作者之一,曾任 Facebook AI 架构部门总监,负责前沿 AI 平台的开发,Facebook 各产品部门 AI 平台的支持以及前沿机器学习系统研究。加州大学伯克利分校计算机科学博士学位、清华大学硕士学位和学士学位。

01 人生经历

当我觉得正在做的事情有意思,
我就觉得投时间在里头是对的。

阿里妹:大家对你的个人经历特别感兴趣,这么年轻来到阿里,想了解你是什么时候开始编程的?大学、研究生、博士分别学了什么?

贾扬清:其实我学编程还挺晚的。初三的时候,有一台计算机,我觉得挺有意思的,这时候开始接触电脑。大学的时候我想报相关的专业,清华计算机的分数线非常高,我就去了自动化线。我在本科学的是正常的课程,到了研究生阶段才开始学习机器学习相关的内容。当时有一句话是说:机器学习在80%的时间里解决80%的问题,但我们不知道哪80%的时间解决了哪些80%的问题。当时大家都很沮丧,想着毕业可能就失业了,还不如学系统或是数据库,至少有工作的机会。后来是因为兴趣,就一直坚持下来了,再后来去伯克利读PHD。博士期间已经在做计算机视觉的研究。要说正式开始非常认真的编程的话,Caffe 应该算是我第一个C++的项目。

阿里妹:你认为你是一个智力超群的人还是学习刻苦的人?

贾扬清:我觉得我智商没太高,可能还是因为兴趣,我也是相对比较懒的人,但是干活还是干的。我基本上7点起来,半夜还在做。当我觉得我的事儿特别有意思,那我就觉得投时间在里头是对的。

02 深度学习技术

这是一个值得投入的方向。

阿里妹:Caffe 是在什么场景下开发的这个框架,并且选择开源的,开发这么一个复杂的计算框架中遇到最大的坑是什么?

贾扬清:当时我们是想解决一个现实的问题,AelxBnet 出来之后,一直没有一个通用的让我们做科研的像 cuda-covnet 这样的一个平台,大家如果去看 cuda-covnet的话,是很难做扩展的。所以,当时我和伯克利的其他研究生是想解决自己的痛点:怎样来训练和设计深度学习的网络?

开源的原因是我们觉得我们有这样的一个问题,那么斯坦福肯定也有,清华也有,其他人肯定也是有这样的一个痛点。后来,我们基于共享的考虑因素就把它放出来了,可能也是因为这个缘故,正好踩到了点。

如果要说坑的话,搞开发的时候,最痛苦的事情是怎样来Debug。最开始的时候没有测试,后来我们跟以前在谷歌和其他的科技公司的朋友谈了一些测试框架。我们把测试的东西弄起来之后,写完Code跑一遍测试就可以了,这是很大的收获。

阿里妹:AI 对于解决常识或者推理的问题上面,会不会有重大的突破?包括知识图谱跟深度学习学习如何结合?知识图谱+图计算是不是有希望的方向?

贾扬清:凭心而论,我不是图计算的专家,只在读Paper了解的程度。我觉得类似于知识图谱,或者说用一个很老的词叫专家系统,这方面的研究可能是人工智能接下去的方向。以前做专家系统的时候,大家发现一个问题:我知道这个逻辑是怎么样的,但是输入一个图,怎么样从图到逻辑。所以,这几年人工智能在感知方面,像图像识别、语音识别、自然语言理解,都是从各种各样的输入到所谓深度学习的阶段,这方面深度学习的问题没有解决。图计算让我想起我在做PHD的时候一个特别热的领域叫概率图模型,我觉得这是一个很值得投入的方向。

阿里妹:目前出现了无需大规模训练集的深度学习算法模型,只是在精准度方面有一定的损失,请问这个方向是否有生命力?如果有,可以应用在哪些场景中?

贾扬清:这还是跟场景有关系,在一些影像识别等场景中的确有这样的问题,当我要找一个特殊癌症的人,我不能满世界找十个得癌症的人。所以说怎样在小数据上做学习是一个问题。我也经常在反思,不一定需要拘泥于数据太少的问题,可以通过一些方法来看能不能找到更多的数据。目前,小数据的收集还处于一个偏科研的方向,很多场景在真正落地的时候,还是需要数据,但是这个方向还是非常值得关注的。

阿里妹:你会推荐其他技术上的同学投入深度学习吗?

贾扬清:我夫人是做 finance 和 accountant 的,有一天她说要学 SQL,在finance 中,很多人需要数据处理。后来,我们就用一个周末的时间在一块儿学习。我觉得这件事和这个问题类似,大家可以把深度学习当做一个工具。如果你在周末的时候把它当做练练手的项目来做,那还可以,否则就不要搞了。有很多专业的,像做编译器的同学都可以帮忙搞定。怎么投入学习呢?看一看数据科学家都在做什么事情,如果自己有一堆数据的话,是不是可以用深度学习的模型跑一跑,前提是作为一个用户来用,而不是作为底层的开发者来用。我觉得深度学习是一个好东西,看大家怎么来用,到底要不要造这个工具,有兴趣的话当然可以。

03 职业成长

人应该是要想着怎样做更好的工具,
而不是跟工具抢活。

阿里妹:AutoML是一个兴起的领域,预期会有越来越多的日常工作被自动化,算法工程师应该如何选择发展提升方向?

贾扬清:我认为这是一个机会。当年C语言出来的时候,做汇编的同学会觉得自己没饭吃了。python、java出来后, C语言的人是不是没饭吃了?其实都不是,而是说效率提升了。所以,我觉得 AutoML 更多的是让我们能够放手来考虑更多更上层的东西。所以人应该是要想着怎样做更好的工具,而不是跟工具抢活。

阿里妹:对算法工程师来说有没有更具体的,可以发力的方向?

贾扬清:AutoML 应该是从2016年开始的, AutoML 最开始做搜索的时候,需要大量的资源,一开始大家开玩笑说AutoML 属于谷歌秀肌肉的文章,一上来就说800个GPU跑了几个月的时间,这事儿不现实的。我们用一个相对批评的态度来看 AutoML 文章,他基本上就是跑一堆程序,最后跑出一个最好的。但是我们随机搜了一堆,它的效果能差多少?这个问题在研究领域也在讨论。所以,AutoML 一个比较现实的方向是,怎么样在资源受限的情况下,最快地寻找到一个最好的模型,这是一个传统的像搜索等方面的问题。

阿里妹:在你的感受中,国内工程师跟硅谷工程师有什么差异点和共同点,对国内的一些工程师有什么样的建议?

贾扬清:我觉得咱们国内的工程师最好的一点是特别认真,真的是特别认真。国外的工程师,有的时候到周末就找不到人,甚至星期五下午四点钟就下班了。我来阿里之后,加入了骑自行车锻炼的群,虽然还没有机会去,我觉得还是需要平衡一下。硅谷工程师的想法更加天马行空一点,愿意投资到看似没什么用的地方去。这体现在公司的文化上面,硅谷的工程师把很多的工具做的挺好的,这无形当中就提升了我们的效率,比如说像代码的审查,怎样做测试等。也不是批评咱们自己,国外的公司可能在这方面的投资的范围更大,这个反过头来帮助了日常的工作效率,这可能是咱们应该向硅谷学习的一个地方。

04 未来

人不是一台机器,
但也正因此,
我们才比机器更加温暖。

阿里妹:AI 在落地改变人类发展的道路上,面临的主要挑战是什么?

贾扬清:我觉得面临的挑战是我们做 AI 的人不落地,这算是一个自我批评。大家做科研,很多时候像在象牙塔里,需要解决的问题很简单,就像 imagenet,最开始我们说人工智能爆发的这一点,imagenet 图像解压缩之后250G左右的样子,我拿个硬盘就解决了,即使硬盘不够快,我拿个 SSD 也差不多也解决了。然后,我们再看看应用到产品里,有的时候是30亿的照片,拿 SSD 就放不下。你再拿一个机器跑一跑试试,半年后说不定也没戏。所以这个时候,算法需要真正的在不同的产品环境里头摸爬滚打。产品的数据,在一定程度上来说挺脏的,但是这事得做,做完了才能把算法推下去,有的时候做事不能太干净,这个是最主要的一个挑战。AI 领域发展得很快,科研人员很快地冲到了产品里,对软件工程这方面的敬畏在一定程度上是不够的,包括我自己,这是最大的挑战。

阿里妹:知识爆炸的时代,未来应该如何选择可以长期投入的方向去研究?

贾扬清:这个有点难说,我们当时搞人工智能的时候,开玩笑说,毕业就是失业。我觉得还是要找一个自己感兴趣的方向,现在大家都在做的,并不一定是最有意思的一个事儿。

有一次,我们一群博士生在讨论日子要怎么过。我们的想法是找一个自己喜欢做的事情。如果是我不喜欢做的事情,即使挣钱了,也还是在干不喜欢干的事。我们当时的说法是:即使我做得不开心,即使我赚不了钱,但我觉得这事儿有意思就行。我有一位同学是做天文的,虽然不赚钱,但是他做得很开心,这事儿就是我想做的事情。

2002年我刚入学的时候,我们班主任跟我们说了这样一句话:“你们已经读大学了,都已经在这儿了,你们要考虑到将来你毕业之后,年薪10万是没有问题的,养小孩是没有问题的。你们要想想,当温饱解决了之后,你做事儿是不是开心?”我觉得这句话对我的触动挺大,我一直都记得这句话。

阿里妹:如果推荐一本书给现在的开发者,你会推荐哪一本书?

贾扬清:作为软件工程师我经常有这样一份沮丧:为什么别人总是不讲逻辑?这种沮丧在我走上技术管理岗位以后越来越多,直到今天。戴尔卡内基的《人性的弱点》,从畅销书的角度可能都已经被说烂了,不过我觉得它对像我这样的技术人员来说,是一本特别值得读的书:它用逻辑来讲述逻辑之外的事情,同时向我展示了一系列为人处世和共创成功的方法论。我2014年的时候第一次读到这本书,感觉它解决了我心底里对于和人打交道的恐惧。乍一看,书中讲到的事情似乎都是一些技巧:如何使你更受欢迎,如何交朋友,如何增加赚钱的能力,等等;但一条主线贯穿始终:人作为一种社会动物,有着喜怒哀乐,有着不同的个性,但是最终都希望获得相互的真诚,合作和理解。书中讲到的无数种技巧,归结起来,就是真心理解他人,尊重他人。人不是一台机器,但也正因此,我们才比机器更加温暖,共勉。


原文链接
本文为云栖社区原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/517621.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MongoDB 入门,我是花了心思的

作者 | 沉默王二责编 | Carol封图 | CSDN 付费下载自视觉中国有时候不得不感慨一下,系统升级真的是好处多多,不仅让我有机会重构了之前的烂代码,也满足了我积极好学的虚荣心。你看,Redis 入门了、Elasticsearch 入门了&#xff0c…

码农节快乐|一个系统,高效解决复杂事件采集-计算-实时触达

PartI: 1024 今天是1024,一个特别的数字,比如某网站内容的解压密码通常都是1024,想求一个种子留言也是1024。1024是属于广大程序猿(又称码农)的节日,在这样一个节日里,各种“黑”程…

SpringBoot集成Myabtis

二、SpringBoot集成Myabtis 2.1. pom 依赖 <!--版本控制-><properties><java.version>1.8</java.version><oracle.version>11.2.0.3</oracle.version><mysql.version>8.0.20</mysql.version></properties><!--Mybat…

DevOps 在移动应用程序开发中扮演什么角色?

作者 | VARUN BHAGAT译者 | 火火酱&#xff0c;责编| Carol封图 | CSDN 付费下载自视觉中国全球智能手机用户数量已经超过30亿。据估计&#xff0c;未来几年用户人数将增加至数亿人。智能手机用户和应用程序下载量的这种稳定增长证明了移动应用程序行业的蓬勃发展。如今在这个技…

她说:行!嫁人就选程序员!

本文的重点是&#xff1a;“为什么年轻漂亮的小姑娘都瞄准了程序员小哥哥”“理发38&#xff1f;太奢侈了&#xff01;淘宝20买套剪刀自己可以用好几年。”“衣服太贵了&#xff0c;我觉得优衣库的那件打折就已经很好了”“上个月的一千块钱的零花钱没花完&#xff0c;这个月先…

数学之美:嵌入式编程凹凸性之妙用(附C代码)

来源 | 嵌入式客栈今天遇到一个网友问一个问题&#xff0c;他有一个传感器测量一个物理量&#xff0c;需要判断其变化趋势&#xff0c;我给了一些建议&#xff0c;这里将这个建议展开做些深入分析&#xff0c;并分享给大家。本文想借此表达一下个人的一个观点&#xff0c;做开发…

从地摊看云计算:规模产业历程大揭秘

作者 | 马超责编 | 夕颜头图 | CSDN下载自视觉中国出品 | CSDN&#xff08;ID:CSDNnews&#xff09; 地摊经济的突然兴起&#xff0c;可能是2020年发生在中国最神奇的一幕了&#xff1a;刚刚还在直播间内直播的带货的企业老板&#xff0c;转眼间又来到地摊来叫卖产品了。当然也…

SpringCloud Gateway 快速入门_01

文章目录一、网关模块搭建1. 引入依赖2. 配置3. 启动类二、产品服务模块搭建2.1. 引入依赖2.2. 配置2.3. 控制层2.4. 启动类2.5. 启动产品模块三、启动中间件3.1. nacos启动3.2. 启动gateway3.3. 配置域名映射四、测试验证4.1. 测试产品服务4.2. 网关访问产品一、网关模块搭建 …

这件事,阿里爱了10年

阿里云双11亿元补贴提前领&#xff0c;进入抽取iPhone 11 Pro&#xff1a;https://www.aliyun.com/1111/2019/home?utm_contentg_1000083110 原文链接 本文为云栖社区原创内容&#xff0c;未经允许不得转载。

程序员!别逼自己买课了,每天花10分钟做这件事,写代码能力暴增......

作为一个教Python10年&#xff0c;带了5万名学生入职一线互联网公司的老师&#xff0c;经常遇到一些学员和我抱怨&#xff1a;看了很多教程&#xff0c;遇到问题不知道怎么寻找解决方案...课上听老师讲案例一听就会&#xff0c;可是一去做相关的练习题就傻了&#xff0c;无从下…

SpringCloud 基于OAth2.0 搭建认证授权中心_02

文章目录一、数据库部分1. 创建数据库2. 初始化数据脚本二、搭建maven父工程认证授权模块2.1. 创建一个maven项目2.2. 引入依赖三、搭建认证授权模块3.1. 创建一个子maven项目3.2. 引入依赖3.3. 增加application.yaml3.4. 增加数据库实体3.5. 增加接口3.6. 增加用户读取实现类3…

Knative Service 是如何指定端口和协议的

如果使用 Knative Serving 部署一个 Nginx 你可能会发现服务起来了&#xff0c;但是无法访问到 Nginx 中的服务。当然这不是 Nginx 的问题&#xff0c;这是因为 Knative 对 Container 的端口有要求。默认 Nginx 的服务端口是 80 &#xff0c;而 Knative Serving queue 8012 默认…

那天我去逛街,发现连大编程语言都摆起地摊了……

作者 | 轩辕之风来源 | 编程技术宇宙&#xff08;ID&#xff1a;xuanyuancoding&#xff09;困难年年有&#xff0c;今年特别多。公司要做一个新的网站&#xff0c;可预算有限&#xff0c;听说为了生计&#xff0c;各大编程语言们都摆起了地摊儿&#xff0c;我决定去瞧瞧&#…

十年磨一剑:从2009启动“去IOE”工程到2019年OceanBase拿下TPC-C世界第一

十年前&#xff08;2009年&#xff09;的9月&#xff0c;我奉命组建当时的淘宝技术保障部&#xff1b;随即启动了2010年的技术预算工作&#xff0c;记得第一次给时任集团首席架构师的王坚博士汇报预算的时候&#xff0c;我得意地说到&#xff1a;“&#xff08;淘宝&#xff09…

SpringCloud Gateway 集成 oauth2 实现统一认证授权_03

文章目录一、网关搭建1. 引入依赖2. 配置文件3. 增加权限管理器4. 自定义认证接口管理类5. 增加网关层的安全配置6. 搭建授权认证中心二、搭建产品服务2.1. 创建boot项目2.2. 引入依赖2.3. controller2.4. 启动类2.5. 配置四、测试验证4.1. 启动nacos4.2. 启动认证中心4.3. 启动…

Knative 健康检查机制分析

从头开发一个 Serverless 引擎并不是一件容易的事情&#xff0c;今天咱们就从 Knative 的健康检查说起。通过健康检查这一个点来看看 Serverless 模式和传统的模式都有哪些不同以及 Knative 针对 Serverless 场景都做了什么思考。 Knative Serving 模块的核心原理如下图所示。下…

【模式识别】探秘分类奥秘:K-近邻算法解密与实战

​&#x1f308;个人主页&#xff1a;Sarapines Programmer&#x1f525; 系列专栏&#xff1a;《模式之谜 | 数据奇迹解码》⏰诗赋清音&#xff1a;云生高巅梦远游&#xff0c; 星光点缀碧海愁。 山川深邃情难晤&#xff0c; 剑气凌云志自修。 目录 &#x1f30c;1 初识模式识…

SpringCloudGateway 集成 nacos 整合实现动态路由_04

接上一篇&#xff1a;SpringCloud Gateway 集成 oauth2 实现统一认证授权 文章目录一、目前存在的问题1. 问题简述2. 集成nacos前配置3. 前言简述二、网关模块改造集成nacos2.1. 引入依赖2.2. 创建bootstrap.yaml2.3. 在nacos配置中心添加配置2.4. 启动服务2.5. 访问产品模块2.…

深度 | 带领国产数据库走向世界,POLARDB底层逻辑是什么?

阿里妹导读&#xff1a;在刚刚结束的乌镇世界互联网大会上&#xff0c;阿里云自主研发的POLARDB云原生数据库当选世界互联网领先科技成果&#xff0c;凭实力站上C位。这个”包管“了北京市每天800万人次的公交出行的下一代分布式数据库到底有多强大&#xff1f;我们请阿里云智能…

QCon演讲|闲鱼从零到千万DAU的应用架构演进

导读:业务架构要随着业务发展做相应的演进,继而支撑业务的快速发展。本文主要通过介绍闲鱼从零发展到千万级DAU应用的不同阶段的业务特点、核心问题以及针对性的架构演进,来阐述业务架构的演进思路与心得。 闲鱼业务背景 技术架构的演进跟业务形态都是强相关的,闲鱼的市场本质…