本文转自:https://www.cnblogs.com/robert-dlut/p/11623976.html
当我们开始高校研究生活时,我们就踏上了学术研究之路。这是一条探索未知世界,追求知识真理之路。这条道路上布满荆棘,充满了冒险和乐趣。本文通过分享自己在博士学习阶段亲身经历的研究经验和体会(主要涉及到文献检索、文献阅读、实验设计和论文写作这四个方面),希望能帮助一些入门研究不久的同学对学术研究有新的认识,能在研究道路上少走弯路,迈向自己的成功之路。
1 引言
2014年9月,我提着行李箱一个人来到大连这陌生的城市开启了在大工的博士研究生涯。我是从大四毕业设计就已经开始接触自己现在的研究领域——自然语言处理(Natural Language Processing, NLP),经过了硕士,博士这将近九年的摸爬滚打,自己也有了一些研究的心得体会。特别是博士这五年,我觉得是我在研究道路上成长的五年,是自我感悟和磨练的五年。在博士的最后阶段,借此机会,写下我这些年在学术研究之路上自己的一些学习研究经验,希望能对大家有所帮助。
在介绍自己的研究经验之前,我推荐一本凌晓峰和杨强老师著的《学术研究,你的成功之道》[1],这也是当年博士入学时导师推荐给我的。这本书对我学术研究起到了很大的帮助,我也是参考借鉴了书中的研究经验和体会,踏上了自己的研究之路。
图1. 学术研究的主要环节
什么是研究?在自然科学和工程领域,研究广义上可以理解为,通过可重复性的观察和可验证的结果,能够对人类认知世界做出独创性且具有影响力的贡献[1]。创新是研究的核心,影响力是研究的成绩单。兴趣是研究的最好动力,在研究的过程中往往会遇到各种想不到的坎,会让人受挫甚至想放弃,当你对自己的研究领域充满兴趣时,你自然而然就会有很强的主动性,而不是觉得研究是一个枯燥无味的任务。在学术研究中,我们一般会做些什么?其实,学术研究常常是一项系统工程,主要会包括下面几个环节(如图1所示),来共同完成对创新的追求。首先是确定一个方向,提出问题,然后提出自己的解决方法,通过设计实验来进行验证方法的有效性,最后撰写发表论文。这五个环节并不是按照线性顺序一次进行和完成,而是一个多层迭代和循环的过程。而在这整个研究过程中会涉及到很多内容,我将主要谈一下在文献检索、文献阅读、实验设计和论文写作这四个方面上自己的经验体会。
2 文献检索
目前正式发表的论文,主要有两种来源。一种是期刊论文,期刊论文一般是不限定截稿时间,任何时间都可以由作者向期刊投稿,然后经过多个同行专家评审,并经过可能多次修改得到专家认可后,才能由期刊正式出版发表。所以一般期刊上的论文写作会更为规范,在实验设计方面更加的系统完整。但是由于整个过程周期较长,一般一篇论文从投稿到最后发表都需要半年甚至一年以上时间,所以技术会有一定滞后性。另一种是会议论文,特别是作为我们计算机专业,技术发展更新快,会议论文十分重要。相比期刊论文,会议论文一般一年举办一次会议,并在相对固定的时间内征稿,有投稿截止日期。所以在论文写作上,由于时间紧迫,可能没有那么规范。会议论文更强调创新性,发表的周期短,能够更快的获取的技术发展的前沿研究。近年来,由于研究技术更新快,预印本文库(arXiv, https://arxiv.org/)可以发布自己的最新成果,也已经成为了解最新技术的重要信息源。但上面的论文并没有经过严格的筛选,所以质量参差不齐,最好选择已经录用,或者知名团队的论文,需要自己进行判断。
在海量文献中,我们最好是阅读一些高质量的论文,如果作为一个初学者,如何能知道哪些论文会具有高影响力呢?对此,我有以下几条参考建议:
- 一般顶级期刊和顶级会议对论文的接受率比较低,对论文的审稿和筛选比较严格。因此顶会顶刊上的论文一般质量比较高。目前在我们计算机领域,主流的参考分类体系有中国计算机学会(CCF)推荐列表和JCR(Journal Citation Reports)分区。CCF推荐列表推荐对象是会议和期刊论文,分为A、B和C三类,A类最优。JCR分区是对SCI期刊根据期刊影响因子进行1、2、3和4区划分,其中1区最优。但这不是绝对的,并不是说一些不在推荐列表上或者低区的期刊和会议中就没有好论文,这只是一个参考指标。随着研究的深入,你会逐渐清楚如何评判论文的质量。
- 一般来说,一个领域的资深研究者所发表论文的影响力都很高。平时应该多加留意哪些研究者在哪些领域的影响力比较高,也可以找一些高年级的同学了解。
- 还可以借助学术搜索引擎,通过关键词检索出相关论文。一般搜索引擎也会给出论文被引次数,一般被引率较高的论文会有比较高的影响力。
在进行学术研究之初,做好文献检索调研工作是十分重要的。文献检索是根据科研工作或科研课题的需要,有计划、有组织、系统全面地调查、收集有关文献资料的工作过程。当我们确定了研究方向和任务时,如何比较完整地把相关文献检索出来呢?我一般会通过查找综述论文,查找代表性论文和查找引用该论文的论文三个步骤来完成。
首先是查找综述论文,一篇优秀的综述论文往往能够让你对该研究领域有个全面的了解。例如,文献[2]是一篇生物医学文本挖掘的综述论文,从论文提纲目录(如图2所示)我们看到,综述论文中一般会提供该领域的任务介绍、相关数据集和工具,并对现存方法进行系统分类,给出每类方法的代表性工作,最后描述目前应用、存在的挑战和将来工作方向等。对于综述文献的检索:我们可以利用谷歌学术搜索引擎通过关键词+review/survey/tutorial组合来进行综述检索;或者查看一些综述性期刊;还有就是利用中国知网(http://www.cnki.net/)和学术搜索引擎去查找相关的国内外博士论文,通过博士论文中的相关工作章节来了解目前研究状况。
图2. 综述文献[2]目录
除了检索相关综述论文以外,我们还需要检索最近的研究论文。利用学术搜索引擎检索关键词,然后根据时间排序来找到最近相关论文,或者在近年的顶级会议和顶级期刊中检索相关内容。再从这些研究论文的相关工作(Related Work)中找到系列代表性工作。例如图3所示,这是2017年NLP领域顶会ACL上一篇进行实体关系联合抽取工作论文[3]中的相关工作部分。从这篇论文的相关工作里,我们可以找到实体关系抽取的代表性方法。
图3. 文献[3]相关工作部分
最后就是查找引用该论文的论文,通过谷歌学术搜索引擎可以从引用该论文的列表中找到一个研究工作的后续相关工作。例如利用谷歌学术搜索找到引用文献[3]的论文列表,如下图,可以看到引用该论文的论文基本都是和实体关系联合抽取相关的后续工作。
图4. 引用文献[3]的谷歌搜索结果
总结一下,在进行文献检索时,可以先查询综述文献,从综述文献中对研究任务有个整体了解;然后通过关键词查询近期论文,从其相关工作中向前看找到代表性工作;最后查找引用该论文的论文,向后看找到相关工作的后续工作。这样一般就能够比较完整地检索出相关论文。
3. 文献阅读
在学术研究时,需要进行大量的文献阅读。但是我们也不能把所有时间都花费在阅读论文上,这就需要我们进行高效的文献阅读。其实我们在进行文献阅读前,我们需要明确阅读目的,这样阅读时才会有所偏重。一般文献阅读主要有下面的目的:1)了解研究现状,掌握现有解决方法,存在的问题和挑战。这样我们一般可以去阅读一些综述论文。2)把握学术动态和前沿,建议阅读近期的顶会顶刊论文。3)对于了解和掌握一些工程性的处理操作(比如预处理,超参设置,常用特征等),建议阅读一些评测论文。4)学习论文写作,可以阅读一些顶级期刊中第一作者母语为英语的研究者的论文。5)平日积累,丰富知识,可以每天刷刷arXiv。
图5. 论文一般框架结构图
在阅读论文时,我们不要每篇论文都一字一句从头读到尾,这不仅会浪费太多的时间和精力,还会使你的研究思路僵化。一般论文阅读可以分为泛读和精读,在我们明确了阅读目的后,再根据需求进行选择。首先是泛读,我们应快速浏览一遍论文。一般学术论文写作是有一定框架结构的。图5展示了一篇论文一般的框架结构,实线框的部分一般是论文高层次概念,阅读这些内容可以快速的了解论文,对其研究问题、主要动机、解决方案以及实验室结果大致了解。如果我们泛读之后,根据自己的判断和需求,需要进一步的深入,那么再进行精读,否则这篇论文只需泛读掌握核心内容即可。对于精读,我们需要从头再读一篇,细致地推敲论文,可以从网上搜索一些相关资源来帮助理解,如果这篇论文附有源码也可以通过阅读源码来加深对论文的理解。
在阅读之后,我们常常会忽略的是思考。阅读后的思考其实比阅读更重要,只有通过思考,我们才能从中挖掘新想法,尝试着如何更深入研究去超越目前工作。当我们阅读之后,建议大家再对阅读的论文做下面一些思考:1)总结性思考,总结和思考这篇论文的亮点在什么地方,我们能从中学习到什么。2)批判性思考,带着批判的眼光去思考,作者提出的假设条件是否成立?提出的问题是否合理?解决方法有没有缺陷?3)创造性思考,如果不用作者的这套方法,对于这个问题,我们是否还能想到更好、更新和其他的解决方法?4)迁移性思考,作者提出的这种方法是否能够应用于其他任务来解决其他问题?当我们养成思考的习惯后,常常会在思考的过程中找到研究灵感。
俗话说:“好记性不如烂笔头”。当我们经过一段时间的积累后会发现,自己阅读的论文会越来越多,有时又想回过头去再看看那篇论文,但常常都不知道自己把论文丢在哪了。所以学会管理文献和做好阅读总结笔记也是很重要的。在阅读论文时,可以根据习惯打印出纸质版的论文或者直接在电脑上进行阅读,阅读之后建议大家学会利用一些软件来管理自己的文献。我自己使用的是Mendeley软件(https://www.mendeley.com/),这是一款免费的文献管理软件。将论文拖进软件中软件会自动识别论文的基本信息,你还可以利用它建立树形目录来对阅读后的论文进行分类。此外还有高亮,注释,笔记,云同步等功能,十分方便。而且可以通过软件的检索功能很快找到你想查询的相关论文。每次阅读完论文后,建议大家做一个简单的总结笔记,这样不仅可以锻炼你对论文核心内容的总结能力,而且对于事后再读这篇论文时,通过总结笔记能够快速的触发你的记忆点,回想起论文的内容。一个简短的总结笔记应该包括论文简介,论文亮点,实验结果和思考等内容。图6就是我对一篇论文[4]的总结示例。
图6 Mendeley管理文献展示
总的来说,明确阅读目的后进行泛读或者精读,阅读后养成思考的习惯,学会管理文献和做好阅读笔记,提升文献阅读的效率和质量。
4. 实验设计
对于理工科,实验设计是学术研究中不可缺少的部分。实验最重要目的就是验证我们提出方法的有效性。再进行实验设计时,我们需要时刻遵循三个关键词:合理、可靠和完备。实验设计合理,使用数据和数据来源可靠,实验对比方案完备。一般实验设计会涉及到下面几个内容:实验数据,辅助实验,主实验,与先进方法对比和结果错误分析。
实验数据:再进行实验之前,我们得选择合适的实验数据。而且实验数据的来源得可靠。一般我们可以选择一些国内外公开评测的数据集或者是一些其他已发表相关论文中常常使用的数据集。如果你研究的问题确实没有现存的数据集,需要自己构建的话,一定要按照标准正规的方式进行数据集构建。对于同一个研究问题,最好能在多个相关数据集上进行实验,来说明模型方法的泛化能力,这样实验结果也更具说服力。此外,我们还需要注意测试集的规模,尽量不要在测试集规模过小的数据集上进行实验,这样得到的结果缺乏说服力。
辅助实验:一些模型构建时的细节实验,目的是展示一些非核心的部件对模型的影响。例如,不同超参数(如词向量维度,网络深度等)对模型的影响,不同常规模块对研究方法效果的贡献,不同数据划分对研究方法的影响等。
主实验:验证论文创新点的核心实验,这些实验需要根据论文创新工作特点而有针对性的设计,目的是证明本研究工作创新点的有效性。在实验中尽量控制其他变量,只聚焦于本研究关注的挑战问题即可。实验设计要尽量完备,从各个角度去考量提出创新部分的有效性。
与目前先进方法对比:目的是说明本研究工作到达的水平。在与先进方法对比时,不仅需要提供同一个数据集上的先进方法结果对比,还需要重现不同数据集上的相关方法在本实验数据集上的结果进行比较。
结果展示和错误分析:前面的实验数据结果基本都是定量分析,在实验设计里我们也需要进行定性分析。通过对模型输出结果的实例进行错误分析,发现研究工作中的优缺点。错误分析十分重要,有时只通过定量的结果数值我们无法从中发现问题,而通过对错误结果的定性分析思考,我们更容易发现模型的问题所在,从而提出新的方法去进行改进。
5. 论文写作
当我们已经按照上述流程顺利完成了实验,并得到了不错的研究结果。那么接下来的任务就是撰写和发表学术论文,给读者呈现自己的研究成果。学术论文与其他写作形式有所不同,学术论文最重要的是内容必须真实、可信和准确。所以在写作时应该保持严谨,认真的态度,使用正式的书面语,实事求是地去阐述你的研究工作和结果。目前工程领域的学术论文已经形成比较固定的结构,绝大部分论文都会包含下面几个部分:题目、摘要、引言、相关工作、方法、实验和总结。
- 题目:高度概括论文的主要内容,点明任务突出创新。
- 摘要:用几句话概况我们的工作。首先简介研究任务与问题挑战,告诉大家研究问题是什么;然后描述我们做了什么,大概是怎么做的,即我们的解决思路与方法简介;最后通过一些实验结论告诉大家我们做得还不错。
- 引言:比题目和摘要更详细地介绍研究工作。这里常见写作逻辑是首先进行背景简介说明问题是什么且研究具有重要意义;然后对已有方法和主要挑战进行描述;接着给出我们的解决思路和具体方法;最后可以通过一小段点明我们工作的贡献亮点。引言的要点是充分论证我们所做工作的必要性和重要性,让读者认同并期待后面的内。
- 相关工作:介绍研究任务的相关代表性工作,并说明本文工作与已有工作的异同。这部分主要是为读者梳理该问题研究方法的发展脉络,同时对比展示我们工作的贡献和创新性。
- 方法:介绍本文提出的方法流程和模型细节。比较好的表达方法是使用总分结构,首先通过系统流程图或者模型总体框架,概述性的描述方法整体的流程和思路;然后再顺序依次介绍每一个模块细节。
- 实验:其实就是把上述提到的实验设计的内容和结果写出来,主要包括实验设置、数据集合、实验结果、结果讨论等。
- 总结:概况总结本文工作,展望未来研究方向。
上面是一篇学术论文写作应该包含的主要内容,写作不需要过于花哨的辞藻,重要的在于向读者清晰准确地描述自己的研究工作。此外,在对于论文写作还应该注意下面几点:
- 平日论文阅读时,注意积累写作表达。学术论文里多为正式的书面表达,使用口语化的表达会使得论文不认真不严谨。在我们平日阅读他人论文时,就应该注意写作表达的积累,把一些好的论文写作表达记录下来,做为日后自己写作的参考。特别是一些常用的学术表达句式,句与句之间的连接词,段落直接的衔接句等。
- 注重逻辑结构。作为读者,在阅读时是由表及里,即看到论文信息,按照逻辑结构组织阅读,最近理解作者的思想;而作为作者,写作时应该由里及表,首先明白自己的核心思想,然后构建好逻辑框架,再往每个框架中写入内容。如果一个作者自己的逻辑都是混乱的,那么读者如何能清晰地理解你的论文。所以逻辑结构的组织在学术论文写作中尤为重要,严密的逻辑、合理的组织能大大降低读者的理解难度。
- 学会换位思考。在写作时学会进行作者、读者和审稿人三者的切换。并不是一味地以作者为第一视角,我们还时常需要切换到读者第一视角。如果自己作为一个非领域专家的读者,通过现在的写作我是否能理解这个研究工作,论文信息的呈现应该要符合读者的认知惯性。还有就是切换到审稿人的视角,如果自己作为该手稿的审稿人,我对这篇论文会提出什么问题和建议。如果有,那么我们就需要再投稿前把这些问题自己先解决掉,而不是到时给真正的审稿人提出来。
- 细节决定成败。从论文写作的细节往往会反应出作者的学术态度。如果这篇手稿出现大量的字体不统一,图表编号混乱,拼写错误等细节错误,那么给审稿人的印象分一下就很低,会留下不严谨不认真的形象。所以细节也很重要,论文写完后需进行多次检查,力求完美。
实际上,现在也有很多很好的如何进行论文写作的学习资料,在此我推荐清华大学刘洋老师的一个PPT《机器翻译学术论⽂写作⽅法和技巧》[5]和清华刘知远老师的一篇博文《如何写一篇合格的NLP论文》[6],我相信通过仔细阅读这些资料会对你的论文写作有所帮助。
6 总结
学术研究之路是探索之路,是追求之路,是磨练之路。本文是我在自己目前的研究之路上的一些心得体会和经验分享。分别从学术研究中的文献检索、文献阅读、实验设计和论文写作几个环节上进行分享。也是希望可以对一些入门研究不久的同学起到一些帮助作用,早日走上自己的学术之路。
参考文献:
[1] 凌晓峰,杨强.学术研究,你的成功之道[M].清华大学出版社,2012年.
[2] Zhu F, Patumcharoenpol P, Zhang C, et al. Biomedical text mining and its applications in cancer research[J]. Journal of biomedical informatics, 2013, 46(2): 200-211.
[3] Zheng S, Wang F, Bao H, et al. Joint extraction of entities and relations based on a novel tagging scheme[C]. Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics (Volume 1: Long Papers). 2017: 1227-1236.
[4] Liu B, Zhang T, Han F X, et al. Matching natural language sentences with hierarchical sentence factorization[C]. Proceedings of the 2018 World Wide Web Conference on World Wide Web. International World Wide Web Conferences Steering Committee, 2018: 1237-1246.
[5] 刘洋. 机器翻译学术论⽂写作⽅法和技巧. 2014年. http://nlp.csai.tsinghua.edu.cn/~ly/ talks/cwmt14_tut.pdf
[6] 刘知远. 如何写一篇合格的NLP论文. 2019年. https://zhuanlan.zhihu.com/p/58752815
Austin Liu 刘恒辉
Project Manager and Software Designer E-Mail:lzhdim@163.com Blog:https://lzhdim.cnblogs.com 欢迎收藏和转载此博客中的博文,但是请注明出处,给笔者一个与大家交流的空间。谢谢大家。 |