如何在清华的“洗衣机系”GitHub拿下50000星?

Chen编者按]陈凯似乎在学术和职业上都一帆风顺。
清华大学和香港中文大学博士毕业后,加入商汤科技。两年之内,他成为了研究主管,带领着一个近百人的团队。
在GitHub上,他的OpenMMLab成绩斐然。从研究员到管理者,他的技术人生是如何铺垫的?
作者|杨洋
| 《新程序员》编辑部
陈凯无疑是父母口中的“别人家的孩子”。他才华横溢,勤奋好学,以至于无论是在清华大学读本科,还是在港大(以下简称“CUHK”)多媒体实验室读博士(直博),都没有遇到太多的困难。可以说他的学业很顺利。
陈尚堂科技研究部主任
博士毕业后自然加入了商汤科技,最初的岗位是技术管理。真正让他独立的,是让开源项目OpenMMLab在业界家喻户晓。在他的带领下,OpenMMLab在GitHub中成功获得“50000”之星,他和他的团队的影响力在开发者中逐渐打开。
十年从学习者到研究员再到管理者,他可以说是一路小跑到了30岁。青年才俊的背后,是以学术成就闻名的他。也是在工作中努力进取,成绩显著;更重要的是,他坚持自己的技术兴趣和信念,以梦想为马。
本文摘自《新程序员》 004,纸质书电子期刊已正式上市销售。
其他人的孩子
清华大学的自动化专业世界闻名。自成立以来,已培养了一万多名优秀学生。其中不乏佼佼者,遍布系统工程、自动控制、人工智能等领域。深度学习框架Caffe的作者、阿里巴巴集团副总裁贾就是其中之一。他在清华大学自动化专业读了本科和研究生。
2012年,在陈凯与计算机视觉结缘前两年,他被清华大学录取。作为自动化专业的学生,他的日常生活主要伴随着洗衣机,这是该系长期以来的嘲讽:“我们的专业课是自动控制。老师经常以抽水马桶和洗衣机为例,有时还会动手操作。可能是洗衣机用多了,所以大家都叫他们洗衣机部。我们修理洗衣机。”
当然,调侃归调侃,能考上清华的都是“别人家的孩子”,不仅学习能力强,还知道自己想要什么。高中的时候,陈凯就很清楚自己以后想做什么:“我喜欢理科,接触过一些工科概念,觉得学工科很好,可以亲手做,看得见,摸得着。自动化符合我的期待,硬件可以通过软件实现。而且听起来很酷。”
与计算机的软件属性不同,自动化是软硬兼施的。大学期间,陈凯主要学习四种课程:基础学科;计算机,包括网络、编程和算法;电路,包括模拟电和数字电;自动控制原理,这是自动化科学的特色,用他的话说就是“看家本领”。
相比硬件,陈凯更喜欢软件,尤其是控制实现。比如如何把一个倒立摆从一边摇到另一边,但不会掉下来,或者通过编程识别一个手绘简笔画,让它跳舞…
进入大三后,在课程和实践的基础上,陈凯也需要思考自己的出路。毕业后,清学霸打算出国或留校深造,但陈凯选择了CUHK。他的机会来自于商汤科技的创始人唐晓鸥。因为唐教授在清华的一次讲座,陈凯认识了这位人工智能领域的顶尖科学家:“当时觉得的多媒体实验室特别厉害”。
作为一个行动派,“有想法就去做”是他的哲学。暑假的时候,他联系了商汤的团队,想练练。此时的商汤刚刚从实验室起步,人脸算法的识别准确率高达98.52%,超过了行业应用标准,这意味着
学霸中的学霸
计算机视觉并不是一项新技术,但其早期落地相当缓慢。20世纪60年代,统计模式识别首先应用于二维图形的分析和识别,后来实现了三维结构的识别。到20世纪70年代中期,麻省理工学院已经开设了机器视觉课程。后来,这项技术开始从实验室走向工业。最初的结果还不错。到1988年,包括视觉系统在内的人工智能产业收入已经达到数十亿美元。
然而到了90年代,机器视觉的普及并没有像预期的那样爆发,反而是互联网占了先机。当然,互联网的快速发展和产业化也促进了视觉技术的深入研究和落地。
在此期间,正在麻省理工学院攻读博士的唐晓鸥加入了海底机器人实验室,开始了人工智能的启蒙之旅。《泰坦尼克号》是电影史上的经典代表作。为了还原最真实的场景,实验室在寻找沉船的过程中发挥了非常重要的作用。因为他亲眼目睹了机器人完成发现沉船泰坦尼克号的任务,他认定人工智能,尤其是视觉技术,会给未来世界带来不可估量的变化。
博士毕业后,唐晓鸥回国,任教于香港中文大学信息工程系,并于2001年创办了香港中文大学多媒体实验室。他领导的研究人员成为首个利用深度学习研究视觉的中国团队。
陈凯在听了一场讲座后,有幸认识了唐晓鸥。在实验室实习期间,他觉得做视觉特别有意思,也确实很擅长。毕业前夕,他申请在实验室读博,做目标探测方面的研究。在博士后期间,他师从同样毕业于麻省理工学院的林大华,与教授一起撰写的许多论文被列入三次计算机视觉峰会:CVPR、ECCV和ICCV。
2015年底,商汤获得当年ImageNet大赛一等奖。次年,实验室入选“全球人工智能十大先锋实验室”,包括麻省理工和斯坦福。
就这样,陈凯博士在职业生涯的前两年与团队一起成长。到了大三,他开始参与更多的学术实践。在一次目标检测领域的知名学术竞赛中,他和他的团队通过创新算法获得了第一名。“比赛结束后,我们保留了这套目标检测算法框架。经过不断的复制和优化,启动了MMCV(计算机视觉基础库)和MMDetection(物体检测算法库)。”
2018年年中,林大华教授领导了OpenMMLab项目。陈凯作为负责人之一,实际负责项目的后续运作。2018年10月MMCV和MMDetection发布后,他和他的团队正式开源了这个项目。
“前两个库建成后,我们开始开源。当时市场上还没有系统的基于PyTorch的目标检测算法库,刚出来开源的时候在社区里很流行。林大华老师也很支持这件事。他在这个项目里把更多的学生纳入研究方向,包括做动作识别算法库和超分辨率算法库的,从而慢慢把OpenMMLab打造成一个多算法库品牌,这是它的初衷。”
2019年,陈凯毕业后正式加入商汤。他的第一份工作是管理岗,带领团队为公司业务提供算法支持,同时负责OpenMMLab的运营。
在陈凯看来,清华大学把他培养成了一个勤奋的学习者,而HKCU则进一步把他改造成了一个独立的研究者。“本科期间,我打下了很好的基础,包括知识和学业。经过严格的训练,我才得以顺利进入唐先生的实验室。香港大学进一步把我从一个学习者塑造成了一个研究者,让我逐渐具备了独立探索课题的能力,包括如何设计课题,以及如何进行研究方法和完成路径规划。”
除此之外,在最近两年的读博期间,陈凯的团队合作能力和管理意识也有了很大的提升。这段时间,他不再像以前那样一个人搞科研,而是带着一些大三的学生搞科研,有时还组织队伍打比赛。这些经历为他加入商汤的团队打下了良好的基础。
从学习者到研究者再到管理者,他的成就感来自于在峰会上发表论文,来自于选择了正确的方向并被验证,来自于团队每一个成员的成长。
两年晋升总监,带领近百人团队。
《新程序员》:你加入商汤的时候,你的职位是什么,职责是什么?有哪些突出贡献被提拔为主任?
陈凯:2019年毕业后,我去了商汤。当时我在一个偏业务的算法中台团队工作,主要是给主业提供算法支持,也做一些预研工作。当初我的职位是副主任。
在和团队的磨合过程中,我发现了当时的一些问题,比如大家使用的研发工具不统一,研发过程效率低下。针对这两个问题,我主要做了两方面的工作。第一个是不断提高算法的性能,第二个是规范开发工具和流程。
后来我们发现标准化的算法库可以给业务带来巨大的价值,于是我们花了很长时间去搭建一个开源的算法系统。后来这个工作得到了包括我直属上级在内的很多领导的支持,让我也获得了一些资源,我可以做的更大。经过一年多的沉淀,OpenMMLab在视觉领域的影响力越来越大。此外,我在业务上也取得了不错的成绩。基于两方面的工作,我在2021年被提升为总监。
你如何规划你团队的技术研发?每日进行d和登陆转换?可以从团队架构和运营管理的角度来讨论。
陈凯:目前我负责的团队接近百人。我一个人无法涵盖团队每个成员的工作。我们根据不同的研发分成不同的小组。每个小组都有一个负责人。
我每天的工作主要分为两部分,一是求教,二是聚人。实际是负责一些核心的规划,比如年初做全年的安排,承担未来的计划。定下目标后,再和各个方向的领导讨论具体实施。核心算法架构和产品设计我会参与,其他细节主要交给领导,让他们有更好的自由度和成长空间。
在聚人方面,招聘是重要的一环。如何吸引人才,如何培养团队内部的人,都是我工作的重要部分。现在我们已经积累了至少10万字的新人培训文档。
为了建立一个好的社区,我们还需要时刻思考如何通过社区或者其他渠道吸引更多的开发者,接触到优秀的候选人,包括品牌和运营的不定期输出。开源团队里也有很多经验和成果,我会定期请大家和外界分享,通过分享、反馈、重构,打造一个好的技术品牌。
《新程序员》:从学术到研发,再到管理,能分享一件你觉得最有成就感的事吗?
陈凯:在学术领域最有成就感的事情是,第一篇论文赢得了CVPR的关注,我与全世界成千上万的研究人员分享了我的一些研究成果。第一次在这么多人面前“露脸”,我很紧张,也很兴奋。即使后来他在一些比赛中获得了冠军,他也没有那么兴奋。
研发中的成就感;d来自于选对了方向,被验证。比如我们想进一步推进OpenMMLab项目的时候,其实有不同的选择,就是把不同的方向做成一个统一的算法库,或者分成不同的算法库,更强调模块化。最终我们选择了后者,找到了正确的方向,使得我们的先进技术在行业内名列前茅。
除了团队规模的不断扩大,管理层的成就感主要来自于团队成员的成长。我期望的团队是,我们定好目标后,每个学生都能发挥自己的创造力,我主要是起到训练的作用。当然,这是一个长期的沉淀过程。
“50000”星路
《新程序员》: OpenMM实验室项目在GitHub上获得“50000”星。这一成就归功于什么?
陈凯:我觉得主要有两个方面:一方面是时机,我们更早看到了这个领域的潜力;另一方面,是我们的硬实力。OpenMMLab算法库的工程架构是当时开源社区的标杆。我们发布后,会有很多人使用,也会有很多开发者借鉴。
2020年开发者更关注OpenMMLab。我们在世界人工智能大会上发布了重要升级,进一步构建了“人工智能算法开放体系”,这应该是项目立项后的第二个里程碑。
《新程序员》:它对开发者有哪些吸引力?
陈凯:不同阶段对开发者的吸引力是不一样的。一开始主要是单一的算法库。现在是基于系统化的架构,不同的算法库可以“组合打包”应用。例如,开发人员可能需要对象检测和语义分割算法,这些算法可以在OpenMMLab上打包和使用。如果不使用OpenMMLab,开发者可能会在开源项目中找到目标检测算法,但如果后面还想使用分割算法,就需要自己实现,或者另找框架,重新学习研究。
OpenMMLab提供了覆盖大部分视觉方向的算法,而且是基于同一架构开发的,所以使用起来非常方便。同时,模块化的工程设计使得开发者更容易使用,可以简单地添加或替换模块。因此,许多公司将采用OpenMMLab作为内部研发工具。
《新程序员》:2021年也发布了很多新的算法库,包括MMGeneration、MMOCR、MMTracking等。他们能给开发者带来什么帮助?
陈凯:MMGeneration是一代模型算法库。比如我们现在看到的一些热门话题,比如“伪脸”或者“变脸”,都是基于生成模型,可以达到以假乱真的效果。MMOCR主要用于文本检测和识别。现在很多手机和电脑软件都有这些功能,所以我们提供了这样一个开源的工具。
MMTracking主要实现目标跟踪,包括三类:第一类是单个目标,在视频中画一个方框,MMTracking可以一直跟踪;第二类是多目标,其中在一幅图像或一帧中可能有多个物体或人。MMTracking可以持续跟踪每个人的位置,并确保ID正确。两个人走在一起,不会把这个人当成另一个人跟着走;第三类是视频中的物体检测。
“大部分好摘的水果都摘了”
《新程序员》:你认为视觉技术在落地方面发展到了什么阶段?未来有哪些可能的方向?
陈凯:相比2012年和2013年的爆发,视觉的产业应用已经到了一个平台期,或者说是一个瓶颈。“好摘的果子”大部分都摘了。目前主要从事数据标注监督或者模型学习的一些模型。也有很多问题,但是应用还不错。
接下来,在新的学习方向或范式上可能会有更大的发展。比如现在大家比较关注的。这两年我们投入了大模特和超大模特的培训。通过大模型,我们可以得到一个非常好的基准,然后将其推广到具体的任务层面。这是下一个值得研究的方向。很多大公司都会宣传“要训练多少个参数模型”,前提是能耗负担得起资源。
此外,还有一个有价值的方向,就是“了解真实空间”。这么说可能很抽象,但其实就像3D,或者最近很火的元宇宙可以归入这一类。目前,图像和视频的识别和分类在业界已经比较成熟。未来会逐渐关注与真实空间相关的方面,比如如何做3D重建、生成、渲染等。
《新程序员》:你在日常开发中主要使用哪些语言?深度学习你在研究什么课题?
陈凯:技术语言主要有Python、C和CUDA编程。Python是深度学习的必备语言。c和CUDA可以在GPU上写一些高性能的运算符,进一步优化。
深度学习正在研究的课题包括目标检测、自监督学习、分割和3D。就整个团队涵盖的范围来说,我会拓展研究课题或方向。
《新程序员》:有什么学习和实用的建议想给从事AI视觉的开发者?
陈凯:除了推荐我们的OpenMMLab,我们还推荐浏览arXiv.org。上面有很多论文,都会发表或者不发表。另一个不错的网站是Papers With Code,收集了不同领域的算法,主要是计算机视觉和NLP。同时会发一些清单,上面会列出相应的代码,包括如何实现性能。这些对大家查找相关资料很有帮助。个人觉得是个不错的搜索网站。
可以欣赏电子书,也可以欣赏精美的纸质书。

好玩下载

神魔大陆2经典服新手卡「神魔大陆2烧钱吗」

2023-8-24 8:29:21

好玩下载

手机qq令牌下载「扣扣手机令牌下载」

2024-2-4 18:51:52

购物车
优惠劵
搜索