为什么现在不看好 CV 方向了呢?
转载自:https://mp.weixin.qq.com/s/tJbOw5O4ZU-Iqm6uwv8Q6Q
匿名用户回答:
从一个cv内卷失败者的角度来聊一下。cv难的地方主要包含创新算法,模型底层加速和部署
。
前者就是各种大佬,既能够提出好的idea,又能够解决实现idea的各种问题,刚开始idea不一定work需要不断调整,另外很多东西没有现成的轮子需要自己实现。
因此理论能力和工程能力都要具备。后者一般来说c++要够熟练,工程能力尤其是解决bug的能力要强,有些时候还要自己从底层写op,需要熟悉不同平台的指令优化等,这个过程同样需要强的理论功底来加快运算速度。这两方面的大佬真正的核心竞争力就是理论功底加工程能力,只不过不大重叠,不可替代性强。
我之前在实验室基本都是从github上扒模型,调整数据格式,训练一下然后用 flask+gunicorn 部署一下,可以说就是流水线式的工作,核心难点一个都解决不了。别说自己写很复杂的模型了,就是拿着一篇没有开源的论文我都复现不出来,很多自定义的op要写前传反传,其中的数学原理根本搞不明白。
底层部署就更难了,移动端部署还要了解ios和android,有些模型还需要自己用 c++ 把 numpy 的前处理和后处理代码转成C++,真是python一行,C++几十行。在美团实习才第一次接触了C++ tensorflow 在tx2上面推断和处理视频流等。
秋招投的大厂可以说全军覆没,只有拿了某某的客户端开发岗,惨的一匹,怪自己太迟钝,暑期实习不顺的时候就应该果断换方向。
我最后去了一家国企搞图像算法这块,但是看着大家github+flask的标准流水线和丑陋原始卡顿的demo,我知道这种不上不下的工作不可能构成核心竞争力,这种产品不会有智障愿意花钱买的(也就糊弄糊弄领导,看着高大上,但其实就是工业垃圾),干十年和应届生不会有多大差别,反正都是底层的搞不了,上层的算法提不出来。
我建议要是有足够的理论基础和人脉成为算法大佬就努力成为算法大佬。否则,就全力去搞底层的东西,努力去学习模型部署加速这块,成为一个合格的算法工程师而不是算法搬运师。另外,普通人建议出去实习尤其是去那种真正面向实际应用的组实习。
谢流远(深度学习优秀回答者):
因为cv入行最容易,所以最内卷。
nlp还要学点分字分词语法分析啥的,数据清洗里面一堆trick。
语音更是mfcc怎么算都要学半天,完事一堆decoding。
RL先要学一堆policy value q啥的概念,然后里面一堆不足为外人道的trick,你不懂你的模型根本就不收敛。
只有cv会rgb就行了,lab都不需要的。
爱因斯坦回答:
在某互联网大厂CV岗实习过一段时间,从一个底层渣硕的角度说下。
CV目前的岗位相对开发等少很多这个就不说了,我觉得CV对底层渣硕最大的限制在于CV本身太偏学术,太偏科研,同时CV三大顶一年几千篇的速度使得SOTA模型换了一茬又一茬,没有很强的科研能力真的很难跟着走。所以除非你是有两顶的硕士,能证明你的科研能力,不然做CV最好是读个博士,博士所代表的科研能力正好适配于CV这条技术线。到目前为止还没见过人CV组的硕士大leader(硕士的pub能博士毕业那种除外),但开发岗的话硕士和博士则基本没有任何区别。
如果是CV博士或者牛硕(有顶会或者好的a会或者acm奖牌之类的应该属于牛硕了),那感觉完全可以进场CV,绝对不亏。CV在互联网虽然是边缘,但在实体行业CV很多时候是主流,比如自动驾驶,工业检测,ai医疗,ARVR,智慧城市,智能物流等,每个落地点都能改变生活,说实在的做起来也比大多数互联网项目更有价值感,如果你是这种人再去转行反而有些不明智了。
当然了,以上说的是cv算法工程师,cv工程落地完全不在讨论范围内,后者也更倾向于开发。
利益相关:放弃了CV offer降薪转开发的渣硕
谢凌曦(清华大学 工学博士)回答:
按照规矩,先问是不是,再问为什么。
叫衰CV的声音已经持续很长时间了。在我刚入行(2009年)的时候,整个领域处于深度学习爆发的前夜,手中只有局部特征作为武器的研究者们,痛苦地挣扎在PASCAL-VOC检测准确率(AP50)30%-40%的基线上,而MS-COCO还有好几年才会出现。深度学习全面占领CV以后,这些数值都有了很大的增长。目前PASCAL-VOC的SOTA是85%+,而MS-COCO的SOTA已经被刷到了55%+(多模型融合能接近60%:Common Objects in Context)。
同时,我们相信资本是不会说慌的。从近年CV方向的就业情况看,至少资本对这个方向的短期未来还是有信心的。目前(2020年)的情况很像十年以前,一个相对成熟的pipeline已经被发挥到了极致,而新的爆发尚未出现。每当这个时候,总会出现不少叫衰的声音。然而我认为,这些声音中的绝大多数,不过是随波逐流罢了,他们的逻辑很容易被打破。就拿多数人喜欢强调的卷积神经网络(CNN)来说。质疑者们总是强调CNN只是单纯地堆砌算力、不具有可解释性——然而反过来说,仅仅是这样一个非常简单的计算模型,就让CV发展到了一个受到跨学科广泛关注的高度(CV算法已经渗透到各个领域),这难道不令人惊讶吗?我实在是很难相信在未来的10-20年,人类的智慧仅限于CNN及其变种,无法开发出更精巧的计算模型,进一步推动这个领域的发展。
当然我们也要冷静地看到,现在的CV算法离真正的AI还差得远。要想解决落地困难的问题,从局部特征到深度学习这个级别的技术跳跃,至少还要发生两次。虽然它一定会发生,但没人知道下一次跳跃会在什么时间出现在什么方向。所以有的时候我会想:如果不是科研工作者,那么休眠20年再醒过来,直接享受AI发展的红利,一定是美事一桩。正是对改变未来的渴望,赋予了我们无限的想象力,当然还有无尽的烦恼。
最后说一个小趣事。2015年我刚开始做博后的时候,我曾经跟我的老板Alan Yuille闲聊。我说CV太难了,但是我想到两个可能的解决方案。一是人类彻底研究清楚了大脑的工作机制,仿照人脑设计出计算机,直接解决CV问题;二是人类搞定了量子计算,从而将所有可能出现的图像都学习一遍,强行记住所有答案。Alan表示,这两件事都不会发生,但是他的想法(compositional models)是可能实现的,于是就顺势跟我讨论了一个小时。不论是Alan还是我,都对CV的未来抱有切实的期望,也都试图以各自的努力,为这个领域做出一点点的改变。但愿这一天会到来吧。
叶小飞(北美奔驰研究院 高级深度工程师)回答:
作为一个在工业界做了三年CV的工程师和OPPO Reno初代超级夜景核心研发人员之一,我认为CV业界的行情可以用一句话概括:初学者遍地皆是,资深者企业难寻。
CV卷吗?很卷,如果你只是一个上过几门网课,做过几个学校项目就想进入该领域的初学者,或者你是一个入行几年,但是skillset停滞不前的工程师,那么你可能将会被卷得面目全非。CV卷吗?其实也没有到万径人踪灭的地步。对于那些已经入行数年,对方向把握较好,拥有全栈技能的工程师或者有着扎实基本功、一定实习/学术经验和对前沿算法有持续追踪的毕业生而言,在工业界里一定会有一席之地。所以想在CV这行混得风生水起,做出些成就,绝对是有迹可循的。
在这个回答里,我想讲一下CV内卷的原因、从业者怎样才能在卷中生存 以及 我看好的**CV/ML未來发展方向。
CV内卷的原因
任何一个行业内卷严重的根本原因都只有一个:狼多肉少。首先大家为什么都挤破脑袋想做CV呢?
无非三个原因,第一,CV岗位的薪资确实可观。
第二,CV岗位本身比一般的码农职位要有意思,有着浓烈的未来感。
第三,CV在深度学习催化下门槛变低,受过一点训练的高中生都能在一小时里跑起一个Yolo做目标检测。很多人都会忽略,CV入门简单,但是做到高阶水准很难。
那么为什么岗位数量有限呢?我认为最根本的原因是CV本身给公司带来的直接利润有限。它更多时候是作为一个噱头,而不是主打。比如短视频平台虽然涉及大量人脸相关的CV技术,但是它赚钱的核心还是来基于内容推荐与用户互动。换句话说,如果CV就像普通的代码一样成为企业盈利必不可少的基石,那么我认为bar一定会大大降低。当然了,CV对无人汽车的确是刚需,但是别忘了,无人汽车现在本身就是在烧钱的状态啊!
从业者得出路
对于非博士学位的CV工程师来讲,最重要的核心技能一定是工程落地能力。算法再花哨,再state of the art, 如果不能落地,那么对公司来说价值就十分有限。很多算法落地的流程都是Python prototyping + C++ 部署模型,所以对C++的熟练掌握是非常重要的。部署模型时往往需要工程师对原始模型要先进行一系列优化(例如剪枝、蒸馏和量化),所以这就要求工程师对算法本身也要有较好的理解,要做到这一点,必然少不了扎实的数学基本功,和对前沿论文的实时追踪。最后还有一点非常重要却容易被工程师疏忽,那就是学会有效地和上级沟通,能够适时大胆地表现自己,很多事你不去讲,没有人会给予你特别的关注,一个会做演讲的工程师绝对不会混的太差。
在这里再总结一下我认为一流CV工程师应该具备的重要素养:
- 优异的Python与C++编程能力
- 对自己所接触的相关算法有透彻的理解
- 对前沿论文的追踪
- 不错的应用数学基础
- 良好的沟通、表现,演讲能力
CV/ML未来几年潜力方向:
把这两个领域放在一起说,是因为它们俩其实是不分家的。随着5G时代的到来和短视频的兴起,在去年2月份时短视频月活已经超过了8亿,所以几乎可以用脚断定,最近几年国内各大巨头必定对视频理解、视频质量增强、视频压缩等视频方向继续加大研发投资,开始又一轮的竞赛。而对于之前大热的类似超级夜景这种图像质量增强、还有人脸识别等与face 相关的领域会到达瓶颈期,趋于成熟,各大巨头基本已经形成技术垄断。所以对于那些想入坑CV的新人或者想跳槽的有经验的工程师来说,选择视频方向不会有错。
而机器学习最近大火的一个方向是机器学习系统,我尤其看好联邦学习这个方向。除了去年NIPS上这方面的论文数量暴增之外,联邦学习良好的隐私性与可大规模分布性本身就是符合这个大数据时代的潮流的。除了联邦学习,AutoML 也会进一步完善合,各大公司也会开始在这一领域猛砸研发投资。由于联邦学习与AutoML还处于半成型阶段,这两个领域有着巨大的潜力可以挖掘,无论是学者还是工程师,在2021年开始入场两个领域可以有机会占得先机。
总结:
其实对于CV领域从业者来说,我觉得最重要的永远是一个人的热爱, 祝愿在座的各位(包括我自己)在卷得面目全非之际,仍能不忘初心、保持一颗充满激情与斗志之心!