blog

Welcome to my blog!

How to be good at research

ab's Avatar 2026-07-07 Research

  1. 1. 如何做好研究
    1. 1.1. 选择你自己的问题
    2. 1.2. 升级你的输入
    3. 1.3. 把一切写下来
    4. 1.4. 收紧 loop
    5. 1.5. 盯着 outputs 看
    6. 1.6. 有目的地游荡
    7. 1.7. 找到你的人
    8. 1.8. 长期游戏

如何做好研究

原文作者:vivek(@itsreallyvivek)

说明:本文为原文 how to be good at research 的中文翻译整理,保留部分 research / ML 语境下更自然的英文词。不代表本人观点,仅作学习记录。

没有人真正教你怎么做 research。你得到一张桌子、一个别人选好的问题,以及一句模糊的指令:做出一些 novel 的东西。所以大多数人只能从自己看得见的东西里反向推断这份工作是什么:papers、threads、announcements。最后他们学会的是如何“看起来像一个 researcher”,而不是如何真正成为一个 researcher。真正的能力其实是一组更小技能的堆叠,而几乎每一项都可以被刻意训练。

选择你自己的问题

Richard Hamming 在 Bell Labs 有个习惯,这让他在午餐时不太受欢迎。他会问坐在旁边的人:你所在领域的重要问题是什么?然后再问:那你为什么没有在做这些问题?于是人们开始换桌。

这个问题刺痛人,是因为我们大多数人都没有好答案。我们并不选择问题,而是吸收问题:从 advisor 那里,从某个大 lab 上个季度宣布的方向那里,从这周大家都在 quote-tweet 的论文那里。

被吸收来的问题有个麻烦:你拥有的是结论,而不是推理。你知道某个 famous lab 关心一个方向,但你不知道为什么,不知道他们期待发现什么,也不知道什么情况会让他们放弃这个方向。等他们 pivot 的时候,你可能一年后才知道。而在一个已经 fashionable 的问题上,你是在和一千个更早起跑、compute 更多的人赛跑。

John Schulman 的 ML research 指南把研究分成两种模式。一种是读 literature,然后寻找可以 improve 的地方。另一种是选择一个你真心希望它存在的 outcome,然后反过来推导需要做哪些 experiments。他支持第二种。背后安静但重要的原因是:这种方式会制造 originality。一个你真的在乎的目标,会把你拖进 survey paper 尚未覆盖的 territory。

与此同时,taste 常常被说得像一种天赋。但它更像肌肉。每次 experiment 之前,先预测结果。把一篇 paper 的 result section 盖住,只根据 method 猜数字。标记这个月发布的工作里,哪些两年后仍然重要,然后以后检查自己的 hit rate。一次 forecast 加一次 correction,重复几百次,就是每个好模型被训练出来的方式,包括你脑子里的那个模型。

升级你的输入

共享的 reading list 会产出共享的 ideas。如果你的信息饮食只是 arXiv trending page,加上 group chat 过滤后剩下的东西,你会稳定地在同一时间得出和所有人一样的结论,而这种结论大约一文不值。

旧材料被严重低估。这个领域总是在延迟重跑自己的过去:mixture of experts 可以追溯到 1991 年,LSTM 是 1997 年,backprop 在 1986 年进入主流。Rich Sutton 2019 年写 The Bitter Lesson 只用了大约一千词,却比十倍长度的 survey 更能预测这个领域的形状。Claude Shannon 1952 年做过一场关于 creative thinking 的演讲,他的开场动作是:把问题缩小到几乎 trivial,先解决小版本,再一块一块把困难重新加回来。这个单一技巧,能带你穿过的墙,比任何现代 productivity advice 都多。

Range 和 depth 一样重要。Interpretability 毫不客气地向 neuroscience 借东西。Eval design 是穿着 lab coat 的 mechanism design。真正理解 GPU 如何搬运 memory,会让你在 benchmark 出来之前就看出哪些 architecture paper 注定不行。而 honest statistics 可能是 ML 里最稀缺的技能之一;这里很多发表出来的 rigor,本质上只是带 error bar 的 vibes。

还有一件事:读 paper 本身,不要只读总结它的 thread。Appendix 是埋尸体的地方,limitations section 通常是整篇文档里最诚实的一段。

把一切写下来

Paul Graham 说过,一个 idea 在你尝试把它写成文字之前,可能一直感觉已经完整成形。页面会发现你脑子自动糊过去的 gap:那个你从没测试过的 assumption,那个其实并不能推出下一步的 step,那两个安静地互相矛盾的 claim。

Feynman 的规则是:你必须避免欺骗的第一个人是你自己,因为你是最容易被骗的对象。Writing 是人类发明过的最便宜的防御。Darwin 走得更远,把这件事程序化了。任何和他的理论相冲突的事实,他都会立刻写下来,因为他发现自己的 memory 删除不方便证据的速度,比删除方便证据快得多。你的 memory 对 failed runs 也会做同样的事。保留 log:hypothesis、setup、expectation、result、updated belief。重读上个月的记录,会带来一种任何 reviewer 都比不上的谦卑。

然后,把其中一部分公开出来。Olah 和 Carter 的 research debt essay 说明了一个观点:领域会被未消化的 ideas 噎住,而清晰解释本身就是一种真正的 contribution,不是 service job。今天很多做 interpretability 的人,是通过可读的 posts 进入这个领域的,而不是 conference papers。一组公开写作也会成为你能拥有的最强 credential,因为它是你如何思考的、无法伪造的样本。

收紧 loop

关于 Alec Radford 的故事,很少是某一次天才闪现。更多是 volume:每天更多 runs,每周丢掉更多错误 ideas,一个比别人更新更快的 reality model。这才是真正的游戏。Research speed 很大程度上就是你发现自己错了的速度。

这也意味着 tooling 是一等 research activity。启动一次 run 应该是一条命令。画图应该再多一条命令。每个 experiment 都应该能从 config 复现,比较两次 runs 应该只需要几秒,而不是花一个下午考古。Karpathy 的 neural network training recipe 里有一步能回本一百次:在 scale training 前,先 overfit 一个 single batch。三十秒,半数 bug 消失。把一切缩小到足够便宜,先做对,再花 compute。

也该放弃“engineering 是 research 的 junior partner”这个想法了。在 frontier 上,这两份工作已经融合。能构建 harness、eval 和 data pipeline 的 researcher,才是 hypothesis 真正会被测试的人。其他人都在排队等。

盯着 outputs 看

下降的 loss curve 不是 analysis,只是 reassurance。你的 experiments 会吐出远比你实际消费更多的信息:transcripts、failure cases、distribution 里奇怪的尾部。大多数信息都死在没人读的 logs folder 里。

Karpathy 的 recipe 在写任何 training code 之前就开始了:手工花几个小时看 raw data。大多数 ML bugs 都活在 data 里,而且它们会静默失败。什么都不会 crash。你只是得到一个 mediocre model,然后对原因形成一个错误理论。

Andrew Ng 十几年来一直在教同一个不光鲜但极有效的动作,因为没有什么能打败它:拉出一百个 failures,全部读完,分成几堆,然后攻击最大的一堆。它适用于 models,也适用于 evals。一个你从来没有读过 transcripts 的 benchmark,就是一个你其实并不理解的 benchmark。一个真正奇怪行为的 transcript,能教给你的东西,比 accuracy 的下一个小数位更多。

有目的地游荡

你的第一个 subfield 只是 timing 的偶然,所以要把它当作偶然。认真花时间待在 interpretability、evals、RL、systems 里,然后再决定你住在哪里。这个领域的某个角落,会让你身上某种具体的 weirdness 变成 unfair advantage。找到它的唯一方法,是在几个地方都交学费。没人会免掉这笔 tuition。

每个 idea 都先跑 disposable version,并让大多数 idea 早死。把 baselines 调到疼为止,因为 ML 的坟场里满是那些一旦遇到 properly tuned baseline 就蒸发的 gains,而 reviewer 是最糟糕的老师。Ablate 到你知道到底哪个 component 承载了结果。通常只有一个,而且通常不是标题里的那个。

Breadth 也是 insurance。Subfields 都会 saturate,所有都会,通常就在它们刚刚在 Twitter 上达到顶峰之后。那些能在转场中持续产出的人,是早就熟悉相邻 territory 的人。

找到你的人

Hamming 注意到一个模式:关着办公室门的同事,任何一年里完成的事情更多;开着门的同事,做出的工作更重要,因为那些 interruption 携带着关于世界真正需要什么的信息。你的 open door 可能就是 inbox。让它保持开放。

Generosity 在 research 里会像没什么别的东西一样复利。Replicate 一个 result,然后发布你发现的东西。Release 你为自己构建的 tool。用简单语言解释困难的东西。回报会从侧面到来,几个月之后,变成一个 collaboration、一个 reference,或者一个你原本无法申请的 role。也把你半成形的 ideas 放到公开场域里,因为在 timeline 上错,比在 print 里错便宜得多。那个在你投入三个月之前就告诉你 idea 很差的 collaborator,比 compute 更值钱。这种关系买不到,只能赢得。

长期游戏

Pasteur 说,幸运偏爱有准备的头脑。Hamming 在这句话之上建立了一整套职业哲学:knowledge 和 productivity 会像 interest 一样复利。每天的 edge 单独看都微不足道:你读什么,你记录什么,你的 loop 跑得多快,你和谁争论。给它们几年时间,它们会产出从外部看起来像运气的 career。比你觉得有必要的时间更早开始复利。未来的你已经知道,现在这部分最便宜。

本文最后更新于 天前,文中所描述的信息可能已发生改变
Perfect Night
LE SSERAFIM