【学术相关】10篇顶会paper,入选微软学者,上海交大吴齐天的科研思考!

机器学习初学者

共 3953字,需浏览 8分钟

 ·

2021-11-04 19:42

作者吴齐天,上海交通大学,导师严骏驰

大家好,我叫吴齐天,今天主要是跟大家分享一下我的科研经历,后面会有一个简单的经验总结。

首先和大家介绍一下我的经历,我现在是交大计算机系的博士生,研究方向是机器学习和数据挖掘,主要是关注复杂结构数据的学习问题,应用场景有推荐系统、在线广告、社交网络以及知识图谱等。目前发表了14篇论文,包括10篇独立一作,其中有6篇论文发表在NeurIPS/ICML/KDD三大顶会上。

科研方法分享

首先,选择一个自己感兴趣的方向非常重要。一个比较好的科研方向,它应该是有理论和实际价值的,同时也是有挑战性的,并且还有比较强的可操作性。

科研的基本流程可以分为四步,首先是选题,然后是确立模型和方法,第三是代码的实现并验证,最后是论文写作。这里可能本科生(或者刚开始接触科研的人)会比较擅长做第三步,就是代码的实现并验证,但是不太擅长第二步确立模型和方法,特别是需要把一个问题模型用数学语言形式化出来的,很少见到刚入门的同学擅长,以及第四个论文写作也是入门容易但精通比较难。这些我稍后会细讲。

其实,在科研的四步流程里我觉得最难的是选题,就是你到底关注什么样的问题,可能是比解决这个问题更难,那么我们就先从最难的说起。选题有一种情况是你的导师或者学长学姐carry你,直接给了一个很具体的题目,那这个时候当然是很好的,但是大部分情况下你需要自己去找做什么样的题目,什么样的方向。这个时候我的建议是,刚开始可以先follow别人的工作,然后从一个非常具体非常明确的问题开始,后面做着做着,再去逐渐深入,把它进行一般化,变换到别的场景去。

文献阅读其实非常重要的。如果你要了解一个领域,读论文是最有效的方式。现在网上有很多大佬带你读论文,包括一堆网课帮你总结资料。但其实说实话,很多这种第二手的资料都是有一些问题的。比如说像以前我们在学一个东西的时候,在某个网站上看到了一个很多人点赞的热门资料,但其实他讲的东西是有问题的,并不是完全是错的,但如果按照他讲的去理解,可能会误入歧途。

如何想idea,这里分享我自己的方法,不一定适用所有的人。我觉得只有当你排除外界的一些干扰,进入到深度思考的时候,可能才有新的想法出来。如果是随随便便就能想到的东西,你能想到别人也能想到,那这个就不是很出彩,也发不了很好的会议和期刊。做实验这部分,我觉得可能要避免重复造轮子。这种模块化和过程的管理非常重要。因为可能你做着发现不行,要倒回去,从某一步重来,这时候没有过程管理,就会很影响进度。

然后我想说的是,发表一篇顶会并不一定说明有科研能力。可能有些刚入门的同学发了很好的会议。但实际上,是导师或学长学姐给了一个明确的idea,然后论文也是导师和学长花了大精力的。在这个过程当中,其实这位同学只做了代码实现这一步,就像是完成了一个很明确的课程作业,最后发表了论文。这个其实不太能说明什么,因为真正最难的,我觉得是用什么样的 idea 而去解决什么样的问题。

真实的科研生活是什么样的?

这里我想分享一些科研工作的真实情况。比如像刚刚说的,科研流程有选题、设计算法模型、实验验证、论文写作这四步。但这是理想化的情况,现实里不太可能一次性从头走到尾。一般是做了实验,发现模型不work要去改;或者实验发现这个算法和实验可能行不通,要全部推倒重来,换一个题目;也有可能是论文写了一半,发现要补某个实验,或者说这个模型哪一块不太严谨。这样来回往复,都是有可能的。

在做实际科研工作的时候,然后也没有像刚刚说的那么美好,比如经常会遇到这三种情况:实验一直没有效果;好不容易做出来了,论文一直被拒;还可能遇到很多负面的审稿意见。

如果在做科研时遇到这些情况,我个人感觉可能有三点需要适当注意。

第一点是,科研和做题是有区别的,前者更关心启发性,后者关心正确性。因为当我们在做科研的时候,其实有时候问题并没有被定的很死,它本身可以很灵活。它并不像我们去做一个题,或者是公司里做研发,有一个很明确的任务要算出一个正确解或者把某某指标提升到多少。相比之下,对于科研来说,做什么样的问题,有什么约束条件,什么样输入什么输出,在什么场景下,这些东西都是可变的。对于发论文来说,审稿人其实最关心往往不是某个score或者公式,他其实更关心的是你的insight,就是说这个工作能不能照亮别人心中的光,启发到更多的人。

第二个,如果论文连环被拒,但是我们又觉得技术的部分是做得很好的,那很有可能是忽略了第二个问题,其实论文写作本身是一门与人打交道的艺术,也就是说需要用一种好的方式去呈现技术内容,包括逻辑的严密性,表达的清晰性和展示性。至少在我们领域,我觉得是 50% 的技术加 50% 的论文写作。有的刚入门科研的同学可能只关注在技术内容上,但忽略了同等重要的论文写作,然后没有讲清楚工作的价值和insight。

第三个不被认同其实是一种常态。因为如果要做出非常好的研究,往往是需要去挑战现有的方法或者范式,然后讲清楚它有什么局限性,新的方法如何解决这些问题的。那肯定就会受到一部分人的挑战和质疑。这个时候其实非常锻炼我们跟审稿人的沟通能力,比如怎么样去理解他真正的concern,怎么以一种委婉的措辞去说服他人。

实际上,读博士的状态可能就是科研与生活融为了一体,有压力有挫折,也时常不被理解。一般就是在投稿ddl之前通常是007工作,但平时的时间相对自由一些。压力和挫折其实也是一种心性上的修炼的。这种不被理解,有时会很孤独,不过也可能说明你看到了很多别人没有看到的东西,然后可以做出一些比较突破性的东西了。

入门AI需要了解的

对于准备或者是刚入门 AI 领域科研的同学,也有些经验想和大家分享。

能力提升

首先是知识储备上。数学中的微积分、线性代数和概率论,编程中的数据结构和算法,这些是一定需要的。当你第一次去看论文的时候,你会有种感觉好像跟之前没学过是一样的,这是因为大学学的知识和这些领域的实际应用之间有一些gap。有时候是一种表达方式上的不同,而有时候是因为本科的课程知识没有覆盖到,比如微积分里面的高维变量微积分,线性代数里面的SVD、矩阵和向量的求导,概率统计里面可能还有比较复杂的高等概率论知识。但这不代表当时学的不重要,因为那些不仅是基础知识,在学习过程中也锻炼了数学思维。

还有一些更高阶的知识,对于希望做一些比较深入的研究课题也是很重要的,比如优化理论、随机过程、矩阵论、信息论、博弈论、泛函分析等等。这些知识很难在短时间掌握,我觉得需要保持不断学习、终身学习的习惯。

另外,还有一些软实力也比较重要,比如说逻辑思辨的能力、讲故事的能力对写论文就非常重要,归纳概括、知识迁移的能力可能对想idea很重要。还有,现在很多论文投稿都需要rebuttal,就是在第一轮审稿人的意见下来后,你需要写回复,所以怎么去回应别人质疑的能力也是非常重要的。

AI科研现状

接下来是一些目前这个研究领域的现状,可以作为给希望入门的同学一些参考。

目前AI领域的更新十分迅速,研究质量也参差不齐,同时由于传媒的影响,真正有价值的不一定是传播很广的,名气大的不一定是真正有大突破的。同时目前论文的投稿,可能一个会议有动辄一万篇投稿量,基本上投稿的作者也是审稿人,分到的审稿人可能并不一定熟悉这个子领域。这种情况下论文中稿的随机性就会很大。

此外,现在套用现成模型的红利期也成为了过去式。可能在两三年前,很多论文都是在某个传统问题上,用深度学习模型去提升模型表达能力,然后性能也能提上去,然后就可以发论文了。但是,现在就很难找到这样的问题,可能更多需要一些底层性的突破。

比如我个人觉得未来可能会有突破性的几个方向。第一个我觉得是受限环境下的学习问题。然后第二个的话是概念表示和认知推理,第三个是机器学习或者深度学习的基础理论,第四个是交叉学科的应用。比如我们实验室刚中今年NeurIPS的一项工作,利用强化学习和图神经网络来对集成电路的布局布线进行自动化设计,我觉得就非常有意思。还有我自己目前的研究,从推理的角度来实现一般化的表示学习。

给科研路上同学的建议

第一个是我觉得兴趣的导向很重要,选择适合自己的路。因为可能有的人天性比较适合做科研,有的人可能比较适合创业或者去工业界实现自己的价值。

第二点,如果选择了做科研,我觉得多跟其他人交流观点和心得会比较重要。因为对于一个idea来说,除了创新性之外,合理性也很重要。当我们把观点表述出来的时候,一方面能收到别人的反馈,还有就是在说出来的过程里自己也会觉察到,有一些不太严谨的地方,或者之前没有考虑到的,这样其实是强化这个idea的合理性的过程。

第三个,我觉得每个人都有自己不同的节奏和选择,决定权在自己手里,选择后不要后悔,找到适合自己的节奏。

以上就是我的分享,欢迎对科研有兴趣的同学一起交流,SJTU-Thinklab实验室常年招收优秀本科生,谢谢大家。

吴齐天

上海交通大学 博士

邮箱:echo740@sjtu.edu.cn

实验室主页:https://thinklab.sjtu.edu.cn/
往期精彩回顾




站qq群554839127,加入微信群请扫码:


浏览 41
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报