16

CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!

 3 years ago
source link: https://oldpan.me/archives/cver-want-to-know
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》老潘以一名算法工程师的角度,结合自身以及周围人的情况,理性也感性地分析一下极市平台前些天发布的2020年度中国计算机视觉人才调研报告

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

以下的“计算机视觉人才”简称“人才”,感觉说人才有点怪怪的感觉?自己也算人才么?老潘只不过是一个普普通通的算法工程师罢了(逃)。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

这个报告一共分为几个方面,用大白话讲一下就是:

  • 计算机人才哪个城市最多,哪个专业最多、都喜欢发些什么论文、喜欢什么编程语言、深度学习框架、工作地点等等
  • 作为计算机人才,我们应该学习什么才能不被社会所淘汰,如何提升自己
  • 计算机人才也会有烦恼,不论是在学校还是在公司…

再次声明,该报告是由极市平台、中国图像图形学学会以及Deloitte联合发布。以下图片内容来源于报告,未做任何修改。一共34页的报告PDF,感兴趣的,公众号回复“000”即可获取。

哎呀,废话不多说,开始分析(吐槽)吧。

第一节 人才现状?

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

先看下人才分布?

调研人才分布中硕士和本科占比80%挺正常,硕士做算法工程的更多,博士做算法研究的更多。一般在互联网公司中,大部分都是硕士做算法工程师,来的实习生也都是硕士研究生,当然也有少许的本科生,特别优秀的本科生应该也是可以做算法工程师这个岗位的。

研究生相比本科生的优势可能是:

  • 学位,以及多学了几年知识?
  • 但最重要的是在研究生阶段你有实验室,实验室如果老师资源够好经费足够,是可以做一些其他人没有条件去做的事情。

回想起当年本科生的时候,大家都是凑钱参加比赛,所有设备都是队员们惨兮兮地从生活费中一点一点扣,买个主控板都要精打细算。拿不到好奖项(奖金)的时候也常常入不敷出

不过那会大家都很开心,毕竟是真正的热爱,当年熬夜通宵的日子现在也一去不复返了。

本科生与研究生做项目的区别还有一个:本科生没有约束,作比赛更多的是凭着兴趣,是主动;研究生有导师管着,大部分学生做项目是导师要求,是被动。态度决定一切,兴趣才是不断学习的动力。

哦对了,报告中一句话值得推敲:”在具备相关经验的群体中,其算法经验略多于工程经验“。

好好打工程基础吧!

看一下地域分布

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

来自北京的人才无需质疑数量肯定是第一,原因很简单,北京相应的人工智能企业最多,互联网氛围最好,大家当然都来北京了。接下来是深圳,深圳是创业之都,机具创业热情,硬件公司也多一些,机器人和AI结合的企业一抓一大把。最出名的算是大疆了。

好的企业都被一线二线城市瓜分了,那其他地方呢..

老潘也面临着残酷的事实:我这个专业这个技术方向,回老家实在找不到工作啊。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

再看一下专业分布。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

学计算机专业的就是好呀,计算机相关专业在找工作上是有一定的优势,毕竟人家底子好一些。但是大家不要灰心,现在是自学的时代,网上好资源一搜一大把,只要你肯下功夫学习,不一定比专业搞计算机的差。

专业(相差太大的专业,例如田园设计等,这个难度可能会大些)和你在上学阶段学什么关系并不是很大,关键还是看自己。

趁着在学校,多找些组织,找些资料,赶紧学习吧!

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

果然目标检测的人最多。

目标检测最好入门,资料最多,变种最多,代码最多…特别适合充当毕业生的毕设项目选题。不过如果是找算法开发相关的工作,只会目标检测是远远不够的

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

老潘在前年找工作的时候主打的也是目标检测,当时在实习时候已经聊好了一个公司leader,答应说秋招的时候会再面试一下(就过)。但是秋招的时候那位leader不好意思地跟我说,他们公司目标检测相关任务开发这一块的人已经比较多了,他们更想要招有3D生成或者GAN项目经验的求职者。总而言之就是一句话:

你很优秀,但是不适合我们。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

不过不同公司的需求是不一样的,目标检测这个方向对于大部分公司来说,仍然是需求量比较大的。

时代在发展,AI也在不停进步,你要问我现在CV领域哪儿还不卷?

我也不知道啊~

发表论文分布

发论文最好发的是什么话题?当然也是目标检测了。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

不得不吐槽一下,不管是anchor-base还是anchor-free的检测框架,改一下脑袋(head)改一下颈部(neck)改一下身体(backbone)就可以水一篇论文了。什么?不会改?那就改一下数据集吧~同样的框架,换个场景,又是一条好汉。

喜欢的编程语言

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

还是老潘之前说过的,AI行业最流行的语言就是Python和C++

不论是最火的深度学习框架Pytorch和Tensorflow,还是比较流行的模型加速推理框架TensorRT和TVM。都会提供Python接口来实现与用户的交互,提供API供用户使用,但实际内核代码都是使用C++编写的。原因很简单,为了保证性能以及方便地使用各种加速库(MKL、cuDNN)。另外,C++中的各种特性也比较适合团队协作开发大型项目,感兴趣的可以阅读相关源码,亲自感受下其牛逼之处。

对Pytorch源码感兴趣的可以看:

还有很多这里暂时不介绍了,有兴趣可以关注老潘,时不时会分析一哈框架。

喜欢的深度学习框架

以下内容很真实..国产的深度学习框架使用率7%不到(今年应该超过7%了,paddlepaddle很好用),还是Pytorch和Tensorflow的天下。

PS:感觉Darknet应该是靠yolov3火起来的,而且后继有人不断更新…纯C语言开箱即用对工业界简直不要太好。Caffe2挺可惜。MXNet小而美。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

老潘理性分析一哈。对于学生来说,框架的易用性社区完善度很重要(说白了就是遇到不会的问题,百度的时候资料多不多)。还有刚开始入门的小白,会听别人说什么什么好什么好,跟风使用;但对于公司来说,基本就是根据实际需求选择使用框架,例如这个模型只有Tensorflow的开源版本,有咩有Pytorch的,灭有?复现太耗时间,直接上手Tensorflow吧~毕竟是以业务来驱动的,产出就是第一目标,反之亦然。

目前情况来看,Pytorch不论在学生还是公司占有率优势很大。老潘3年前开始使用Pytorch进行深度学习研究,那会还是0.2版本,对比当时的TensorFlow,简直就像蚂蚁和大象。但短短2、3年时间,蚂蚁已经长大了。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

公司更倾向于Pytorch的原因也很简单:

  • 多种模型Pytorch实现最多(例如CenterNet、FCOS)
  • 多种整合好的训练框架基于Pytorch(mmdet、detectron2)
  • Pytorch训练好的模型部署起来也比较方便(各类推理框架对于Pytorch的支持更多一些,例如TensorRT)
  • 更多数不清的理由(例如debug方便、对新手友好等等)

当然TensorFlow也是有优点的,TensorFlow-server很多公司在使用,虽然也有一部分是历史原因,但是其稳定性和可靠性仍然比大部分的server要强。

PS:推荐一个可以媲美TensorFlow-Server的服务器推理框架——triton-inference-server,前身是TensorRT-server,现已开源,可以部署各种框架模型进去(TensorRT、Pytorch、TensorFlow、Onnxruntime等),老潘研究过一段时间,苦于没有时间分享,感兴趣的可以交流一波~

什么?上述框架满足不了你?你要手撸一个框架自己搞(严重怀疑你是来炫技的)?在学生时代是可以花点时间,模仿其他大型框架写一个小的框架练练手,这里推荐几个项目来瞧一瞧学一学:

一般来说,框架同时具备训练和推理功能。但训练部分写起来挺难,如果是只写推理功能的话,又简单一些。很多框架只有推理功能,感兴趣的可以参考一哈,简单列了一些(并不全):

如果是硬件公司(很多这样的硬件创业公司)使用自己的芯片,也会有相应的AI底层算法工程师去搭建类似于TensorRT这样的产品,写op,操控内存接口,最终产出类似于TensorRT这样的动态链接库,暴露出API供上层调用。

总之,框架这东西还是用的舒服比较好,我嘛,就喜欢用Pytorch

大部分互联网公司搞算法的薪资比搞开发的可能会高一些,但其实也相差不了多少(真的相差不了多少)。

大部分算法工程师也会干开发的活,只是附带算法这个属性罢了。只有真正的算法研究员才是真正研究算法理论退出新算法的。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

对于硬件公司来说(vivo、oppo这类),算法工程师和开发工程师薪资并无区别(硕士校招)。都是有好几档,看各自水平定级。但是会有些研究性质的岗位只要求博士参与,这也就是博士与硕士的差距。

对于硕士研究生来说,算法和开发相差并没有想象中那么大,也不存在所谓的鄙视链。

行业分布还是比较中肯的,人工智能领域与深度学习密切相关。大部分互联网公司也有很多深度学习的业务线存在,例如快手、抖音等各种AI玩法,都是与深度学习关系很深的项目。

还有电商的以图搜图、虚拟试妆;教育领域的视频教学中的课程互动、拍照搜题、智能阅卷等等。都是现在很平常融入生活中的AI场景,也可以说,AI无处不在了。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

借一下报告中的内容:

自2018年起,全球计算机视觉技术不断成熟,开源生态、技术社区、人工智能开放平台的建立也使得算法的开发与应用门槛显著下降。德勤在《全球人工智能发展白皮书》中指出,由深度学习驱动的计算机视觉在某些领域已经超越人类,特别是在人脸识别、图像分类等任务中。同时,在我国,计算机视觉技术的应用拥有庞大的市场空间与丰富的场景数据,因而当技术成熟度达到产业要求时,不少垂直行业,尤其是行业中的头部企业,选择了在组织内部搭建计算机视觉团队,打造行业专属的计算视视觉算法产品或相关功能。

第二节 人才的个人期望与规划

人才能有什么规划?无非就是想不断提升自己的技术水平薪资水平罢了。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

还是北上广深,老潘作为一名算法工程师,因为北京的互联网机会多,就毫不犹豫去了北京。其实对于任何打工者来说,哪的工作机会多当然就去哪儿了,在老家空有一身本领,但找不到合适的工作是最无奈的。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

当然也与城市发展以及公司薪资多少有关系,大城市发的钱比较多,但是房租贵,小城市发的钱比较少,但是房租便宜。究竟去哪儿好,还是看自己

不得不说,程序员这个职业为何适合年轻人,有一点原因就是新技术来的很快,我们需要不停地根据业务需求学习新的知识,最好是能够快速上手。年轻人嘛,不会的东西学学就会了。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

上图已经表达的很清楚了,大部分的程序员都是靠自学。自学是个主动的过程,自己寻找资料自己决定下一步该学什么。虽然有点累但是学习效率很惊人。

个人认为网上的付费视频可以看,但不是必要的,视频只是辅助作用。而且被动学习有时候会让自己产生感觉学习了不少的幻觉,老潘提醒一哈,如果只是光看视频不进行实战(完成一些课后作业啥的),学了不多久就会忘得。

遇到问题就百度或者google一下就好了,大部分的技术文章出自以下这些平台,这些平台是很好交流技术的地方:

  • 腾讯云社区

当然也有很多优秀的个人博客,这里就不一一列举了。不要脸地宣传一下自己的博客(逃):

工作岗位选择?

算法工程师还是最香的,适合算法与工程兼备的童鞋。

高校老师和高效研究生适合喜欢搞研究、喜欢探索新方向的童鞋。

AI产品经理和AI项目经理据老潘所知门槛较高,大厂一般都会要求有实习经验的童鞋。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

研究兴趣变化

报告指出:

在计算机视觉技术发展过程中,随着前沿理论的不断突破、产业应用的趋势变化,计算机视觉领域的人才 研究方向也在相应作出调整。本次报告对在职人员希望未来研究的领域进行了调研,结果发现:目标检测、图像分割、文本理解、目标跟踪仍为计算机视觉人才未来研究的重点方向,同时医学影像处理识别的研究兴趣排名由第 7 位上升到第 5 位,这可能与新冠疫情后医疗领域计算机视觉相关需求骤增有关。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

目标检测目前还是很热门的研究方向,毕竟刚需在那里摆着。老潘建议,学生阶段,最好还是多方向、多尝试尝试不同方向的算法,不要把苹果放一个篮子里。

第三节 社会对人才的述求

硕士级别是算法工程师的敲门砖,那是因为之前本科的时候很少有深度学习的项目,大部分只是ACM或者大学生电子设计大赛这样子的。和人工智能关系不是很大。

现在条件好了,深度学习也普及了,大部分高校也开设了相关的课程。我的表弟他们在本科阶段已经参与一些老师的项目,开始训练yolov3模型部署在TX2上去参加一些比赛,和研究生做的并没有本质上区别,这都是5年前想都不敢想的。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

现在是全民普及AI的时代,AI已经无处不在了。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

很真实,企业对人才的要求实际只有一个

  • 能帮我解决问题!

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

但是解决问题也没有实际那么简单,需要很扎实的基础和较强的学习能力才行。

在企业不同于在学校,企业要求的不可能是demo级别的玩具,更多的是稳定可靠、精度达到要求且可以上线,缺一不可,看似简单,但实际困难重重。与高校场景完全不同,所以建议大家在高校中尽量多参加一些实际的项目,要有反馈,千万不要自嗨

PS:作为算法工程师,往往都是有压力的!拖大家的福,老潘的头发还是很浓密…

其他需求岗位

只有一点要提醒的,不是只有岗位名称包含CV、图像、AI等的才与深度学习有关系。随着深度学习的不断普及,上到算法层,中到软件层,下到硬件层,每个层都有与AI、与计算机视觉相关的岗位。

岗位名称五花八门,这里只说一句,名称是一方面,点进去看岗位介绍最靠谱!

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

关于算法岗位分布与特点老潘之后抽空会汇总一波。

第四节 人才的培养与发展

虽然说我们大部分人是靠自学,感觉有台电脑就可以。但是对于深度学习这个烧钱的方向来说,有设备有机器是最好的,这里列一下我们学习可能需要的设备:

  • 显卡(深度学习训练必备),关于显卡的选择,可以看下我之前的一篇文章给你一份配置清单:机器学习、深度学习电脑显卡配置指南,虽然是之前的,但是仍有参考意义。
  • 推理卡(如果你不搞训练只搞部署),类似于英伟达的TX2、Xavier系列、jetson nano系列,或者树莓派系列。这类板卡适合搞一些工程项目,类似于部署落地

关于部署落地,老潘有话想说:

实验室没有资源的但是又想参与的,可以自己掏钱买显卡(这里简单提一下,可以买2月26日发布的3060-12G显卡,官方建议价2499,性能和之前的1080ti差不多,如果有条件可以抢到,这款卡很适合做深度学习),也可以白嫖一些GPU资源(例如kaggle):

放心吧,只要你真心想入坑深度学习,GPU资源什么的不是大问题,可以通过各种方式解决,关键还是要有热情和兴趣。毕竟深度学习这条路,注定不会一帆风顺。

在学校与在公司的烦恼

在学校的烦恼能有啥哦?老潘认为在学校还是很舒服的…想学什么学什么,想做什么做什么。

不过肯定会有一些不满足于现状的学弟学妹们,想要突破一下自己,找点事情做。这个时候如果导师不给力,还是要靠自己的,主动找点事情做吧~

有疑问也可以与我交流。

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

关于研究生导师和人工智能公司的发展瓶颈(烦恼),就不是我们所考虑的了,看看就行啦!

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

基本高校的课程如下,课程基本是起到引导入门的作用。渴望学习的我们,更多的是希望自己找自己感兴趣喜欢的课程去学习。

课程资源限于篇幅,可以看看这篇:

《CVer想知道的都在这里了,一起分析下《中国计算机视觉人才调研报告》吧!》

正如报告中所说:

短期内在高校开设细分领域的课程仍有不小的挑战:

  • 一方面,计算机视觉细分领域广泛,学生兴趣较为分散,细分领域课程可能无法满足全部学生需要;
  • 另一方面,由于本领域技术迭代速度极快,且部分领域的学习需要多样化产业实际案例的支持,课程开设难度较大。

所以大部分的高校课程都是以打基础为主,非常适合刚入门的童鞋,老潘只想说一句:好好珍惜在学校的美好时光,认真学习吧,不要浪费时间~

时间总是过的很快,还记得那会刚入门深度学习的时候,看吴恩达和李宏毅的课看的津津有味,虽然啥也不懂。转眼间3年过去,现在已经全民AI了,虽然偶尔会迷茫,但已经踏入深度学习的老潘依然会坚持走下去,不论是以何种形式。

文中提到的一些资源仍然在这里

如果你与我志同道合于此,老潘很愿意与你交流;如果你喜欢老潘的内容,欢迎关注和支持。

博客每周更新一篇深度原创文,想与老潘一起学习踩坑的,关注公众号「oldpan博客」不错过最新文章。老潘也会整理一些自己的私藏,希望能帮助到大家,公众号回复”888″获取老潘学习路线资料与文章汇总,还有更多等你挖掘。如果不想错过老潘的最新推文,请点击神秘链接


Recommend

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK