How to write paper?

  首先,发paper不是为了显得谁厉害,而是大家把研究成果贡献出来分享给社区。因此,你不能只是去吹你的成果多厉害,而是要把背后你要解决什么问题、这个问题有哪些难点、你是怎么解决的、你的方法的核心点在哪里,都要说清楚(而且还要让人看得懂),最后的实验来给出更为详实的证据,加深大家的理解。别人读完你的论文,对某个领域有了新的理解、学到了新的知识或者解决问题的方法。想明白这个设定,你已经在学会写论文的路上迈出了坚实的一大步。下面进入正题。

  第一点:你要学会构思一篇论文的结构,有了结构之后再去填内容。 结构是一篇论文的灵魂!论文不是流水账,也不是秀肌肉,而是一篇结构清晰、内容详实、证据充足的推理文章。结构不清晰直接就GG了。一篇论文由摘要、Introduction、正文三部分组成。个人经验摘要不太重要。Introduction是需要介绍整篇论文的框架。然后正文由几章组成,按照顺序依次介绍Introduction中的每个环节。论文的框架,就是将何种背景、如何发现问题、分析问题、解决问题、做出贡献的,下图展示了论文框架的五个部分。

  背景介绍部分是introduction里最简单的部分了,就是介绍下这个话题的一些背景知识,,只要不是抄来的就行。问题介绍部分,就是要在一个大背景之下,限定这篇论文要解决的问题,并且说明这个问题的重要性,可能需要放一些自己的实验数据或者引用别人的论文作为佐证。一般来说,背景介绍、问题介绍部分不会有太多技术含量很高、原创性强的东西。接下来问题剖析部分,就要开始有很多你自己的东西了。比如你发明了A方法解决B问题。如果B问题是已知的问题, 你就要解释为什么现在的解决方案都不好或者为什么还没有解决方案。如果B问题是未知问题、你自己发现的新问题,那么你就要解释这个问题有多重要。这一阶段,你并没有提出任何解决方案,但是一定要有自己对问题的insight。 注意这个词,insight! 如果你被拒稿多次,你一定被审稿人批判过没有insight。对要解决的问题有深刻的认知并且有自己独特的见解,是一篇论文的基本要求,有时候指出问题比解决问题还要重要。解决方案就是对自己的解决问题的方法的一个简介,这个阶段也需要一些原创性。比如自己提出了那些原创性的方法、或者引入了别人没引入的技术,都算你原创。最后是核心贡献,核心贡献其实就是对你的问题剖析、解决方案的提炼,一般是3-4点,比如你指出了某个别人没指出的问题、你提出了别人没提出过的新方法、你的方法效果有多好等等等。

  框架的构思, 注意十二个字: 环环相扣、步步坚实、逻辑严密。上面我讲的5步,必须每一步是环环相扣的,前有伏笔、后有填坑。比如在问题介绍部分,你指出某个领域有A、B、C三个重要问题,但是你后文只打算解决问题A,那么在问题介绍部分你就需要解释为什么不解决B、C。如果你有证据证明B和C不太重要,是可以的。或者解决问题A的贡献足够构成一篇论文,那么你可以明确表示本文只解决A,B/C以后再说。反正就是不要前面挖了坑,后面不填,要不然你连基本的论文写作标准都达不到,很可能直接就GG了。还有就是必须要保证每一步的证明都是能说服审稿人的。比如问题介绍阶段,你一定要让审稿人相信你要解决的问题是很重要的(虽然实际上可能没有用),旁证左引、引经据典。比如问题剖析阶段,一定让审稿人觉得听完你分析,好像非常有道理、好像对这个问题有了新的认识。总之就是一步踏空,审稿人可能就不打算继续看了。逻辑严密就不多说了,每一环之间都要是自然的递进关系,不要强行扯上关系。写论文的时候,我和其他作者的讨论,大部分都是在讨论整个框架的推理过程够不够有说服力。

  第二点,学会写每一章。从第二章开始,每一章都是更为详细的解释introduction中的内容。已我自己写论文的经验,第二章可以是背景介绍,把Introduction中的问题介绍和问题剖析更为详细的展示出来,该引用论文就引用、该放实验结果就放实验结果。如果太长可以拆成两章,总之要把问题的重要性、你的分析、你的insight、你对前人论文的不足之处的解释都写清楚。第三章可以是一个解决方案的概述。然后可以把解决方案分成两章分别介绍(第四章、第五章)。第六章讲实验,一般是1-2个大实验让审稿人相信你的方案确实可以,然后3-4个小实验作为佐证或者分析一下分支问题。注意!这里每个实验也都是和前面的问题分析、提出的解决方案要对应起来的,前面有铺垫、后面要填坑!论文中的每一段都要师出有名!第七章介绍下related work,第八章再总结一下。关于Related work,在我自己的写作风格里,不是特别重要。因为在问题的分析阶段,我肯定是要把非常相关的前人的论文并且逐一批判的,一般五六篇到十来篇吧。一般是把一些不是特别相关的论文放到related work里面再分类讨论下,不会对整篇文章的逻辑构成很大的影响

  第三点,多看论文,总结经验。写论文一定要多看别人的论文、多反思自己的论文。看的时候要带着思考,想想别人为什么这么写、想想审稿人为什么拒绝你。比如,有些会议喜欢在introduction中放大量的实验,把核心内容都讲清楚,光intro都有两页纸,有些回忆则是点到为止,具体的证据可以后面放,这都是要通过总结经验才能发现的。比如,我投稿被批过论文仅仅是实现了一些算法、只是engineering 没有学术贡献,为了解决这个问题,我学会了在问题分析阶段,把自己要解决的每个具体问题升华成一类问题,证明我的解决方案对于很多重要问题都是有非常大的价值的,而且我发现我最擅长的就是把某个dirty work描述的好像很有理论价值。

  另外有一个经验就是,不要高估审稿人的耐心值,也不要让审稿人帮你总结contribution。一篇computer architecture的论文长达12-14页,即使是大概看一遍也要两三个小时。好的会议录用率可能只有20%,也就是说审稿人花10个小时才能看到一篇比较好的文章。审稿人(实际上是他学生在看)又都很忙,不会真的花两三个小时去看一篇垃圾论文的。所以,写论文要学会总结。我比较喜欢在每一章的开头处用3-4句话总结这一章要说什么、把我的核心contribution列出来。对于每一章的每一段,都在开头或者结尾点下题。这样的话,审稿人只需要花很少的时间,就能知道我要表达什么,极大地减轻了审稿人的负担。如果他对这一章很感兴趣,可以仔细看看,不感兴趣的话直接略过也没关系,反正get到我的点了。这样审稿人既可以了解到你的核心贡献,也可以更快的读完你的论文。

  最后,你花了10分钟看完这篇文章,但是什么长进也没有。因为写论文真的是一件很辛苦的事情,里面的很多思想、很多细节都是需要大量的练习和经验的积累的,而且我没见过有谁无师自通。比如最近在公司参与一些system论文的写作,通常是一个有经验的作者负责主笔,3-4个有经验的人深度参与(每个人20小时以上),贡献自己的意见,最终才能完成一篇高质量的论文。所以学写论文最好的方法,是找个人带你写,比如导师、实习的mentor、大师兄之类的。

  总之,写paper需要足够的耐心,一篇好的paper不是一次就能完成的,需要反复阅读,反复修改才能完成,耐得住寂寞,才守得住繁华。

 

作者:Dr.Evil
链接:https://www.zhihu.com/question/22790506/answer/990626321

posted on 2021-01-14 16:03  DavidTangyuhong  阅读(78)  评论(0编辑  收藏  举报

导航