上了大学之后发现一个很现实的问题:老师布置的作业里经常有”找一篇论文读一下”,或者课程项目需要参考相关文献。但是怎么读论文?从头到尾一个字一个字看?那你看一篇得花一下午,而且看完啥也没记住。
后来我找到了一个很经典的方法论——Keshav 的 “How to Read a Paper”,再加上自己摸索的一些技巧,效率好了很多。今天分享一下。
三遍阅读法(The Three-Pass Approach)
这个方法是 Keshav 在 2007 年提出来的,核心思想是:不要试图一遍就把论文读完。分三遍,每遍有不同的目标。
第一遍:鸟瞰(5-10 分钟)
这一遍只看标题、摘要、引言的最后一段(通常是贡献列表)、每个小节的标题、以及结论。不看公式、不看实验细节。
读完之后你应该能回答这几个问题:
- 这篇论文解决什么问题?
- 用了什么方法?
- 结果怎么样?
- 跟我有没有关系?值不值得继续读?
第一遍的目标不是”读懂”,而是”决定要不要继续读”。大概有 70% 的论文到这一步就可以放下了。
第二遍:细读(1-2 小时)
这一遍要认真看全文,但还是可以忽略数学证明和细节的实验参数。重点是:
- 理解核心论点 — 作者主张什么?为什么这个主张重要?
- 看图和表 — 好的论文,图和表就能告诉你整个故事
- 标记不懂的地方 — 遇到看不懂的术语、引用,先标记,不要停下来查
- 注意引用 — 作者引用了哪些关键文献?这些可能也是你需要读的
这一遍读完,你应该能向别人描述这篇论文的主要内容,包括它的方法、证据和结论。但你可能还无法评估它的优缺点。
第三遍:批判性阅读(4-5 小时)
这一遍的目标是”虚拟重现”这篇论文——假设你是作者,你会怎么做?这一遍需要:
- 挑战每一个假设
- 思考实验设计是否合理
- 有没有替代方法
- 结论是否被数据充分支持
说实话,大多数论文不需要第三遍。只有你在做相关研究、或者这篇论文对你的项目非常关键的时候,才需要到这一步。
去哪找论文
找到好论文和读论文一样重要。这是我常用的几个渠道:
- Google Scholar — 最基础的,搜关键词,按引用量排序
- arXiv — CS/ML 领域的预印本,最新鲜的研究都在这里
- Semantic Scholar — AI 驱动的论文搜索,推荐功能很强
- Connected Papers — 输入一篇论文,它会生成引用关系的可视化图,帮你找到相关论文
- Papers With Code — 带代码的论文,适合想复现的同学
还有一个小技巧:找到一篇好论文之后,看它的引用列表(往后追溯)和看谁引用了它(往前追踪)。这样可以快速建立起对一个领域的认知地图。
笔记怎么做
读论文不做笔记 = 白读。我的笔记模板大概是这样的:
# 论文标题 ## 一句话总结 [用一句话描述这篇论文做了什么] ## 解决什么问题 [背景和动机] ## 怎么做的 [方法的核心思想,用大白话说] ## 结果如何 [关键实验结果,和 baseline 比较] ## 我的想法 [优点、缺点、可以改进的地方] ## 关键引用 [值得继续读的参考文献]
用 Obsidian 或者 Notion 之类的工具记就行。关键是用自己的话写,不要复制粘贴原文。如果你不能用自己的话解释清楚,说明你还没真正读懂。
一些实用建议
最后分享几条我踩过的坑:
- 不要从摘要开始逐字翻译 — 很多人读英文论文的第一反应是”我先把每个词都查出来”。这样效率极低,而且你会迷失在细节里。先看结构,再看内容。
- 数学公式看不懂就跳过 — 大多数论文的核心思想可以用自然语言描述。公式是严谨化的结果,不是理解的前提。
- 一次不要读太多 — 3 篇论文读透比 10 篇论文扫一遍有用得多。
- 读综述(Survey)入门 — 刚进入一个新领域,先找一篇最近的综述看,它会帮你理清整个领域的发展脉络。
- 讨论 > 独自苦读 — 找同学或导师讨论你读的论文,别人的视角经常能看到你忽略的东西。
写在最后
读论文这件事,说到底是一个需要练习的技能。你读得越多,就越快、越准。不要害怕一开始读不懂——那些发论文的教授,看新论文的时候也不是一遍就懂的。
Keshav 的原文:How to Read a Paper(只有 3 页,强烈建议看一遍原版)
好了,以上就是我目前总结的文献阅读方法。希望对你有帮助,有什么好方法也欢迎分享。