如何从0开始,学习AI(二)
最近忙着做项目,一直没时间更新,今天抽出点时间写一下第二节。
在上一节 如何从0开始,学习AI(一)中,我大概阐述了一下应该如何入门机器学习,深度学习算法,以及如何入门AI的代码,并讲述了到什么程度,就叫入门了。在本节中,我会讲述应该如何从0开始,去阅读一篇论文,以及到底应该阅读哪些论文。
如何选择阅读的论文
在人工智能领域,论文数量浩如烟海,每天arxiv上更新的论文,就算一个人不吃不喝不睡,也不可能读的完。所以我们在阅读论文的时候,必然需要进行有选择性的阅读,才能在有限的时间里,吸收到足够的信息。
而关于论文阅读的目标,一般来说其实分为2个方向,一个是找灵感,一个是学写作。
找灵感说白了,就是找idea,如果没有老师给你安排idea的话,基本idea就是自己看论文找的了。而且这其实也是日后,不管是自己做科研,还是从事算法工作,最重要的能力。网上能看见很多博士论文发不出来,说白了就是硕士的时候,老师帮助太大,可能自己就读了几篇论文,老师直接丢给他一个课题他照着做,做完把结果写成论文,然后老师改完就中了所谓的顶会,申请读了博士。但是其实他自己压根没有独立发现问题,解决问题,找到灵感的能力,在读了博士之后,甚至教职之后,需要自己做科研的时候,就发现脑袋空空。
另一个就是学习写作,事实上,一篇论文能不能中,很大程度取决于你的写作水平,我自己在当时刚开始写作的时候,投的NIPS,然后在review阶段就被审稿人痛骂,说是虽然想法很新颖,实验结果很solid,但是这篇论文的写作让他怀疑实验结果的真实性,然后就低分out了。说白了,因为AI论文本身的验证,特别是现在LLM,验证成本以及难度很高,所以审稿人在审稿的时候,判断你的论文真实性最重要的依据,一个是你的idea的逻辑链条听起来是不是符合审稿人的认知,另一个则是你的写作水平,反应出的科学素养。
那么到底要如何选择,能帮助找灵感,提升写作能力的论文呢?
找灵感
对于找灵感的论文,总共分为两步
- 找到准备做的方向
- 大量阅读相关顶会的工作
第一步,也是最重要的,要找到一个自己准备从事的方向,组里有传承,就在组里传承的基础上接着做,如果组里没传承,需要自己找方向的,那就根据自己能得到的计算资源来选择研究方向。有传承的不谈,我只能留下羡慕的泪水,本文主要针对的是没有传承的同学。对于没有传承的同学来说,最重要的就是估算自己能调度的计算资源,然后选一个稍微热门一点的方向来做。
计算资源的原理很简单,你只有一块4090,甚至3090的卡,你妄想去做LLM相关的工作,这不是老寿星吃砒霜么?你的计算资源直接决定了你能做啥,至于怎么判断,每一篇论文的实验设置部分,都会写论文的显卡配置,找自己能承受的来。
至于选热门的方向,这个就仁者见仁了,AI领域有很多占山头的情况,那种冷门的小方向,很有可能整个方向都被某个组包圆了,只有他们自己在做,审稿的时候大家一看标题可能就大概知道是不是哪个组做的了,那你一个圈外人想发,难度就很大了。但是热门方向,就要考虑有没有可能做的人很多,你的一个idea有可能有很多组在和你一起做,最后就是分秒必争了。
典型的就是只要一个新的backbone出来,那关于它的,下游迁移,各种常规轻量化改造,马上就会在一两个月,两三个月内被人写了发arxiv抢山头。你出了xxx,明天就已经有人新建latex在准备mobilexxx,shufflexxx,resxxx,xxx for seg,xxx for detection,就都出来了。虽然没啥营养,但是确实能发呀,而且这种没啥营养的论文,万一这个backbone后来火了,他们也能分一杯羹,引用就高了。这就和打个王者,出一个新英雄就开始一堆主播冲国服,一般都不是技术主播,但是没事,新的英雄国服分低,比的是速度不是实力,最后这英雄出久了,他们小国都进不去,但是不要紧,历史标记是国标了已经。
在找到了方向之后,那就要开始大量的阅读顶会里的相关工作了。一开始建议读relate-work,一般如果是负责的论文,会把到底这篇论文为啥这么做,是从哪些工作找的灵感,都写的很清楚。当然,也有不负责的,比如中科大前两天不报出来说ICLR被评价为抄袭desk reject,部分原因就是因为relate-work直接照抄的,非常偷懒。评判这种其实也很简单,你看一下它的写作脉络,有没有那种娓娓道来的感觉,还是无脑的xxx用了xxx,xxx用了xxx,其实还挺明显的,多看几篇就知道了。了解整个脉络之后,就开始读这些论文的intro,看看他们领域里有什么问题,他们找到了什么问题,怎么解决的。
如果准备做小创新,那就沿着别人的思路做,看论文解决了问题之后,还有哪里不足,然后再想想怎么改。如果做中创新,那就是这个领域有什么问题,他这么做解决了,但是这么做不行,自己提出一个解决方法。如果要做大创新,那大哥应该不需要看我的入门,毕竟我自己好像也没做出过啥创新来。
在找到灵感之后,那就需要开始读提升写作能力的论文了。
学写作
很多朋友其实会很疑惑,学写作和找灵感,都是读论文,有区别么?为什么要分开说?这其实就涉及到一个准备发啥的问题。
因为很多同学的学校,是不认会议的,CVPR=EI会议<SCI4区的事情在我们AI领域的学校里时有发生,你费劲巴拉好不容易发了一篇会议,结果发现评奖学金不认,毕业不认,那不尬住了?所以学习写作,最重要的还是要找到目标期刊。你要投会议,里面也差别很大,比如ICLR今年是10页,AAAI就只有6页还是7页,ICASSP更是只有4页,而期刊更是普遍不限制页数,只要你付得起版面费,那你写多少都行。版面能放多少东西,直接决定了你要写多少,论文每一个部分的轻重缓急,都不一样,需要对着你的目标会和目标期刊,从那里面找论文,然后学习写作,才有实际意义。更有甚者,我还遇到过实验室有人,投了个3区想水一篇,结果审了好几个月被打回来,因为写太好审稿人让转投更好的期刊的,结果一审又是几个月,浪费了大量时间。最后在毕业答辩前看看收到录取通知,当时他都已经写好中文核心准备投中文保毕业了,可想而知选错的代价有多大。
如何选择阅读的论文
在选择好自己要读的论文后,自然就要开始具体的读论文,这里又分成了几个部分,分别是关于每一块的阅读的侧重点。abs暂且不谈,主要是为了让你了解这篇论文是干啥的,有没有点进去的必要,属于必须通篇阅读的东西。其他的大致分为Introduction,Relate-work,Method,Experiment几个部分,其他有各种写法的,大致都可以归结到这里面去。
Introduction
Introduction可以说是一篇论文最重要的部分,一篇好论文的Introduction,可以非常清晰的勾勒出作者在思考这篇论文的时候的想法。论文的背景是什么?在这个背景下有什么问题?前人是怎么解决问题的?还有哪些不足?作者提出了什么解决了这些不足?大抵上是这样的一个流程。
阅读一篇introduction,最关键的部分,也就是上述问题之间的逻辑衔接了,背景问题不足这些东西阐述的是否有一个完整的逻辑链条,自己的方法是否真的解决了自己提出的问题,这些都是Introduciton需要考虑的,我们阅读一篇Introduction也正是如此。而判断一篇工作到底是不是有意义足够优秀,其实也主要看的是这些。别人在找论文的时候,第一个看到就是你提出的现在有的问题是不是别人遇到的问题,如果正好是,那你工作的意义就出来了。其次就是看有没有有效,如果正好有效被别人采用了,那就是一篇论文最大的贡献。但是如果一篇论文,它的大背景接的问题和背景没关系,问题也不是这个领域真的存在的问题,那大概率就是一篇不怎么样的论文。
Relate-work
Relate-work主要是阐述一下作者是通过哪些工作得到的灵感,顺便给不是很了解这个领域的人了解一下大致情况,如果已经很熟悉了,我自己感觉可以不看。
Method
论文的method部分,一般是在论文精读的时候看,我个人不是很赞成每篇论文的Method都看,因为这其实是一篇论文里看起来最费时的事,展现了论文具体是怎么实现的。就我个人习惯来说,我会现在Introduction,如果我觉得这篇论文是对我有帮助的,我才会看一下论文的Method,看下具体是怎么做的。同时还得看看abs有没有提供代码,如果没有代码,method又写的很抽象的,我也一样不看,因为我知道可能复现起来比我自己想一个写还累,同时还不一定真的有用,但是如果有代码,对照着代码看method,理解起来会方便很多。(当然,那种屎山代码,看了半天连作者Idea写在哪儿都不知道的除外)
Experiment
实验部分我问过好几个朋友他们是怎么看的,问下来的结果大差不大,直接看图看表就行了,文字部分其实没有那么重要,大部分都是对表格内容的阐述。
但是一篇论文看到Experiment,必须要有的一个概念就是,你需要对论文的实验结果有一个大概的预期,然后看实验部分来印证一下自己的预期,或者说,让你自己来设计实验,你会怎么设计?这比如我在Introduction的时候看论文说,做的轻量化工作,或者降低了内存开销,那就会着重看实验部分里这些内容的实验,有没有符合我心里的预期,或者结果怪不怪。前几天就遇到了一篇做降低内存开销的paper,结果实验通篇在测准确率,我就有点无语,是因为和刷点的比准确率比不过,所以换个赛道比么?但是人家做轻量化的也没一定要准确率呀,估计是两头都不拔尖,所以选择不比了。这种工作大概率就不是很硬。但是如果你对论文在读到这儿没有一个自己的预期的话,那就发现每篇论文结果都是最好的,实验看不看都一样,毕竟不好的结果他也不可能放出来。
小结
读论文的方法大概总结到这儿,如果能从浩如烟海的论文中找灵感,学写作,然后对一篇论文能有自己的理解与解释,我个人认为阅读论文的能力就已经非常可以了。下一期,看后续忙不忙吧,可能会出如何写作,也可能就懒更了,继续记录自己看的论文,看心情哈哈。确实感觉上班不比上学的时候松弛了,可惜没念个博,以后看机会能不能念一个哈哈哈