关于 ml-paper-writing
ml-paper-writing 为研究人员和 Claude 提供面向主要机器学习与 AI 会议的论文撰写和修订指导。内容结合从研究仓库提取信息、会议要求、LaTeX 模板及程序化引文核验。
主要功能
- 01主要机器学习与 AI 会议写作指导
- 02研究仓库探索工作流
- 03逐章节起草与修订步骤
- 04LaTeX 模板和会议要求
- 05引文搜索与核验规则
适用场景
- 01将研究代码和结果整理成论文初稿
- 02根据科学家反馈修订各章节
- 03查找并核验相关工作引文
- 04将论文调整为另一会议的格式
MCP 相关
该技能建议使用 Exa MCP 实时搜索学术论文,并说明可通过 Semantic Scholar API 核验搜索结果、按 DOI 获取 BibTeX。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ kalarislabs/ research-agent-skills --skill ml-paper-writing安装后在 Claude Code 中输入/ml-paper-writing确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
references/checklists.mdcitation-workflow.mdfrom-research-repo.mdissues-reviewers-figures.mdlatex-templates-and-conversion.mdreviewer-guidelines.mdsources.mdwriting-guide.mdwriting-philosophy.mdtemplates/aaai2026/aaai2026-unified-supp.texaaai2026-unified-template.texaaai2026.bibaaai2026.bstaaai2026.styREADME.mdtemplates/acl/acl_latex.texacl_lualatex.texacl_natbib.bstacl.styanthology.bib.txtcustom.bibformatting.mdREADME.mdtemplates/colm2025/colm2025_conference.bibcolm2025_conference.bstcolm2025_conference.stycolm2025_conference.texfancyhdr.stymath_commands.texnatbib.sty详细介绍
面向顶级 AI 会议的机器学习论文写作
为投稿 NeurIPS、ICML、ICLR、ACL、AAAI、COLM 撰写可直接发表的论文提供专家级指导。本技能融合了顶尖研究者(Nanda、Farquhar、Karpathy、Lipton、Steinhardt)的写作理念与实用工具:LaTeX 模板、引用验证 API 和会议检查清单。
对于系统领域会议(OSDI、NSDI、ASPLOS、SOSP),请使用 systems-paper-writing 技能。该技能提供段落级结构蓝图、写作模式、针对特定会议的检查清单,以及系统领域会议的 LaTeX 模板。
核心理念:协作写作
论文写作需要协作,但 Claude 应主动提供草稿。
典型工作流从一个包含代码、结果和实验材料的研究代码仓库开始。Claude 的职责是:
- 了解项目:浏览代码仓库、结果和现有文档
- 提交完整的初稿:对研究贡献有把握时,提供完整初稿
- 检索文献:使用网页搜索和 API 查找相关引用
- 根据反馈迭代完善:在科学家提供意见后进行修改
- 仅在确实无法确定关键决策时请求澄清
关键原则:主动推进。如果代码仓库和结果都很清楚,就提交完整初稿。不要因为每个章节都等待反馈而停滞——科学家很忙。先提供具体内容供他们审阅,再根据反馈迭代。
⚠️ 重要:绝不捏造引用
这是 AI 辅助学术写作中最重要的规则。
问题所在
AI 生成的引用有 约 40% 的错误率。捏造的参考文献——例如不存在的论文、错误的作者、错误的年份或伪造的 DOI——属于严重的学术不端行为,可能导致编辑拒稿或论文撤稿。
规则
绝不要凭记忆生成 BibTeX 条目。务必通过程序获取。
| 操作 | ✅ 正确做法 | ❌ 错误做法 |
|---|---|---|
| 添加引用 | 搜索 API → 验证 → 获取 BibTeX | 凭记忆编写 BibTeX |
| 不确定某篇论文 | 标记为 [CITATION NEEDED] | 猜测参考文献 |
| 找不到确切的论文 | 注明:“占位符——需验证” | 编造一篇听起来相似的论文 |
无法验证引用时
如果无法通过程序验证某条引用,必须:
% EXPLICIT PLACEHOLDER - requires human verification
\cite{PLACEHOLDER_author2024_verify_this} % TODO: Verify this citation exists
务必告知科学家:“我已将 [X] 条引用标记为占位符,需进一步验证。我无法确认这些论文确实存在。”
推荐:安装 Exa MCP 以搜索论文
若要获得最佳的论文搜索体验,请安装 Exa MCP,它支持实时学术搜索:
Claude Code:
claude mcp add exa -- npx -y mcp-remote "https://mcp.exa.ai/mcp"
Cursor / VS Code(添加到 MCP 设置中):
{
"mcpServers": {
"exa": {
"type": "http",
"url": "https://mcp.exa.ai/mcp"
}
}
}
Exa MCP 支持如下搜索:
- “查找 2023 年后发表的语言模型 RLHF 相关论文”
- “搜索 Vaswani 撰写的 Transformer 架构论文”
- “获取近期关于可解释性稀疏自编码器的研究”
然后使用 Semantic Scholar API 验证搜索结果,并通过 DOI 获取 BibTeX。
工作流 0:从研究代码仓库开始
当用户提供的是代码仓库(结果、配置、日志),而不是论文草稿时,请按照 references/from-research-repo.md 中的代码仓库探索工作流,在写作前提取研究贡献、结果和现有引用。
何时使用此技能
在以下情况下使用此技能:
- 从研究代码仓库开始撰写论文
- 起草或修改特定章节
- 为相关工作查找并验证引用
- 为会议投稿排版
- 向不同会议重新投稿(格式转换)
- 根据科学家的反馈迭代修改草稿
请始终牢记:初稿是讨论的起点,而非最终成果。
主动性与协作之间的平衡
默认做法:主动推进。先交付草稿,再迭代。
| 信心程度 | 行动 |
|---|---|
| 高(仓库情况清晰,贡献显而易见) | 撰写完整草稿,交付后根据反馈迭代 |
| 中(存在一些模糊之处) | 撰写草稿并标出不确定之处,继续推进 |
| 低(存在重大未知因素) | 提出 1-2 个有针对性的问题,然后撰写草稿 |
先写草稿,再连同草稿一起提问(而不是事先提问):
| 部分 | 自主撰写草稿 | 随草稿标注 |
|---|---|---|
| 摘要 | 是 | “将贡献概括为 X——如有需要,请调整” |
| 引言 | 是 | “着重强调了问题 Y——如有错误,请指正” |
| 方法 | 是 | “纳入了细节 A、B、C——请补充遗漏之处” |
| 实验 | 是 | “突出展示了结果 1、2、3——如有需要,请调整顺序” |
| 相关工作 | 是 | “引用了论文 X、Y、Z——请补充我遗漏的论文” |
仅在以下情况暂停并请求输入:
- 目标投稿 venue 不明确(会影响页数限制和论述角度)
- 多种相互矛盾的论述角度看起来同样合理
- 结果似乎不完整或不一致
- 明确要求继续前先进行审阅
以下情况不要暂停:
- 措辞选择
- 章节顺序
- 展示哪些具体结果(做出选择,并标注)
- 引用是否完整(先根据已有信息撰写草稿,并注明缺漏)
叙事原则
最重要的核心见解:论文不是一组实验的集合,而是一个有明确贡献、并由证据支撑的故事。
每篇成功的 ML 论文都围绕 Neel Nanda 所说的“叙事”展开:一个简短、严谨、以证据为依据的技术故事,并得出读者关心的结论。
三大支柱(到引言结尾时必须清晰明确):
| 支柱 | 描述 | 示例 |
|---|---|---|
| 是什么 | 在统一主题下提出 1-3 个具体的新颖主张 | “我们证明,在条件 Z 下,X 能实现 Y” |
| 为什么 | 支持这些主张的严谨实证证据 | 强有力的基线、用于区分不同假设的实验 |
| 那又如何 | 读者为何应该关注 | 与社区公认问题的关联 |
如果你无法用一句话陈述自己的贡献,那你还没有真正写出一篇论文。
论文结构工作流
工作流 1:撰写完整论文(迭代)
复制此清单并跟踪进度。每个步骤都包括起草 → 反馈 → 修改:
Paper Writing Progress:
- [ ] Step 1: Define the one-sentence contribution (with scientist)
- [ ] Step 2: Draft Figure 1 → get feedback → revise
- [ ] Step 3: Draft abstract → get feedback → revise
- [ ] Step 4: Draft introduction → get feedback → revise
- [ ] Step 5: Draft methods → get feedback → revise
- [ ] Step 6: Draft experiments → get feedback → revise
- [ ] Step 7: Draft related work → get feedback → revise
- [ ] Step 8: Draft limitations → get feedback → revise
- [ ] Step 9: Complete paper checklist (required)
- [ ] Step 10: Final review cycle and submission
步骤 1:用一句话明确贡献
此步骤需要科学家明确确认。
动笔前,请清晰阐述并确认:
- 论文的唯一贡献是什么?
- 你的工作带来了哪些此前不明显或不存在的内容?
“我建议将贡献概括为:‘[一句话]’。这是否抓住了你认为最重要的要点?是否需要调整侧重点?”
步骤 2:绘制图 1
图 1 值得特别关注——许多读者会直接跳到这里。
- 传达核心观点、方法或最有说服力的结果
- 使用矢量图形(绘图请使用 PDF/EPS)
- 编写脱离正文也能独立理解的图注
- 确保黑白打印时仍清晰可读(8% 的男性有色觉缺陷)
步骤 3:撰写摘要(五句公式)
摘自 DeepMind 的 Sebastian Farquhar:
1. What you achieved: "We introduce...", "We prove...", "We demonstrate..."
2. Why this is hard and important
3. How you do it (with specialist keywords for discoverability)
4. What evidence you have
5. Your most remarkable number/result
删掉“大语言模型取得了巨大成功……”之类的泛泛开场白。
步骤 4:撰写引言(最多 1–1.5 页)
必须包括:
- 2–4 条贡献列表(双栏格式下每条最多 1–2 行)
- 清晰的问题陈述
- 简要的方法概述
- 方法部分最晚应从第 2–3 页开始
步骤 5:方法部分
确保他人能够复现:
- 概念性概要或伪代码
- 列出所有超参数
- 提供足以复现的架构细节
- 展示最终设计决策;消融实验放在实验部分
步骤 6:实验部分
对每项实验,明确说明:
- 它支持什么主张
- 它与主要贡献有何关联
- 实验设置(细节见附录)
- 应观察什么:“蓝线显示了 X,这证明了 Y”
要求:
- 误差棒及其计算方法(标准差还是标准误)
- 超参数搜索范围
- 计算基础设施(GPU 类型、总时长)
- 随机种子的设置方法
步骤 7:相关工作
按方法分类,而非逐篇介绍:
良好示例:“一类工作采用 Floogledoodle 的假设 [refs],而我们采用 Doobersnoddle 的假设,因为……”
不佳示例:“Snap 等人提出了 X,而 Crackle 等人提出了 Y。”
充分引用——审稿人很可能就是相关论文的作者。
步骤 8:局限性部分(必需)
所有主要会议都要求提供此部分。反直觉的是,坦诚有助于论文:
- 审稿人收到的指示是,不应因坦诚承认局限性而扣分
- 先指出弱点,以预先回应批评
- 解释为何这些局限性不会削弱核心主张
步骤 9:论文清单
NeurIPS、ICML 和 ICLR 都要求提供论文清单。请参阅 references/checklists.md。
顶级机器学习会议的写作理念
references/writing-philosophy.md 介绍了句子层面的清晰度、用词、时间分配以及审稿人实际会阅读的内容。润色文字前请先阅读。
会议要求速查
ML/AI 会议
| 会议 | 页数限制 | 终稿额外页数 | 关键要求 |
|---|---|---|---|
| NeurIPS 2025 | 9 页 | +0 | 必须填写清单,录用论文需提供通俗摘要 |
| ICML 2026 | 8 页 | +1 | 必须提供广泛影响声明 |
| ICLR 2026 | 9 页 | +1 | 必须披露 LLM 使用情况,需参与互惠评审 |
| ACL 2025 | 8 页(长文) | 不定 | 必须包含局限性章节 |
| AAAI 2026 | 7 页 | +1 | 严格遵循样式文件 |
| COLM 2025 | 9 页 | +1 | 聚焦语言模型 |
系统会议(OSDI、NSDI、ASPLOS、SOSP):页数限制、模板、截止日期和投稿规则,请参阅 systems-paper-writing 技能。
通用要求:
- 双盲评审(投稿时需匿名)
- 参考文献不计入页数限制
- 附录页数不限,但评审者没有义务阅读
- 所有投稿场合均需使用 LaTeX
**LaTeX 模板:**所有会议模板请参阅 templates/ 目录。
使用 LaTeX 模板及在不同投稿场合之间转换
从捆绑模板开始撰写论文(工作流 4)、编译、模板常见陷阱,以及被拒稿后转换投稿场合(工作流 3)的内容,详见 references/latex-templates-and-conversion.md。请始终从 templates/ 复制完整的模板目录,而不要凭记忆编写 LaTeX 导言区。
引用工作流(防止幻觉)
⚠️ 关键提示:AI 生成的引用错误率约为 40%。切勿凭记忆编写 BibTeX。
黄金法则
IF you cannot programmatically fetch a citation:
→ Mark it as [CITATION NEEDED] or [PLACEHOLDER - VERIFY]
→ Tell the scientist explicitly
→ NEVER invent a plausible-sounding reference
工作流 2:添加引用
Citation Verification (MANDATORY for every citation):
- [ ] Step 1: Search using Exa MCP or Semantic Scholar API
- [ ] Step 2: Verify paper exists in 2+ sources (Semantic Scholar + arXiv/CrossRef)
- [ ] Step 3: Retrieve BibTeX via DOI (programmatically, not from memory)
- [ ] Step 4: Verify the claim you're citing actually appears in the paper
- [ ] Step 5: Add verified BibTeX to bibliography
- [ ] Step 6: If ANY step fails → mark as placeholder, inform scientist
步骤 0:使用 Exa MCP 进行初步搜索(推荐)
如果已安装 Exa MCP,请使用它查找相关论文:
Search: "RLHF language model alignment 2023"
Search: "sparse autoencoders interpretability"
Search: "attention mechanism transformers Vaswani"
然后使用 Semantic Scholar 核实每条结果,并通过 DOI 获取 BibTeX。
步骤 1:搜索 Semantic Scholar
from semanticscholar import SemanticScholar
sch = SemanticScholar()
results = sch.search_paper("attention mechanism transformers", limit=5)
for paper in results:
print(f"{paper.title} - {paper.paperId}")
print(f" DOI: {paper.externalIds.get('DOI', 'N/A')}")
步骤 2:核实论文是否存在
确认论文至少出现在两个来源中(Semantic Scholar + CrossRef/arXiv)。
步骤 3:通过 DOI 获取 BibTeX
import requests
def doi_to_bibtex(doi: str) -> str:
"""Get verified BibTeX from DOI via CrossRef."""
response = requests.get(
f"https://doi.org/{doi}",
headers={"Accept": "application/x-bibtex"}
)
response.raise_for_status()
return response.text
# Example
bibtex = doi_to_bibtex("10.48550/arXiv.1706.03762")
print(bibtex)
步骤 4:核实论述
若要为某个具体论述添加引用,请先查阅论文,确认其中确实包含所归属的论述。
步骤 5:明确处理失败情况
如果在任何步骤中都无法核实引用:
% Option 1: Explicit placeholder
\cite{PLACEHOLDER_smith2023_verify} % TODO: Could not verify - scientist must confirm
% Option 2: Note in text
... as shown in prior work [CITATION NEEDED - could not verify Smith et al. 2023].
务必告知研究人员:
“我无法核实以下引用,因此已将它们标记为占位项:
- Smith 等人,2023 年,关于奖励黑客——在 Semantic Scholar 中找不到
- Jones,2022 年,关于缩放定律——找到了一篇类似论文,但作者不同 请在投稿前核实这些引用。”
总结:引用规则
| 情况 | 操作 |
|---|---|
| 找到论文、获取 DOI 并取得 BibTeX | ✅ 使用该引用 |
| 找到论文,但没有 DOI | ✅ 使用 arXiv BibTeX,或根据论文手动录入 |
| 论文存在,但无法获取 BibTeX | ⚠️ 标记为占位项,并告知研究人员 |
| 不确定论文是否存在 | ❌ 标记为 [CITATION NEEDED],并告知研究人员 |
| “我记得有篇关于 X 的论文” | ❌ 切勿引用——先搜索,或标记为占位项 |
🚨 切勿凭记忆生成 BibTeX——务必通过程序获取。🚨
完整的 API 文档请参阅 references/citation-workflow.md。
故障排查、评审标准与图表
常见写作问题的故障排查、评审者评分标准,以及表格和图表规范,详见 references/issues-reviewers-figures.md。
参考资料与资源
参考文档(深入阅读)
| 文档 | 内容 |
|---|---|
| writing-guide.md | Gopen 与 Swan 的 7 项原则、Ethan Perez 的微观技巧、用词选择 |
| citation-workflow.md | 引用 API、Python 代码、BibTeX 管理 |
| checklists.md | NeurIPS 16 项清单、ICML、ICLR、ACL 要求 |
| reviewer-guidelines.md | 评估标准、评分、答辩回复 |
| sources.md | 所有来源的完整参考书目 |
| from-research-repo.md | 工作流 0:将代码仓库转化为论文 |
| writing-philosophy.md | 时间分配、清晰度、用词选择、审稿人会读什么 |
| latex-templates-and-conversion.md | 模板设置、编译、常见问题、会议格式转换 |
| issues-reviewers-figures.md | 常见问题、审稿标准、表格和图 |
LaTeX 模板
templates/ 目录中的模板:
- ML/AI:ICML 2026、ICLR 2026、NeurIPS 2025、ACL/EMNLP、AAAI 2026、COLM 2025
- 系统(OSDI、NSDI、ASPLOS、SOSP):请参阅 systems-paper-writing 技能
编译为 PDF:
- VS Code/Cursor:安装 LaTeX Workshop 扩展和 TeX Live → 保存文件即可自动编译
- 命令行:
latexmk -pdf main.tex,或使用pdflatex+bibtex工作流 - 在线:上传至 Overleaf
详细设置说明请参阅 templates/README.md。
重要外部来源
写作理念:
- Neel Nanda:如何撰写 ML 论文 - 叙事、“是什么/为什么/所以呢”
- Farquhar:如何撰写 ML 论文 - 五句摘要
- Gopen 与 Swan:科学写作之道 - 读者预期的 7 项原则
- Lipton:科学写作启发式方法 - 用词选择
- Perez:轻松撰写论文的小技巧 - 微观层面的清晰度
API: Semantic Scholar | CrossRef | arXiv
ML/AI 会议: NeurIPS | ICML | ICLR | ACL
系统会议: 有关 OSDI、NSDI、ASPLOS、SOSP 的链接和指南,请参阅 systems-paper-writing 技能
相关技能
systems-paper-writing:为面向 OSDI、SOSP、ASPLOS、NSDI 和 EuroSys 的 10-12 页系统论文提供段落级结构蓝图。rebuttal-and-response-to-reviewers:规划并撰写同行评审回复,包括修改后重投时的期刊“审稿意见回复”信函,以及会议答辩回复 un…reproducibility-statement:准备论文中的可复现性、透明度和开放科学部分,包括数据与代码可用性声明、可复现性…