1-基础部分-3-读论文
学位论文
摘要
第一章绪论
第二章材料与方法
第三章结果与讨论(1)
第四章结果与讨论(2)
第五章结果与讨论(3)
结论
参考文献
攻读硕士学位期间取得创新性成果
学位论文原创性声明及使用授权
致谢
个人简历
功能:
·题目→点睛,文章的极致浓缩;题目信息量≥50%文章的内容·
·摘要→浓缩的论文(重要程度超过论文主体)
·关键词→漂流瓶上的GPS(频道要一致)
·引言→背景(目的) -现状(那个等待修补的重要拼图)-创新性(我了解了拼图的基本信息)-方法(路线图)。
·材料与方法→我们有什么(有=限制,思维、方法、技术)
·结果与讨论→我发现了什么,我的发现怎么样?
·结论→有得有失
·参考文献→一封感谢信(定位)
摘要
题目的扩写(检查)
内容的缩写(方法)
四要素全是基本要求
摘要是论文主体的浓缩
简洁,要有取舍、详略
关键词
·通过对题目拆解得来
·题目:通过对关键字组合而来。
·准确,过于泛没有针对性。
·冷,过于生僻无人认
·精准+宽泛
·技术在进步,关键词可能没那么重要了?
引言
·引言决定论文的格局
·以为是套路,其实是逻辑
·背景
·进展
·存在的问题
·我的解决方案
·引言是你思考的逻辑顺序
结果与讨论
·科技论文中,撰写结果与讨论的目的可总结为:用论据论证论点。
·拆分1段完整的结果与讨论,我们会发现,其中一定包括以下几点:
1)指出图表; 2)结果描述; 3)规律总结; 4)对比优劣/机理阐明; 5)给出结论。
·以上5部分除了第5部分外,其他4个部分基本上是一定要有的。这5个部分其实也反应了作者在做研究时,对研究本身一个“由表及里”逐步了解的一个过程。
结论
·完美的结论应是超出论文本身的内容
·提炼的、升华的
参考文献
·真正对本研究有用的文献(实事求是)
·重量级相当的文献
·注意格式
·40%的内容来自于参考文献
方法来源
三遍阅读法方法是ACM和IEEE Fellow 剑桥大学计算机教授Srinivasan Keshav的论文阅读技巧
第一遍:该不该读?
1.阅读标题、摘要和简介
2.忽略内容,读一读文章中的每个小标题
3.如果数学内容,先大致浏览,确定其理论基础
4.读结论
5.浏览参考文献,如果有读过的,勾选出来
第一遍阅读后应得出结论:
文章分类
文章背景
结论的正确性
所做出的主要贡献
结构清晰度
第二遍:抓住要点,暂略细节
时间:About 1 hour
1.过程中,仔细查看论文的图表,关注细节
2.标记论文中涉及的、并未读过的参考文献,之后做进一步阅读
第二遍阅读后应做到:
掌握内容,总结主旨
第三遍:重构论文,注重细节
跟随作者的思路,在脑海里重现论文内容
细节!细节!细节!
第三遍阅读后应做到:
看出论文的创新点
找到隐含假设
捕捉试验和技术分析中的潜在问题
引文缺失
读,必须要读,不然从哪里开始学习入门呢?
不过,读文献也要讲方法讲策略,否则读完就忘,也起不到任何作用。个人建议
- 开始的时候找一个领域内相关的综述,越新越好,发表的档次越高越好(可以看影响因子)
- 仔细读完综述,做笔记,写下自己对该研究领域的认知,包括领域现状、关键原理、重点热点方向、面临的挑战等
- 挑一个感兴趣的方向,最好结合自己所在课题组的实际情况,以能完成为前提
- 找出该方向上的最新工作,不限于综述里引用的,最好能找到 10-15 篇,档次尽量不要太差
- 仔细读完这些文章,总结提炼出每一个工作的 idea,包括研究背景、要解决的问题、前人的方法和局限、作者提出的新方法、新方法为什么能避免前人的问题、关键数据和证明等
- 横向比较这十来个工作的 idea,找到其中的共性和不同,尤其是共性的研究背景和要解决的问题,作者提出的不同的新方法
- 此时对领域应该已经有了一个较全面的把握,可以开始构思自己的 idea 了,注意依然要包含上面的要素
- 拿自己的 idea 去跟导师讨论确认
{time}
这篇文章主要是想给大家分享一些论文阅读的技巧。网上相关的经验贴其实很多,我主要是看了沈向洋老师和吴恩达老师的两个视频,结合自己日常的一些体会,写下的这篇文章,两位老师的关于论文的视频我就放在文末了。
本篇文章的目录为
论文的常见框架
读论文的四个层次
读论文的三个阶段
读论文的不同部分应该得出的结论
读论文带着的12个问题
读论文的笔记模板
论文的常见框架
一般的论文都会按顺序包含一下几个部分:
- title
- keywords
- introduction
- related work
- method
- experimental results and discussion
- summary/conclusion
- reference
- appendix
读论文的四个层次(沈向洋)
- 消极阅读(passive reading),即大概知道文章讲了什么;
- 积极阅读( active reading),主动思考这些知识有什么用;
- 批判性阅读(critical reading),思考这篇文章是否言之成理;
- 创造性阅读(creative reading),搞清楚文章对接下来的工作有什么帮助。
读论文的三个阶段
不是所有的论文一拿到就直接从头读到尾的,特别是现在论文这么多,这样做也不现实,所以读论文其实应该分步骤去读,先粗略地看一下,看看这是不是你感兴趣的文章;再简略地过一下全文,尤其是那些很多数学的部分,可以先跳过,大部分的论文看到这就行了,这个时候就基本上已经了解了论文的创新点;精读论文,还可以看一下开源的代码来帮助理解,知道论文的具体的实现的细节,如果是一些特别经典或者是你的工作主要就是基于这篇论文做的,那是肯定得精读的,即使可能得花掉一个星期甚至一个月的时间。具体的每个阶段看的内容如下:
- 第一阶段(速读):Title、Author、Abstract、Figure and Table(Introduction)(沈向洋觉得是论文的前两页,吴恩达觉得看完摘要要先看图表,这对于计算机来说确实如此)—–(快速知道论文讲了什么)。我个人觉得拿到一篇论文之后,先看题目、摘要、结论、图表会好一点,然后如果你不太了解这个领域,想要了解一下作者的motivation,那就可以把引言也读了。
- 第二解决(精读):Read but skim math,这个解决算是对论文的精读,在这个部分可以对论文进行批判性和创造性地阅读,也就是要对论文进行否定、质疑,仔细挑毛病。在读论文的时候可以带着这些问题:
1、论文是否正确、真正地解决了问题?
2、作者论文中所用方法是否有局限性?对论文有了足够的了解之后,如果发现论文中提 到的想法非常优秀,那么要创造性地思考你能用这篇论文做什么
3、如果所读的论文没有解决问题,那么我能解决么?
4、我能采用比论文中更简单的方法解决么?
- 第三阶段(研读):论文的每个部分的具体细节包括代码实现,一般论文特别经典的时候才需要。不过需要主要的是,即使论文很经典,也不见得是每个部分都需要研读,论文的一些部分可能发展到现在已经不 make sense了,比如AlexNet论文里面的各种trick,像这种就没有必要读了。
读论文的不同部分要得到的结论
1、Abstract
- 作者想解决什么问题? question
- 作者通过什么理论/模型来解决这个问题?method
- 作者给出的答案是什么? answer
2、Introduction
- 作者为什么研究这个课题?
- 目前这个课题的研究进行到了哪一阶段?
- 作者使用的理论是基于哪些假设?
3、Conclusion
- 这篇文章存在哪些缺陷?
- 作者关于这个课题的构思有哪几点?
4、Table and Figure
- 文章阶段性的成果
5、Method and experiment
- 研究的数据从哪里来?
- 研究中用到的重要指标有哪些?
- 模型分哪几步? 每一步分别得出了什么结论?
读论文带着的12个问题
我觉得带着论文去读问题效率会高很多。当然不是看所有的论文都是带着这些问题,可能有一些论文你自己看它已经有自己的目的了,那你就根据自己的情况来就好了,下面的是普遍性的。
- What is the problem addressed in the paper? What‘s the input and output? (当然不是每篇论文都有严格的输入输出)
- Is this a new problem? If it is a new problem, why does it matter? If it is not an entirely new problem, why does it still matter?
- What is the scientific hypothesis that the paper is trying to verify? Address what new knowledge is advanced in the pape
- What are the key related works and who are the key people working on this topic? (比如说对于Adam来说,其他的一些优化算法比如说SGD、Adagrad、Rmsprop等就可以稍微回想一下)
- What is the key Of the proposed solution in the paper?
- How are the experiments designed?(虽然一般论文的实验结果都是说自己的结果要好,但是也要注重实验,一来是可以参考别人是怎么设置实验的,还有就是看看作者的实验设置是否合理)
- What datasets are built/used for the quantitative evaluation? Is the code open source?
- Is the scientific hypothesis well supported by evidence in the experiments? Are the claims in the paper well supported by the experimental results?
- What are the contributions of the paper?
- What should/could be done next? (limitation of this paper)
- Are there important related papers I missed?
- What question should I ask the author( Any query??? 比如说你哪里没看懂或者觉得不合理的)
读论文的笔记模板
我觉得在阅读论文的过程中,记录一些笔记是非常重要的,包括在论文中进行一些标注,以及自己写成笔记的形式。论文中的标注大家可能自己有自己的方法,这里就不介绍了,这里主要介绍一下我平时写论文笔记的过程中整理的笔记模板,虽然用这些模板记录真的很花时间,但是等到以后你突然回过头再看这篇论文的时候,有了这些笔记就方便很多了,正所谓:“磨刀不误砍柴工”。
0 论文标题
一句话概括论文的主要内容(用什么样的方法解决了什么样的问题?)
1 论文的结构(简要概括)
按标题的顺序写一下论文的每个部分大概写了那些内容,每个部分大概用一两句话或者几句话来概括。下面给的每个部分的问题不一定作者都提到了,比如说文章的缺陷,如果没提到大家可以不用在这个部分写,也就是论文的结构这一部分只写论文里面提到的,而且只是一个相对简要的概括,所以可能有些问题会和下面的其他部分重复。或者大家觉得还有其他重要的问题但是我下面没有提到的大家也可以自己补充。写这个的主要目的是自己了解一些各种论文结构。
不一定每篇论文当中都是下面的几个部分,大家根据实际的论文去总结,有些论文包含其他部分的大家就根据自己的理解去总结。
1.1 Abstract
- 作者想解决什么问题?
- 作者通过什么理论/模型来解决这个问题?
- 作者给出的答案是什么?
1.2 Introduction
- 作者为什么研究这个课题?
- 目前这个课题的研究进行到了哪一阶段?存在哪些缺陷?作者是想通过本文解决哪个问题?
- 作者使用的理论是基于哪些假设?
1.3 Related work
- 和作者这篇论文相关的工作有哪些?
- 之前工作的优缺点是什么?
- 作者主要是对之前的哪个工作进行改进?
1.4 Theoretical Analysis
- 作者是用什么理论证明了自己的方法在理论上也是有保障的?
1.5 Experiment
- 作者是在哪些数据集或者说场景下进行了测试?
- 实验中的重要指标有哪些?
- 文章提出的方法在哪些指标上表现好?在哪些指标上表现不好?
- 在实验的设置过程中作者有没有提到自己用到了什么trick?
1.6 Conclusion
- 这篇论文最大的贡献是什么?
- 论文中的方法还存在什么问题?
- 作者觉得还可以怎么改进?
2 论文想要解决的问题?
2.1 背景是什么?
2.2 之前的方法存在哪些问题
2.3 输入和输出是什么?
3 论文研究的是否是一个新问题
4 论文试图验证的科学假设
5 相关的关键人物与工作
5.1 之前存在哪些相关的工作
5.2 本文是对哪个工作进行的改进
5.3 这个领域的关键研究者
6 论文提出的解决方案的关键
7 论文的解决方案有完备的理论证明吗
8 实验设计
8.1用到了哪些数据集
8.2与什么算法进行了比较
8.3评价指标是什么
8.4有没有什么独特的实验实验设计?
9 实验支撑
9.1 论文的数据集哪里获取
9.2 源代码哪里可以获取
9.3 关键代码的讲解
10 实验结果是否验证了科学假设?
11 论文最大的贡献
12 论文的不足之处
12.1 这篇论文之后的工作有哪些其他的改进
12.2你觉得可以对这篇论文有什么改进
13 重要的相关论文
14 不懂之处