Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

机器学习论文写作理念与最佳实践

本指南汇集了Neel Nanda、Andrej Karpathy、Sebastian Farquhar、Zachary Lipton和Jacob Steinhardt等知名机器学习研究者的写作建议。


目录


叙事原则

来自Neel Nanda的观点

“论文是一个简短、严谨、基于证据的技术性故事,其中必须包含读者关心的核心结论。”

在引言部分结束时,这一叙事应建立在三个明确的支柱之上:

“是什么”:1到3个符合统一主题的具体创新观点。诸如“我们研究了X”这类模糊的贡献会立即被否定——审稿人需要的是具体且可验证的论点。

“为什么”:能够有力支撑这些论点的严谨实证证据,包括经过认真调整的强基线方法,以及能够区分不同假设的实验结果,而不仅仅是展示“不错的效果”。

“那又怎样”:为何读者应该关注你的工作,即如何将你的贡献与学术界公认的重要问题联系起来。

来自Andrej Karpathy的观点

“论文并非你报告的实验结果的随意集合。它要传达的是某种此前并不明显或不存在的新事物。整篇论文都应以这种核心贡献为轴心,以极高的精准度进行组织。”

无论你是提出一种新架构、一个理论成果,还是对现有方法的更深入理解,这一原则都适用——NeurIPS明确指出,“创新性并不一定要求完全全新的方法”。

实际意义:如果你无法用一句话概括你的贡献,那就说明你还没有形成一篇完整的论文。其余所有内容——实验、相关研究、讨论——都只是为了支撑那个核心论点而存在。


时间分配

来自Neel Nanda的观点

建议在以下各部分投入大致相等的时间

  1. 摘要
  2. 引言
  3. 图表
  4. 其余所有内容之和

这并非夸张——大多数审稿人在阅读到方法部分之前就已经形成了初步判断。读者阅读论文的顺序通常是固定的:标题 → 摘要 → 引言 → 图表 → 可能再阅读其余部分

审稿人的阅读习惯

对审稿人行为的研究表明:

  • 100%的审稿人会阅读摘要
  • 90%以上的审稿人只会粗略浏览引言
  • 大多数审稿人会在阅读方法部分之前先查看图表
  • 只有在产生兴趣后,才会完整阅读方法部分的内容

启示:将论文的核心价值放在前面。不要把最重要的贡献藏在后面。


摘要写作公式

Sebastian Farquhar的5句公式

  1. 你的成果是什么:“我们提出了……”、“我们证明了……”、“我们展示了……”
  2. 为何这项工作既困难又重要
  3. 你是如何实现这一目标的(使用相关专业术语以提高可被发现性)
  4. 你拥有哪些证据
  5. 最引人注目的数据或结果

示例(优秀摘要)

We prove that gradient descent on overparameterized neural networks
converges to global minima at a linear rate. [What]
This resolves a fundamental question about why deep learning works
despite non-convex optimization landscapes. [Why hard/important]
Our proof relies on showing that the Neural Tangent Kernel remains
approximately constant during training, reducing the problem to
kernel regression. [How with keywords]
We validate our theory on CIFAR-10 and ImageNet, showing that
predicted convergence rates match experiments within 5%. [Evidence]
This is the first polynomial-time convergence guarantee for
networks with practical depth and width. [Remarkable result]

应避免的内容

摘自 Zachary Lipton 的建议:“如果某句话可以加在所有机器学习论文的开头,那就把它删掉。”

请删除以下这类开头句

  • “大型语言模型已取得了令人瞩目的成就……”
  • “深度学习彻底改变了……”
  • “近年来,神经网络已经……”

直接从你具体的贡献内容写起即可。


引言结构

要求

  • 最多1-1.5页(采用双栏格式)
  • 方法部分应从第2-3页开始
  • 必须包含2-4个以项目符号列出的贡献点(每个点最多1-2行)

结构模板

1. Opening Hook (2-3 sentences)
   - State the problem your paper addresses
   - Why it matters RIGHT NOW

2. Background/Challenge (1 paragraph)
   - What makes this problem hard?
   - What have others tried? Why is it insufficient?

3. Your Approach (1 paragraph)
   - What do you do differently?
   - Key insight that enables your contribution

4. Contribution Bullets (2-4 items)
   - Be specific and falsifiable
   - Each bullet: 1-2 lines maximum

5. Results Preview (2-3 sentences)
   - Most impressive numbers
   - Scope of evaluation

6. Paper Organization (optional, 1-2 sentences)
   - "Section 2 presents... Section 3 describes..."

贡献要点:优秀与糟糕的差异

优秀表现:

  • 我们在假设Y的前提下,证明了X能在O(n log n)时间内收敛
  • 我们提出了Z这种三层架构,使内存占用降低了40%
  • 我们证明在基准测试C中,A的性能比B高出15%

糟糕表现:

  • 我们研究了X问题(但这并非实质性贡献)
  • 我们提供了大量实验数据(但描述过于模糊)
  • 我们为该领域做出了多项贡献(却未具体说明)

句子层面的清晰度表达

源自George Gopen与Judith Swan的《科学写作的科学》

George Gopen和Judith Swan在1990年发表的这篇开创性论文指出,读者对散文中信息的呈现位置有固定的结构预期。若违背这些预期,读者就会将精力花费在结构梳理上,而非内容理解上。

“如果读者要理解作者的意图,作者就必须明白读者的需求。”

读者预期的7项原则

原则1:主谓靠近

将语法上的主语和谓语放得尽可能接近。介于两者之间的内容会被视为次要干扰信息。

表达不佳:“该模型在1亿个标记上进行了训练,并使用秩为16的LoRA技术在领域特定数据上进行了微调,最终取得了最先进的性能。”

表达优化:“该模型在1亿个标记上训练完毕,并通过秩为16的LoRA技术进行微调后,便达到了最先进的性能水平。”

原则2:重音位置(重要信息放最后)

读者会自然而然地强调句子的最后一个词。因此应将最重要的信息放在此处。

表达不佳:“使用注意力机制时,准确率能提升15%。” 表达优化:“使用注意力机制时,准确率可提升15%。”

原则3:主题位置(重要内容置首)

句子的开头决定了论述视角。应首先说明“谁的故事”,因为读者预期句子内容会围绕最先出现的人物展开。

表达不佳:“我们提出了一种用于计算对齐分数的新型注意力机制。” 表达优化:“为了解决对齐问题,我们引入了一种新型的注意力机制。”

原则4:旧信息在前,新信息在后

将熟悉的信息(旧信息)放在主题位置,以便建立前后关联;将新信息放在重音位置,以突出其重要性。

表达不佳:“Child等人提出了稀疏注意力机制。标准注意力的二次复杂度促使他们开展了这项工作。” 表达优化:“标准注意力的复杂度为二次方。为了解决这一问题,Child等人提出了稀疏注意力机制。”

原则5:一个单元,一个功能

每个论述单元(句子、段落、章节)都应承担单一功能。如果有两个观点,就使用两个独立的单元。

原则6:用动词表达动作

应在句子的动词中体现动作,而非使用名词化表达。

表达不佳:“我们对结果进行了分析。”(名词化表达) 表达优化:“我们分析了这些结果。”(动词直接表达动作)

原则7:新信息前先提供背景

在要求读者理解新内容之前,必须先给出相关背景。这一原则适用于所有层面——句子、段落、章节。

表达不佳:“方程3表明,当学习率满足……条件时,收敛性是有保障的。” 表达优化:“为确保收敛性,学习率必须满足方程3中的条件……”

总结表

原则规则记忆口诀
主谓靠近保持主语与谓语相邻“别打断自己”
重音位置重要信息放在句尾“好东西留到最后”
主题位置句首先给出背景“重要的事先说”
旧信息在前先讲熟悉内容,再讲新内容“在已知基础上构建”
一个单元,一个功能每个段落表达一个观点“每个容器只装一个想法”
动词表达动作使用动词,避免名词化“动词负责行动,名词仅作描述”
新信息前先提供背景先解释,再引入新内容“先铺垫,再呈现”

微观层面的写作技巧

源自Anthropic的Ethan Perez

这些实用的微观技巧有助于提升句子和单词层面的清晰度。

代词的使用管理

尽量减少代词(如“this”、“it”、“these”、“that”)。若必须使用代词,应将其作为形容词与名词搭配使用:

表达不佳:“这表明模型能够收敛。” 表达优化:“这一结果表明模型能够收敛。”

表达不佳:“它能提升性能。” 表达优化:“这种修改能够提升性能。”

动词的位置安排

将动词放在句子的开头,有助于提高文本的可解析性:

表达不佳:“在计算并归一化梯度之后,该梯度会更新权重。” 表达优化:“梯度在计算并归一化之后,会用于更新权重。”

括号内所有格的展开

为提升清晰度,可将所有格结构展开:

原形式:“X’s Y” → 展开形式:“The Y of X”

修改前:“该模型在测试集上的准确率” 修改后:“该模型在测试集上的准确率”

虽然并非总是更好,但当句子读起来别扭时,可以尝试展开表达。

应删除的词汇

在几乎所有情况下都应删除以下填充词:

  • “actually”(实际上)
  • “a bit”(有点)
  • “fortunately” / “unfortunately”(幸运的是/不幸的是)
  • “very” / “really”(非常/真的)
  • “quite”(相当)
  • “basically”(基本上)
  • “essentially”(本质上)
  • 过多的连接词(如非必要情况下的“however”、“moreover”、“furthermore”)

句子构建规则

  1. 每个句子表达一个想法——如果难以用一句话表达某个观点,那就分成两句。
  2. 避免重复发音——同一句子中不要出现发音相似的单词。
  3. 每句话都要提供新信息——删除那些仅重复已有内容的句子。
  4. 始终使用主动语态——明确指出执行动作的主体(“我们发现……”而非“它被发现……”)。
  5. 展开缩写形式——为体现正式性,将“don’t”改为“do not”。

段落结构

  • 第一句:清晰阐述段落核心观点。
  • 中间句子:用证据支持该观点。
  • 最后一句:强化观点或实现过渡。

切勿将关键信息藏在段落的中间部分。


用词精准度

源自Zachary Lipton

除非确实存在不确定性,否则应避免使用模糊表述

  • 除非必要,否则删除“may”和“can”这类词。
  • “提供非常精确的近似值”会显得缺乏自信。
  • “提供精确的近似值”则显得十分笃定。

避免使用空洞的强化词

  • 删除:very、extremely、highly、significantly(除非用于统计语境)。
  • 这些词传达的是不确定感,而非优势。

源自Jacob Steinhardt

追求精准而非简洁:用具体词汇替代模糊表述。

模糊表达具体表达
performanceaccuracy(准确率)、latency(延迟)、throughput(吞吐量)
improvesaccuracy提升X%,延迟降低Y%
large10亿个参数、1亿个标记
fast速度提升3倍、延迟为50毫秒
good results准确率为92%,F1值为0.85

术语一致性:对同一概念使用不同术语会造成混淆。

选定一个并始终如一地使用

  • “model”(模型)、“network”(网络)、“architecture”(架构)
  • “training”(训练)、“learning”(学习)、“optimization”(优化)
  • “sample”(样本)、“example”(示例)、“instance”(实例)

词汇的表意功能

避免使用暗示只是微小改进的词汇

  • 绝对不要使用:“combine”(结合)、“modify”(修改)、“expand”(扩展)、“extend”(延伸)。
  • 应改为:“develop”(开发)、“propose”(提出)、“introduce”(引入)。

原因:“我们结合了X和Y”听起来像是把两个现有想法简单拼凑在一起。而“我们开发了一种利用X来实现Y的方法”则体现出真正的贡献价值。


数学写作规范

源自Ethan Perez

为提升清晰度,应展开括号内的所有格结构

  • 表达不佳:“X’s Y”
  • 表达优化:“The Y of X”

例如:“the model’s accuracy”可改为“the accuracy of the model”。

通用原则

  1. 在定理之前,正式列出所有假设条件
  2. 在证明的同时,提供直观的解释
  3. 在整篇论文中保持符号使用的一致性
  4. 首次出现符号时即给出定义

符号规范惯例

% Scalars: lowercase italic
$x$, $y$, $\alpha$, $\beta$

% Vectors: lowercase bold
$\mathbf{x}$, $\mathbf{v}$

% Matrices: uppercase bold
$\mathbf{W}$, $\mathbf{X}$

% Sets: uppercase calligraphic
$\mathcal{X}$, $\mathcal{D}$

% Functions: roman for named functions
$\mathrm{softmax}$, $\mathrm{ReLU}$

图表设计

作者:Neel Nanda

即便读者跳过文字内容,图表也应能够传达连贯的故事。事实上,许多读者在开始时确实会直接跳过文字。

设计原则

  1. 图表1至关重要:它通常是读者在阅读摘要后首先查看的内容
  2. 独立的图注:即使没有正文,读者也应能理解图表含义
  3. 图表内不得出现标题:该功能由图注承担(ICML/NeurIPS规范)
  4. 矢量图形格式:曲线图应使用PDF/EPS格式,照片则仅可使用PNG格式且分辨率需达到600 DPI

无障碍要求

8%的男性存在色觉缺陷。您的图表必须能够满足他们的阅读需求。

解决方案

  • 使用适合色盲人群的配色方案:Okabe-Ito或Paul Tol方案
  • 避免使用红绿组合色
  • 确认图表在灰度模式下仍能正常显示
  • 除颜色外,还可使用不同的线条样式(实线、虚线、点线)

工具

# SciencePlots: Publication-ready styles
import matplotlib.pyplot as plt
plt.style.use(['science', 'ieee'])

# Or for Nature-style
plt.style.use(['science', 'nature'])

需避免的常见错误

结构方面的错误

错误解决方案
引言过长(超过1.5页)将背景内容移至“相关研究”部分
方法描述过晚(出现在第3页之后)将核心贡献放在开头,精简引言
缺少具体的贡献说明添加2-4条具体且可验证的论点
实验部分未明确说明测试目标明确指出每个实验要验证的内容

撰写方面的错误

错误解决方案
摘要开头过于笼统从具体的贡献内容入手
术语使用不一致每个概念统一使用一个术语
过度使用被动语态使用主动语态,例如用“我们证明了”而非“有研究证明了”
到处使用含糊表述除非确实不确定,否则应表达自信

图表方面的错误

错误解决方案
图表使用光栅图形改用矢量格式(PDF/EPS)
颜色方案为红绿对比使用对色盲友好的配色方案
图表内直接标注标题将标题放在图注中
图注依赖正文内容确保图注能够独立成文

引用方面的错误

错误解决方案
“相关研究”部分逐篇列举论文按方法论维度进行分类
缺少相关引用参考审稿人发表的论文,广泛引用
使用AI生成的引用信息必须通过API进行核实
引用格式不一致使用BibLaTeX并保持引文键的一致性

提交前的检查清单

在提交之前,请确认以下内容:

内容表述

  • 能够用一句话概括核心贡献
  • 引言部分清晰体现“做什么/为什么做/有何意义”这三个要点
  • 每个实验都对应一个具体的论点

结构安排

  • 摘要遵循5句话的结构
  • 引言长度不超过1.5页
  • 方法部分从第2-3页开始
  • 包含2-4条具体的贡献说明
  • 有专门的局限性分析章节

写作风格

  • 全文术语使用一致
  • 没有笼统的开场句
  • 除非必要,否则去掉含糊表述
  • 所有图表都配有独立的图注

技术细节

  • 所有引用信息均通过API核实
  • [ | 方法部分包含误差范围说明
  • 记录了计算资源的使用情况
  • 明确说明了代码和数据的获取方式