专栏名称: 小白学视觉
本公众号主要介绍机器视觉基础知识和新闻,以及在学习机器视觉时遇到的各种纠结和坑的心路历程。
目录
相关文章推荐
全网快资讯  ·  元宵节的20句祝福语,句句暖心! ·  昨天  
响水零距离公司  ·  响水年后新岗热招!月薪5000+交五险 ... ·  3 天前  
51好读  ›  专栏  ›  小白学视觉

计算机视觉方向的博士,如何做到一直follow新技术?

小白学视觉  · 公众号  ·  · 2024-08-10 10:41

正文

点击上方 小白学视觉 ”,选择加" 星标 "或“ 置顶

重磅干货,第一时间送达

作者 |  谢凌曦,Huang  编辑 | 汽车人

原文链接:https://www.zhihu.com/question/478158497/answer/2475253379

https://www.zhihu.com/question/478158497/answer/2205893690

回答一

作者:Huang

链接:https://www.zhihu.com/question/478158497/answer/2205893690

非常能理解这种感受。每次做完一篇工作,我也会有相似的感受。毕竟我们的精力是有限的,当你全身心投入在一篇工作中的时候,的确很容易忽略和这篇工作没有直接联系的其他领域的工作。这也是为什么跨领域甚至跨学科的工作通常都会是非常有影响力的工作,大到AlphaFold用基因序列预测蛋白质结构,小到ViT用transformer做visual recognition。

我个人的解决方案通常是这样的。第一个是积极地和同行交流,不仅仅是同一个实验室的,还可以是不同实验室的connection。一方面是能和不同领域的同学交流,另一方面,即使研究领域相同,在不同实验室的对于相同问题的viewpoint可能也会或多或少的有些不同的地方。像我现在实习的地方,大家都有不同的研究方向,有做self-supervised learning的,有做few-shot classification的,我们有固定的paper reading section,每周会坐在一起由某个领域的同学讲几篇最近自己领域里的发展,不得不说听领域大佬们讲自己领域的文章,还是比自己硬啃会容易follow得多。可能这也是像workshop这类活动举办的重要意义之一吧~

这也让我想到自己大三帮本科的班主任做一个无人机跟踪的项目的时候,已经有很多基于相关滤波甚至有一些基于deep learning的tracking方法了。无奈当时虽然关注到了,但是身边的同学包括老师也都不懂这些技术,没人交流,自己去硬啃又没法meet project deadline,最后无奈只能用orb特征来做前后的一个匹配,幸运的是最终也是达到了性能的要求,成功交差了。但如果当时能够有幸遇到我两年后的另一位做tracking导师的话,或者他手底下的学生的话,很可能在交流之后我能更早更容易地去follow当时的一些热点,做出更加solid的成果。

我的第二个方法是关注一些自己可能没有什么connection,但是产出质量始终很高的大组。比如像基于video的多模态方向,我最近的一个回答也总结了一些我个人常关注的list,我一般没什么事的时候就去刷刷这些组里的大老板的google scholar,一方面可以观察到大佬的引用隔一天都是几十几十的涨,另一方面也是可以最快得关注到和自己领域有一定overlap的组,最近有没有追随什么热点。

多模态方面,有哪些牛组值得我们follow他们的工作?https://www.zhihu.com/question/461241340/answer/2203736983

两种方法对比,我更喜欢第一种。毕竟第一种方法在很多时候,可以了解到一些别人正在追随而还没有发表出文章的热点,比如最近有一个学弟在我open source我最新的code之前,就通过和我交流,自己reimplement了我的方法,做了修改之后性能很好,准备投cvpr了,而我的文章还在under review...如果是等我的paper和code release之后才去follow的,很可能已经慢了一步了。

其实总结来说,无非就是多和其他人交流,无论是通过面对面的形式,还是看author亲自解读的方式,亦或是直接读对方paper的方式。即使是一个对于所有researcher的biased sampling,始终还是相对自己埋头苦干有那么一些优势吧。

最后祝大家的biased sampling都可以sample到最值得follow的热点,做人不缺paper,做paper不缺人~

回答二

作者:谢凌曦

链接:https://www.zhihu.com/question/478158497/answer/2475253379

在阅读下面的回答之前,先明确一点: 每个人学习、思考的习惯不可能完全相同,甚至可能有很大不同 。下面,我会阐述我的方式,但它不一定适合所有人,要辩证、批判地看待。

首先,我认为 以科研为目标 的初学者需要做的事情有如下几件(从大到小),缺一不可:

  • 领域级 。构建所属领域的世界观,了解整个社区希望解决哪些问题,它分为哪些子问题,当前的推进状态如何。在此基础上,要不时思考:什么问题能做,什么问题还不能做,做哪些事情就能把不能做的事情变成能做。
  • 方向级 。对于自己研究的方向,要了解它的完整发展脉络,包括当前通用的算法是如何一步步发展出来的,历史上有哪些成功、失败的尝试,等等。
  • 课题级 。找到一个具体的课题,深深地钻研下去,尝试改进现有算法的方方面面,并且最终形成一篇论文。即使论文没能发表在很好的会议或者期刊上,也能够得到很好的锻炼。

以我个人的情况为例,简单说明:

  1. 我从事计算机视觉领域的研究。它是人工智能的一个分支,因此我需要去了解人工智能的大致发展历史,要清楚:人工智能的根本问题是什么;从数学上的形式定义是什么(简单地说,就是给定输入 和输出 ,寻找函数 使得 尽量被满足);为什么统计学习是当前解决这类通用问题的最佳途径(因为问题往往具有复杂性和不确定性,因此需要概率建模);深度学习是如何提升统计学习能力的,它的前提是什么(大算力和大数据);深度学习有哪些缺陷(数据驱动、可解释性差,等等)。有了这些知识,我就不会完全迷信深度学习,从而迷失真正重要的事情。
  2. 我当前研究方向之一,是大规模图像预训练算法。我需要清楚:为什么预训练是必不可少的算法(为什么视觉任务通常遵循预训练+微调的范式);预训练算法需要做到什么(捕捉无标签或者混合标签下的数据分布);需要如何与其他方法配合(提供基础backbone以供下游有监督算法微调);预训练算法的发展史(包括早期基于geometry的算法、后来基于contrast的算法、再后来基于prediction或者generation的算法,等等);这些算法的发展有什么规律(这是重点,预训练算法的发展主要体现了人类对于视觉特征本质的不断认识,特别是哪些情况下视觉特征应该保持不变这个根本问题的回答)。当然,当前的算法还有很多不完美的地方,这就是我努力的方向。
  3. 根据上面的认识,我就可以找到一些课题,最终完成具体的工作。例如,我认为当前的预训练方法大多假设data augmentation后图像与原先图像具有相同的特征,以此来获取学习的动力。这个假设有一定的问题,也造成了当前算法的一些局限性。这样,我就找到了可做的课题,可以在一段时间内仔细研究。

也就是说,初学者需要构建起 层次化 的知识体系,为此可能需要数年的时间来不断学习、研究、思考,迭代自己的知识库。我提几个具体的建议,以提高follow新技术的效率。和上面的顺序相反,下面的建议是从小到大的。

  • 每天读论文,比如arXiv推送。初学者可以每天花2-3小时读论文,熟练以后可以逐渐缩短到0.5-1小时。一开始读得慢不要紧,学费总是要交的。逐渐地,你会意识到这样一件事:论文分为两类,一类拓展了认知边界,一类在边界范围内把事情做得更好——大部分论文都属于第二类,而这类论文往往不需要花费太多时间去读,除非你特别关心其中的某些细节。每天扫arXiv列表的时候,完全可以跳过其中80%以上的论文,只去读自己感兴趣的论文,接受漏掉一些“可能有用”的论文:如果这些论文真的很重要,你迟早会在其他推送里看到它。说到推送,公众号们推送的文章并不一定是重要的文章,就像当红明星的演技不一定好一样。要有自己的判断力。
  • 维护一个研究方向的重要问题列表,不时审视这些问题,想想最近有没有看到什么能够推进这些问题的文章或者想法。注意,这些问题不应太大(比如深度学习的可解释性)也不应太小(比如某个参数怎么调节才能提升1%的精度),应该是适中的。对于初学者而言,大概就是“有进展了能发一篇论文”这种级别的问题。每周至少花上2个小时,放空自己,就这些问题展开头脑风暴。但是一旦有想法,要写成文字记录下来(如果你想发表英文论文,最好直接用英文写),记录的过程就是不断挑战自己、充实想法的过程。每隔一段时间,找几个同学(或者在组会上)分享自己的想法,哪怕是非常不成熟的思考。
  • 每1-2个月,给自己一个任务,随机找一个感兴趣的其他研究方向(大多数情况下不出领域),调研它的最新进展。比如我的研究方向是视觉预训练和视觉识别的,可以看看最近图像生成或者三维重建有什么进展,了解下最新发表的模型。这个活动,有助于更新你的科研世界观,让你反思自己维护的那个“什么能做、什么不能做”的知识库是否发生了变化。例如,NeRF这篇文章就让我的知识库发生了快速、中等程度的变化,让我了解到“三维表示原来还可以这样做”;反之铺天盖地的Transformer系列文章倒没有给我太大冲击,只是让我知道这种模块(数学函数)可以更好地拟合数据罢了。顺便说一句,我们要正视Transformer模型在统一图像和文本方面的潜力,所以CLIP这篇文章,虽然方法非常简单,还是开创了一个新的方向,缓慢、中等程度地,更新了我的知识库。要说什么文章能够快速而大幅度地更新知识库,怕是要追溯到AlexNet这种具有划时代意义的论文了。

此外还有一个独立的:要多跟 不同层次 的学者讨论,他们会刷新你不同方面的认知。比较senior的学者可能会让你思考一些从未想过的问题,比较junior的学生可能会跟你讨论很多细节问题,这些都是有益的。如果你口才好,还可以尝试给初学者讲课,接受小白的各种问题的挑战,这样也能提高自己。

写得比较乱,希望有所帮助。总结下来,科研最重要的事情,是构建并维护自己的层次化的知识库。这件事急不得,只能通过点滴积累来完成。加油!

下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲






请到「今天看啥」查看全文