目录
一、前言
本篇博客是对本学期闵帆老师的“论文写作”课程的总结与个人心得体会。在课堂上,闵帆老师首先深入浅出地为我们讲解了什么是学术论文、为什么要写论文以及如何写论文等问题,再详细地讲述了如何从零开始写好一篇论文,并站在审稿人的角度提醒我们注意一些容易忽视的问题如英文论文用语问题和引用文献选择问题等。以下内容便是我对这门课程的一些心得体会。
二、什么是论文?
在正式开始写论文之前,我们应该先搞清楚“WWHWW”这几个问题,即What、Why、How、When、Where。
1.什么是学术论文?(What)
从我们研究生的角度来讲,一篇论文代表了我们对某一个课题的阶段性研究总结,论文的内容往往包含着一到二个本研究方向的创新点和实验结果总结等。而我们写论文的过程也就是一个“填空”的过程,也就是说论文的大部分结构都是固定的,我们只需要把自己的研究成果分块填到合适的地方去。
2.为什么要写论文?(Why)
从大了讲,学术论文是学术交流的一种主要形式,它不仅是学术界推动知识进步的手段,也是研究者分享成果、获取反馈以及建立学术声誉的重要途径;往小了讲,论文可以帮助我们达到毕业条件,在以后也可能成为我们评职称的保障。
3.如何写好论文?(How)
简单来说就是“套模板”,可以是自己在读了许多文献后总结出来的模板,也可以是前辈总结出来的优秀模板。
4.什么时候写论文?(When)
只要有空了就可以开始写,即使暂时写不出来也要多学习前辈的论文写作经验,在研一上就积累足够的知识储备,研一下就可以开始着手撰写。
5.在哪儿写论文?(Where)
只要有空有想法,在哪儿都可以着手写论文。
三、论文写作工具-LaTeX
LaTeX提供了强大的排版功能,尤其适用于理工科,LaTeX的学习曲线可能会相对陡峭,但一旦掌握,它将成为一个非常强大和高效的工具,特别适用于需要专业排版的学术文档,以下是一些写论文使用时的注意事项。
1.作为研究生,我们需要明白使用LaTeX的基本准则是写论文不要从头写,有想要投的期刊就去找该期刊已被录用的论文的pdf文件作为模板来写,或者直接找该期刊提供的模板文件。
2.cls文件是用于控制论文总体格式的文件,在使用不同的格式文件时,.tex源文件头部需要进行相应调整。
3.bst文件用于控制参考文献的格式。
4.使用 usepackage导入包尽量不要引入特殊的包, 以免在其它系统 (特别是期刊投稿网站上) 上运行不出来。但我们在实际使用的时候也要尽量少使用 \usepackage 以保证兼容性。
5.使用 \newtheorem 增加一些自动编号项。
四、英语用词问题
1.总得来说,没有在其他论文中出现过的词汇是不可以使用的;
2.对于and,禁止在句子的开头用 And,它在这个位置没有任何实际的意义,因为相邻的句子本身就有相关性。句子中间慎用 and,除非你有对仗工整的词组;
3.对于easy、simple这种表示简单含义的词要慎用,因为如果一个东西是很简单的那我们也没有必要去钻研了;
4.可以使用 https://www.linggle.com 查看单词或词汇的使用频率. 例如: related work 有 415,960 次匹配, 而 related works 只有 46,757 次, 一般情况就在论文中使用前者。
五、英语语法问题
我们自己在写论文时,如果英语基础不好,可以使用倒腾法:
先写一个表达自己意思的英文句子,使用 https://translate.google.cn/ 翻译成中文句子,再翻译成英文句子,直到中文句子和英文句子都不再改变 (即收敛);此时再将句子中的非专业词汇换成正确的专业词汇。
第一次倒腾最好从英语句子开始, 而不是中文句子,否则更难收敛,如果收敛后的句子与开始的句子相差太大, 而且并不能表达正确的意思, 就需要根据前者来修改后者。
六、关于论文题目
1.对于计算机方面的论文, 我们需要写出自己提出的新问题或新方法. 新问题应该有意义而且有挑战性, 新方法则应该高效或准确。为了引起审稿人的兴趣,我们需要让题目尽可能地有吸引力。
2.在足够有吸引力的同时,也要让题目便于理解和易于检索。这需要我们在用词上尽量选择本领域内常用的专业名词,这样做也能使论文更容易被检索到,提高被引用的几率。
3.题目的长度也需要有限制,因为题目的篇幅越长往往就说明限定越多、使用范围越窄、创新性越低,这样可能会使审稿人和读者都失去兴趣。
4.在表达使用的技术时,尽量使用through、with而不是based on。
七、关于摘要
1.首先要说明问题及其重要性。可以说明问题所属的领域,解释最重要的概念,或者强调问题的重要性。
2.再介绍已有工作,可以描述该问题的流行解决方案,也就是描述“前辈们”的研究成果。
3.在上一句的基础上,说明现有工作的局限性。通常以 However 开头, 需要注意对“前辈们”的指责不要太强烈, 要尊重别人的成果;要清楚本句干的事情是挖坑, 要保证自己后续所提出的方法能把坑填上。
4.接下来概述本文的工作,通常以 In this paper 开始。这一句是对论文题目的扩展,所以这句可以超过 20 个单词, 这也是全文唯一可以超过 20 个单词的句子。
5.在上一句的基础上开始描述本文方法的第一个、第二个、第三个技术/步骤/方面/优势/贡献,如果不能凑够 3 个方面,会导致论文的工作量显得不够。
6.实验设置和结果:给出实验数据的领域、来源和规模,再说明实验结果提升了效率、准确率等。
7.最后再简单升华一下本篇论文的作用,如为该研究领域又增添了新xxx等。
八、关于关键词
1.关键词常被看作摘要的一种补充,一般需要 3–5 个关键词。
2.每个关键词一般由 1–3 个单词构成。
3.确定好了关键词之后,将它们按照字母顺序排序。
九、关于引言
引言可以被理解为论文主体内容的铺垫,在我们计算机专业领域,引言需要用来讲一个完整的故事。很多审稿人在读完引言后,就有了80%以上的判断,如果引言写得漂亮,他就会在后面的正文中找出一些证据,赞扬研究工作有意义,理论完备,实验效果好等等。相反,如果引言写得难看,审稿人可能会认为作者没受过专业的科研训练,甚至也会在正文中找出几条问题,说论文写得不好。具体规范大致如下:
1.尽量采用与摘要相同的节奏,把摘要的每一句都扩展成引言中的一段。每段的首句被称为"主题句",可以把摘要相应那个句子稍作修改移过来,主题句通常是一种"断言",该段其它句子的作用,都是支撑该断言。
2.每段应有 5–10 句。这样该段就有 50-150 个单词。如果相邻两段都太短,应把它们合并到一起;如果某段太长,就应该拆分或者直接减少文字。
3.计算机领域 (特别是顶会) 流行在引言里面放 “开局一张图”,再在后文展开对这张图的解释。这种方式可以帮助读者花最少的时间理解论文的主要内容、核心技术、算法框架和效果对比等。
十、关于文献综述
1.文献综述是必要的,这表示了我们的文章对前人工作的尊重,我们是站在巨人的肩上眺望远方;同时文献综述也方便读者在不清楚某些技术的细节时便于查阅相关文献。
2.文献需要分门别类地介绍,这有助于审稿人和读者理解本篇论文所在的位置,即描述清楚本篇论文是在本领域的哪个“学派”。
3.不应该将引用的文献作为句子的主语或宾语。
4.不能以时间年份顺序作为主线来叙述。
5.要合理评述相关工作的优缺点,优点是选择跟随性工作的原因,缺点是论文提出创新的动机;在谈到优点时可以使劲夸, 但也不要用口语; 说到缺点时要中肯, 也要客气。
十一、论文核心之一---伪代码
1.首先需要说明输入、输出,方法 (函数) 名可写可不写, 如果被别的方法调用就必须写;
2.需要写出主要步骤的注释,把长度控制在 15-30 行;
3.可使用数学式子或对已有数学式子的引用;
4.一般需要进行时间、空间复杂度分析, 并写出配套的 property 以及相应的表格, 以使其更标准。
十二、实验部分
1.数据集越多、覆盖范围越广、数据集的数据规模越大,就说明实验结果越可信。
2.获取自己主要参考文献中的数据,有利于进行比较。
3.要么获得对比算法的源码,要么实现它们。
4.实验的主要目的是回答一些作者和读者关心的问题,因此我们采用自问自答的方式,在实验之前提出这些问题,在实验结果列出之后逐个回答它们。
5.对于实验结果要进行内部比较,展示参数变化所导致的性能变化和展示主要方案与其变种相比的优势。
6.外部比较即与已有算法进行对比,需要比较经典方案,基准方案,最先进的方案;如果此时数据太多,用表格就比图合适;但如果要把参数影响,数据集大小影响也表现出来,就只有用折线图。同时要有足够的文字进行分析, 不能让读者自己去观察,在分析自己方案优势之余,也应该分析它的劣势。
十三、关于论文结尾
1.结论一般不要太长,5 句就够了,如果想讨论的内容比较多,应该在本节之前加入一个单独的 Discussions小节。
2.避免使用与摘要内相同的句子,摘要里面说我们做了哪些事情,而这里应该说我们获得哪些观察与结论。也就是说,结论比摘要更加具体。可以具体到论文中的某个算法,某条性质,某个定理,某个实验结果,这样就自然与摘要区别开来。
3.如果要讨论说进一步工作,可以列出 3 至 5 条。读者很可能非常关注这一部分,因为他们可以按照这种思路继续进行研究。作为一项研究工作, 打开一扇门比完全解决某一问题更重要。
十四、关于引用文献
1.不能直接使用网上的bibitem。
2.将等号进行列对齐,把写论文当成写代码一样,养成良好的格式习惯。
3.注意文献作者的名字,名在前,姓在后,名不要用缩写。
4.注意题目的大小写,可以用花括号强制设置。
5.会议名如果使用简称,就不要再写全称。
6.由于year域的存在,就不能在会议后面再加年份,这样会导致年份信息重复。
7.不能把特殊字符拷贝进bib文件。
十五、论文中的图片
1.尽量使用矢量图,可以避免在放大时失真,用visio、matlab、python生成的图都可以存为矢量图。
2.围绕图的说明性文字应该比较长,版面应该不低于图片本身版面的1/2。
3.引用图片时,应该保持与图片编号的一致性。
十六、LaTex中表格的控制
1.表格一般应该与文字边距相同。
2.如果数据太多装不下了,可以使用 \resizebox{12cm}{!}{ 来控制宽度,但这也会导致表格中字体自动缩小。
3.所有列都用左对齐,使用0.0000而不是0来保证对齐。
4.使用 \multirow{num}{width}{text} 和 \multicolumn{num}{col}{text} 实现跨行和跨列。
5.添加表格标题和标签: 使用 \caption{} 和 \label{} 来添加表格标题和标签,以便进行引用。
6.使用横线时要注意,过多的横线可能会使表格看起来混乱。精选使用水平和垂直线,避免过多的装饰。
十七、如何回复审稿人意见
稿件投到期刊,如果编辑让修改,多半就有戏了,此时我们思想上务必要端正态度,要清楚编辑和审稿人花大量时间义务审稿不是想为难我,而是来帮助我改进论文质量。
所以对于审稿人提出的问题要直接回答,但回复也不要太长,对正文中的内容进行修改才是最重要的。
如果发现了论文以前版本的某些问题,自己悄悄改了就行,不要给审稿人说,除非这个修改大到肯定会被发现。
个人总结
在上这门课之前,我只知道"WWHWW"中的“W”,而不知道“How”。通过对这门课的学习,我意识到了写论文的重要性,也在学习中不断熟悉论文写作的各种注意事项。以前我认为只要有了好的想法、会写代码就可以写出一篇论文,学了这门课后才发现,照之前那样做的话可能期刊审稿人会连看都不想看我的“论文”。在闵老师的讲授下,我初步了解了一篇计算机领域的论文应该具备的模块以及各个模块的撰写方法,也学会了要从审稿人的角度来思考论文如何写。我会在今后的研究生活中多加学习,进一步加强论文写作能力。