每天一个学术 Skill | 第 1 组 · 第 07 篇 / 共 8 篇
复现论文卡在「作者没给代码」,怎么办
论文转代码 paper-to-code | 从 PDF 到跑得起来的仓库
你想在一个 baseline 上做改进。作者 GitHub 是空的,论文里只写了一句「we follow the standard setting」。这七个字,能让一个硕士生卡两周。
栏 目 背 景
这是「每天一个学术 Skill」第 1 组的第 7 篇,共 8 篇。源头是 GitHub 上 281 个学术科研 Skill 里挑出来的——完整名单见 这篇。这组按科研流程排:查得到 → 看得懂 → 画得出 → 排得对 → 引得准 → 复得现 → 讲得清。
这个 Skill 是什么
| paper-to-code |
| lingzhi227 / agent-research-skills |
| |
| 要复现 baseline、想在一个方法上做改进的人 |
| 从论文 PDF 出发,规划 → 分析 → 编码,产出可运行的仓库骨架 |
一、复现难,难在论文不写的东西
学习率、batch size、数据划分方式、预处理顺序、随机种子——这些真正决定结果的东西,常常在附录里一句话带过,或者干脆没写。而正文里写满的,是你照着做也没用的动机阐述。
二、它分三段做
三、必须清楚:它写的不是作者的原版
它生成的是「按论文描述最合理的实现」。数字对不上是常态——这不是失败,反而有价值:差异本身就说明论文缺了哪些信息。
严谨的做法是:先跑到接近的量级,再逐项消融,确认哪个细节是性能差异的来源。这个过程产出的内容,足够写一份像样的复现报告,本身就能发表或放进毕业论文附录。
四、动手前先做这三件事
1. 先找官方代码 论文页、作者主页、Papers with Code,三处都确认过再说「没有」。很多人止步于 GitHub 搜项目名。
2. 找第三方复现 GitHub 搜论文标题,常常已经有人做过。issue 区里的坑,比你自己踩一遍省两周。
3. 发邮件问作者 一周没回再自己动手。多数人是愿意给超参的,问的时候把配置表列清楚。
它的边界,先说清楚
| |
| |
| |
| 数据划分、评价指标定义、预处理顺序——这三处最容易和原文不一致 |
复现的价值不在「跑出同一个数」,在于你能说清「差在哪、为什么差」。后者才是研究能力。
顺带说一句,本号长期维护四个可以直接用的数据库和一份全国人才政策汇总,在读研究生、博士和青椒可能更常用——
① 学术会议日历:按学科查未来 3 个月征稿,只保留未截止、信源可溯的。点击查看,关注公号,点击菜单「学术日历」、后台回复「学术会议」。
② 学术招聘日历:博士、博士后、教职岗位,按截止日期排,每天更新。关注公号,点击菜单「招聘」或后台回复「招聘」。
③ 学术工具推荐:文献调研、文献管理、AI 阅读、投稿选刊、绘图查重,逐个实测。关注公号,点击菜单「学术工具」或后台回复「工具」。
④ 科研项目库:国家自然科学基金、国家社科基金、教育部及各省项目申报指南与截止节点,按申报时间排序,持续更新。关注公号,点击菜单「科研项目申报」或后台回复「项目申报」。
⑤ 人才政策:关注账号,点击菜单栏「人才政策」可以查看全国各地人才政策全貌,按省份、地市、城区三级整理,覆盖本科到博士各学历的补贴标准与申领条件。
⑥ 人生必读书单:本科到博士都能用的一张书单,按认知顺序排,一期 5 本,持续更新。点击查看
更多内容,也请关注我的公众号:大学圈内事儿