点击上方“小白学视觉”,选择加"星标"或“置顶”
重磅干货,第一时间送达
来自 | 知乎 作者 | bebaa444
链接 | https://zhuanlan.zhihu.com/p/122148241
幼儿园时,每天的期待是周末在奶奶家门口爬树摘枇杷,毕业后便没有再多的牵挂到了小学,班主任实行基于奇偶行列交替的一周一次的shuffle座位法,于是每天便在计算一个学期有多少周可以和喜欢的女孩子坐同桌,毕业后,每当遇见也不再有类似的心动高中,第一次远离家乡,很快有了独立意识,开始了好好学习。入学排名刚过二本线的我,期待着毕业之后能去哈工大学航空航天,想想就很酷,于是每天只睡2.5小时。现在看来,那段时光失去了太多的东西,再来一次也许会多花些时间学学编程,看看历史,读读文学。进了大学,期待着自己能够养活自己,心里想着,如果能拿到阿里的15*15算法工程师的special offer简直就是梦想,如今却已经为笑谈。后来,加入某CV实验室攻读PhD,开启了我正统的CV research之旅。没怎么见过8点的太阳,却天天观赏凌晨三四点的月光。偶尔跑跑长跑,也被救护车送过医院。曾在宿舍憋着几周不出门,也借着开会游历了不少国家和地区。经历了数年的艰苦鏖战,终于通过了博士毕业答辩。曾经以为会有无数感慨,以为这些年压抑在心中已久对研间百态的感想会在在毕业的那一刹那喷涌而出,以为会把曾经无数次的惊奇与兴奋,不满和愤懑,希望和激动,绝望与哀伤一股脑洒在交流时的慷慨激昂。然而,当defense chair说出you have passed the oral defense的那一刻,所有的一切都不再躁动了。突然明白,这段PhD生涯像儿时的成长一样,带给我最大的收获,不是多少papers多少honors,而在于更深入地了解了自己和世界。少不经事的我,一次次小心翼翼的期待,在每一次残酷的成长与认清自己的无知后都显得不再重要。答辩结束后,忙了一周,终于可以抽空写写沉淀下来不再躁动的部分。 AI研究应该是什么样的
本科的我曾天真地认为,学术和工程是分家的,学术远比工程牛逼不少。只有推公式思考问题写paper才是应该做的,paper多多的才是好的;而有dirty work的事情就是工程,我不做;要写大量code的事情就是工程,我不做;解决某个实际问题就是工程,我不做。现在想想真是年轻,缺乏科学素养的指导,没有从小养成正确的学术价值观。机器学习,本质上是数据科学,或者说数据驱动的优化科学。如果我们自己都不能充分理解数据分布,理解系统原理,理解每一个参数底层的意义,又怎么能给算法提供正确的先验呢。近几年来我一直坚持一个观点,工程学科,比如CSE,EE,IE,SE,都是以Engineering为结尾。工程学科的研究,必然以工程需求为出发,以工程落地为结束。工程研究是建立在基础研究的基础上,是人类未来科技发展的一粒粒种子。人类有了对天空的好奇,遍有了对飞行的需求,才有了飞行动力学,进而有了如今各式先进的飞行器。同样,人类有对人造智能体的向往,加上对重复劳动力替换的需求,才有了人工智能,机器学习,计算机视觉等学科繁荣的发展。Fancy却没什么卵用的研究确实令人向往,而遗憾而又无奈的是,这个世界,人类在每一阶段能利用的资源是有限的(土豪除外)。工程研究是需要钱的。新兴行业的钱从哪来?要么能产生价值满足社会需求,要么足够fancy能吸引风险投资。只有在社会需求和资本热点眷顾下的极个别行业才能有足够的资源支持不计后果的研究投入。更残酷的事情是,需求是善变的,资本是短视的,社会能够留给一个学科负投资回报率的周期是短暂的,只有在高估值的资本回撤前完成技术爆炸性提升-->市场需求提升-->更多资本进入&行业效益反哺研究的良性闭环才能真正对整个社会和行业产生正效益。而这之中的关键便是技术的研究方向要满足社会潜在需求点。近年来CV界无数爆款研究工作,如ResNet,FPN,GAN,模型量化剪枝,NAS,三维场景理解...无一不满足上述两点。那么什么是工程学的研究?它是一种范式,人们能通过它更好地定义期待,通往期待,达到期待。可以是对一个问题更本质的抽象,可以是对一种从0到1或从1到99的方法,也可以是对一个猜想的深入理解。而这一切,与是否dirty无关。博士数年,投了不少篇论文,也审了快100篇论文。偶尔翻翻多年前的paper笔记和与朋友的对话,发现对于研究工作评价的心态在这几年发生了很神奇的变化。就像弱者似乎总喜欢拿贬低别人来凸显自己的睿智:“本质上就是个xxx”
“这idea我早想过,居然还真有人当paper投了”
“卧槽这性能也能中?”
“咋不放个大库的结果,做个mnist什么鬼,肯定不work!”
“结果不错,方法就是一堆trick,没啥新东西”
“我没中是因为遇到sb reviewer,比这辣鸡的工作多了去了”
......
后来,paper读得多了,也就释然了,不再纠结一个工作的局部问题,开始逼迫自己挖掘它的亮点。一个文章能中顶会,自然有能征服3个审稿人和2个AC的原因。结果不好但idea是否具有启发性?想法trivial但是否做了很多结论有意义而没什么人愿意做的实验?没什么实验和方法但对现有技术的理解是否更深了一步?学术会议终究是一个沟通思想激发整个领域发展的地方,而不是比谁的工作NB谁的性能高半个点的选美大赛。人类对科学边界的探索永远不是一步一步向前走的,而是像RL agent那样,往前走一步往后退两步,踩踩坑,重复验证下前人的结论,震荡前进。其中每一步都是有意义的,共同促进了optimal curve扎实前行。而从前的我忽略了这一点,陷入了盲目自信的温床,付出了本可以快速成长的机会成本。一直会问自己一个问题,科研既然这么的具有发散性和多样性,真的有一个固定的evaluation metric来衡量它的好坏吗?如果是这样,不就可以用一个AI来自动审稿了吗(确实也有很多类似的研究工作)。目前看来,我对一个好研究工作的标准是具有启发性或普适性,对整个学术界真正有益和正向价值的。这个标准现阶段似乎还不太能定义成一个机器友好的概念(看来reviewer还不会失业,虽然没工资)。举几个差工作的feature:- 结果造假(违反正向价值)
- Novelty不强且只在极个别数据分布上work,其他常规分布不work也不讲,通过无关痛痒的超参不敏感型证明robust (违反普适性和正向价值)
- 改改网络结构,性能涨一两个点,没有深入分析原因而是老中医式强行解释一波(没有启发性)
同时,一个不错的研究者也可以类比定义:坚持做有启发性和普适性的工作,idea要有足够的novelty,分析与理解要有足够insight,刷性能要有绝对的领先。至于讲好故事画美图,那只是锦上添花的事情,千万不要有“好包装拯救水工作”,以及“没做完整的工作先凑合投出去抽个奖”的心态。最近面试了很多申请实习岗的博士和硕士,他们都有一个比较神奇的想法:研究只能在实验室做,到了公司就是业务导向的研究了,不那么“纯”了。确实,他们说的有一定道理,但也不完全对。纵观近代AI的发展史,突破性的工作如曾经的MLP,DBM,DBN,到后来的CNN大多都是在实验室搞出来的,而后来的诸多突破如ResNet,NAS,COCO等又是来源于工业界。对此我的看法会比较极端。我认为较合理的AI研究资源(算力资源和人力资源)分配只有两种:在工业界做解决实际问题的应用类、系统类研究,在实验室做理解性、理论性和启发性的工作。而不幸的是,现在(尤其国内)有非常多老师为了funding和外快,圈起自己的硕博生在实验室用着人均0.5块GPU的资源做着诸如人脸识别、物体检测等高运算需求的刷点工作,还不让出去实习,这是研究资源十分不合理的分配方式,却符合目前的学术圈风格。 科研的人生应该是什么样的
和大多数科研从业者一样,在科研这条道路上我也经历过绝望和痛苦。大三时,在有幸在某跨国公司研究机构A实习。同时,还受到了当时拿到PhD口头offer的老板下的一个小老板的疯狂push,于是我开始了双线工作。但是小老板做的方向和我不一致,且只有push没有任何指导,导致我陷入了一个“小老板push我复现论文结果-->按论文复现后精度对不上-->被小老板冷暴力并继续push”的死循环。到后来才知道学术界里有一些common或隐藏settings是不会在paper里明说的,但在此之前,我陷入了极大的自卑和抑郁的深渊。而这进一步导致实习的活干不好,又担心小老板不开心给大老板反馈会影响到PhD offer,进而更抑郁的恶性循环。期间小老板还使出了类似peer pressure变相威胁等多重暴击,当时和EX也在分手边缘,整个人直接崩了。不久,我便做了一个决定,quit,老子不给你干了,爱谁谁。自那之后,我整个人都变了,对于学术圈充满了防备,但也算是好事,遇到学术圈不正义的事会直接开怼,不再会唯唯诺诺。再后来,通过基友介绍我去了研究机构B,开始了我真正的研究生涯。B公司的mentor对我非常好,在技术、资源和空间上给予了我极大的帮助和鼓励。很快,我便在B发表了第一篇顶会的文章,一投就中的运气令我重拾起我对科研的信心。在gap year中我在B公司全职工作了一年,继续发了两篇一作论文,也学习了如何从研究到落地的全栈流程。现在想来,在整个一年中真正让我长期受益的不是那些paper和项目,而是对待科研正确的态度,对行业的思考与视野。很快,在mentor的推荐下,我来到了C校开始了我的博士生涯。正是由于在B学习到真正受益的学术价值观,让我在C非常愉快地度过了博士学习生涯,有正确的研究方向,遇到不好的事情敢于及时止损,基于对研究领域的vision确定自己的目标,真正为自己的学术兴趣与梦想而研究。这对于大多NB的PhD或许是自然的,而对于在A时的我却是一个遥不可及的事情。后来,我也开始带实习生和低年级的PhD了。由于曾经的经历,我深知初入学术圈的学生的那种惶恐,无知又兴奋的心态,也坚信好的研究者不是靠push出来的。便时刻提醒自己换位思考,为他们带来宽松的成长环境,注重科研方法与态度的培养而不是教他们如何才能快速涨点发paper。说到发paper,如今的AI领域顶会论文质量分布大家也都明白。上限比以前高,下限也远比以前低,均值略微下降的情况下方差激增,这激起了部分研究员内心诸如“摸奖投稿法”、“灌水投稿法”、“斐波那契投稿法”等非常畸形的投稿欲望。但是这样的论文真的有用吗?在筛简历环节确实能蒙过非专业的HR小姐姐们,但在面试环节只能是减分项。想起去年面某北美大厂D的intern program,两个面试官只用了10秒吹捧了一下我impressive的pub list,之后的几十分钟全都在仔细地challenge我paper里的每一个细节和对相关领域的深度思考。如果被问到的方向没什么很好的insight,有很多paper只能说明候选人的研究流于表面,想起曾经拒绝过几个pub list很丰富的实习生,主要原因也是如此。我相信在AI领域,无论是5年前还是现在,无论paper是否已经发生通货膨胀,一个研究员的评估标准从来不是顶会paper的数量,而是对技术理解的广度与深度,以及对技术发展趋势的精准判断。综上。对于初入科研的学生,我觉得最重要的不是迅速发一篇paper,找个大腿蹭一些学术经历,或是找一个实验室勤勤恳恳干活,而是找到一个真正适合的科研环境,勇于止损,同时树立正确的学术价值观,能做到这些,已经比当年的我强太多了。一个paper和经历也许会对未来一到两年会有实质性帮助,而良好的学术价值观会受益终身。当然,如果两者能兼得自然是极好的。作为一个5年经验的科研小兵,目前我认为搞科研就像做投资,最稳妥的是看准长周期趋势(视野)然后深耕(坚持)进去,而不要跟着短周期热点随波逐流,打一枪换个地方,没有什么沉淀。永远有比你在热点领域积累更深的“庄家”挖好了坑等着割你的韭菜。研究的广度自然是重要的,但一定要有核心积累的领域。当然有能力又广又深自然是极好的,但这种人凤毛菱角不具有普遍性。而这一切的基础一定要源于对科研的热爱与激情。见过不少学弟学妹,有些确实能力也很出众,觉得AI火,就要转过来搞AI,听说PhD地位高工资高还能转教职,就要读PhD。问问他们真的喜欢吗,答曰一般吧,也说不上喜欢和不喜欢,就觉得是趋势来钱快所以想all in。这样就很危险。为了生活而做科研,难免落入“还是要恰饭的嘛”的不良学术价值观,进而极大地影响自己的学术风格。希望自己能长期保持这三种特征,快快成长成成熟的研究员吧!因为自己还没有到这个阶段,但根据接触到的A、B、C、D和学术界的诸多资深学者身上学到了不少东西,简单总结一下。相比于科研小兵,有的成熟研究员能独挡一面,成为某细分领域的绝对大牛;有的积极尝试产学结合,将自己深耕的技术领域成功落地,得到了丰厚的经济回报的同时依然在认真做着研究工作;有的进入了学术界,带领并指导出一批又一批厉害的学术新星,自己却很久不coding了。看似各有各的闪耀,我却在他们的身上发现了一些共性:1. 广阔且锐利的视野:如果说一个科研小兵今天的学术成果是一年前埋下种子结的果,那么这些成熟研究员如今的成果大多取决于3-5年甚至更久以前的布局与积累。而曾经选择的研究方向、发展模式、运营手段都是在当时并不一定被看好或追捧的。这需要极强的预判力、对技术和社会的理解与宽广的知识储备。2. 执著甚至偏执:认准了方向就坚持执行下去,做事极有长周期的计划性3. 极强的好奇与精力:对于新的技术永远保持好奇与学习心态,有时甚至比一线科研工作者了解的细节都多,加上触类旁通的宽广知识面,思考产生的成果是远超科研小兵的。4. 极强的运营能力:能够充分调动资源(人力、物力)的利用效率,很少懈怠,长期积累下来的结果就是具有极强的同阶层竞争力(感觉AI能做的更好)5. 机遇与理性:能抓得住每一个关键的机遇,能在失败中迅速恢复理性并深入复盘先写这么多,感谢C,感谢A、B和D mentor们的培养。
下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程,即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。在「小白学视觉」公众号后台回复:Python视觉实战项目,即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。在「小白学视觉」公众号后台回复:OpenCV实战项目20讲,即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。交流群
欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器、自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN、算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~