Andrej Karpathy的一封经验贴。他分享了自己在斯坦福本科期间总结出的应对考试的实战经验。| 英文原文 | #经验
如何学好大学课程
作者:Andrej Karpathy
在多年的学生生涯中,我经历了无数次考试(且结果相当不错),以下是我认为对我帮助最大的几条经验法则:
🌟总体原则
1️⃣ 熬夜通宵是不值得的。 睡眠能创造奇迹。对我来说,理想的睡眠时间约为 7.5 小时,绝对最低限度是 4 小时左右。
2️⃣ 睡眠的“转化”作用。 我有好几次在晚上被某个问题困扰一小时也解不出来,但第二天早上 5 分钟就搞定了。我觉得大脑会在夜间将大量不稳定的短期记忆转化为稳定的长期记忆。对于任何重大考试,我都会尝试提前好几天就开始复习,哪怕每次时间很短,也是为了最大化大脑吸收材料的“夜晚次数”。
3️⃣ 参加辅导课(Tutorials)或复习课。 哪怕这些课讲得很烂也要去。关键在于这些课能让你被迫思考学习材料。如果内容太无聊,你总可以做点别的。记住,你也可以尝试去听不同助教(TA)带的其他辅导课。
🌟考试:准备阶段
1️⃣ 大局观和组织能力是关键。 制定学习计划,哪怕你最后没完全执行。对我来说,这通常包括理清所有需要掌握的内容,并逐条写下来。仔细考虑每一个知识点,并预估掌握它们需要多长时间。如果你不这样做,很容易在开头的材料上浪费太多时间,最后因为时间不够而对后面(通常也是最重要)的材料蜻蜓点水。
2️⃣ 在开始复习前,先看往年试卷。 尤其是如果往年试卷是由同一位教授出的。这会给你强烈的暗示,告诉你该如何复习。每位教授都有不同的考评风格。刚开始时不要尝试去解题,而是要仔细留意题目的类型。
3️⃣ “阅读理解”不等于“动手复现”。 你在书上看到一个公式、推导或证明,觉得非常有道理。现在请合上书,尝试把它写下来。你会发现这个过程完全不同,而且你会惊讶于很多时候你其实写不出来!不知为何,这两件事调用的是不同的记忆区域。一定要确保你能亲手写下最重要的部分,并能随心所欲地重新推导它们。
4️⃣ 尝试与他人合作,但要在最后阶段。 起初要独自学习,因为在学习早期,别人只会让你分心。但在接近尾声时,和大家聚在一起:他们经常会指出重要的陷阱,提出好的问题,并给你提供教别人的机会。
5️⃣ 不要只跟学霸混。 水平稍弱的学生会让你给他们解释知识点,你会发现,教别人对加深你自己的理解大有裨益。
6️⃣ 期末考前至少去一次教授的办公室答疑时间(Office Hours)。 即使你没问题(也要编一个!)。教授有时愿意在一对一的情况下透露更多关于考试的信息(这些内容他们不会在全班面前说)。虽然不一定每次都有收获,但一旦发生了,帮助会很大。此外,让教授对你至少有一点了解是个好主意。
7️⃣ 提前很久开始学习。 大脑真的需要时间来吸收材料。随着时间的推移,原本困难的事情会变得容易。你应该为期中考分配约 3 天,为期末考分配约 6 天。
8️⃣ 应急处理。 如果情况真的很糟,你感到极度疲劳,在紧急情况下,喝下一罐能量饮料。它们确实管用,这就是化学的力量。
9️⃣ 对于数学类科目:练习 > 阅读。 复习到足以开始做题的程度即可,然后通过做题来填补知识漏洞。练习会迫使你回头去读那些你不懂的内容。
🔟 自己制作“小抄”(Cheat Sheet)。 哪怕考试不允许带。写下来的过程有助于记忆。你的目标是将整门课程浓缩到一页或几页纸上,最后你可以把它铺在面前,信心满满地说:“这就是我必须知道的所有内容。”
⑪在别人也在学习的地方学习。 当别人都在学而你没在学时,这会让你感到羞愧。这对我有效。背景噪音大的地方不好,图书馆和阅览室效果最好。
考试:当天
⑫理想的饮食习惯:考前 2 小时喝咖啡并吃东西。 对我来说,考前紧接着喝咖啡或吃东西总是很糟糕。在任何潜在的压力情况下,考前立刻喝咖啡都很糟。但完全不喝也不行。
⑬考前那一刻进行极高强度的复习。 我看到很多人在考前就放弃了,声称要“休息一下”。短期记忆是个奇妙的东西,别浪费它!考前尽可能高强度地复习。如果你觉得必须休息,那就考前一小时休,但确保在考试前 30-45 分钟狠狠地复习。
🌟考试期间
1️⃣ 考试务必用铅笔。 你会想要擦掉那些垃圾般的“解题过程”。
2️⃣ 开始前简要浏览所有题目。 每题只需看 1-3 秒。吸收关键词,并对整张试卷的体量有个概念。
3️⃣ 先做简单的题。 不要让自己卡在某个地方太久。稍后再回来做。有些题目在你“热身”之后会变得容易得多。
4️⃣ 卷面整洁。 批改你试卷的是人。一个不爽的阅卷人给分就低。当过助教的人都会强烈证实这一点。
5️⃣ 永远把答案圈起来或框起来。 尤其是当答案周围有一堆推导过程时。这能让阅卷人快速打勾给满分。要有阅卷人思维。
6️⃣ 绝、对、不要、提前交卷。 你肯定犯了愚蠢的错误,把它找出来并纠正。如果找不到,就继续努力直到时间耗尽。提前交卷的人很蠢,因为潜在收益完全超过了付出的时间成本。
7️⃣ 与阅卷人交流。 向阅卷人展示你掌握的知识比写下来的更多。如果你卡在某一步,要明确表示如果你能跨过这一步,你后面知道该怎么做。阅卷人经常会尝试为你多找几分——让他们容易操作一点。
8️⃣ 如果只剩不到 5 分钟且你还卡在某题,停下来。 你的时间最好用来复读所有题目,确保你没有漏掉任何次要的小问,并且回答了所有内容。你无法想象人们因为这种疏忽丢了多少冤枉分。
🌟最后的建议
本科生往往对课程有种“隧道视野”(视角狭隘)。但必须意识到的一个残酷事实是:除非你的成绩很差,否则没人关心你的成绩。最聪明的学生会追求一个不错的绩点(如 4.0 左右),但绝不会过度学习。
你的时间是宝贵且有限的资源。只要达到考试不搞砸的程度,就赶紧把注意力转向更重要的事业:
1️⃣ 获得真实的、现实世界的经验。参与真实的代码库、项目,或解决课后习题之外的问题。
2️⃣ 寻求推荐信。那些能证明你有主动性、热情和动力的教授的评价,其价值完全盖过成绩单。
3️⃣ 想找工作就去暑期实习;想读研就去拿研究经验!主动联系教授参与研究项目。
4️⃣ 建立自己的名声。参与开源项目,开发自己的库,写博客记录你的学习。
这些才是人们在几年后真正关心的东西。至于成绩?它们只是你前进路上不得不处理的麻烦事。好好利用你的时间,祝你好运!
如何学好大学课程
作者:Andrej Karpathy
在多年的学生生涯中,我经历了无数次考试(且结果相当不错),以下是我认为对我帮助最大的几条经验法则:
🌟总体原则
1️⃣ 熬夜通宵是不值得的。 睡眠能创造奇迹。对我来说,理想的睡眠时间约为 7.5 小时,绝对最低限度是 4 小时左右。
2️⃣ 睡眠的“转化”作用。 我有好几次在晚上被某个问题困扰一小时也解不出来,但第二天早上 5 分钟就搞定了。我觉得大脑会在夜间将大量不稳定的短期记忆转化为稳定的长期记忆。对于任何重大考试,我都会尝试提前好几天就开始复习,哪怕每次时间很短,也是为了最大化大脑吸收材料的“夜晚次数”。
3️⃣ 参加辅导课(Tutorials)或复习课。 哪怕这些课讲得很烂也要去。关键在于这些课能让你被迫思考学习材料。如果内容太无聊,你总可以做点别的。记住,你也可以尝试去听不同助教(TA)带的其他辅导课。
🌟考试:准备阶段
1️⃣ 大局观和组织能力是关键。 制定学习计划,哪怕你最后没完全执行。对我来说,这通常包括理清所有需要掌握的内容,并逐条写下来。仔细考虑每一个知识点,并预估掌握它们需要多长时间。如果你不这样做,很容易在开头的材料上浪费太多时间,最后因为时间不够而对后面(通常也是最重要)的材料蜻蜓点水。
2️⃣ 在开始复习前,先看往年试卷。 尤其是如果往年试卷是由同一位教授出的。这会给你强烈的暗示,告诉你该如何复习。每位教授都有不同的考评风格。刚开始时不要尝试去解题,而是要仔细留意题目的类型。
3️⃣ “阅读理解”不等于“动手复现”。 你在书上看到一个公式、推导或证明,觉得非常有道理。现在请合上书,尝试把它写下来。你会发现这个过程完全不同,而且你会惊讶于很多时候你其实写不出来!不知为何,这两件事调用的是不同的记忆区域。一定要确保你能亲手写下最重要的部分,并能随心所欲地重新推导它们。
4️⃣ 尝试与他人合作,但要在最后阶段。 起初要独自学习,因为在学习早期,别人只会让你分心。但在接近尾声时,和大家聚在一起:他们经常会指出重要的陷阱,提出好的问题,并给你提供教别人的机会。
5️⃣ 不要只跟学霸混。 水平稍弱的学生会让你给他们解释知识点,你会发现,教别人对加深你自己的理解大有裨益。
6️⃣ 期末考前至少去一次教授的办公室答疑时间(Office Hours)。 即使你没问题(也要编一个!)。教授有时愿意在一对一的情况下透露更多关于考试的信息(这些内容他们不会在全班面前说)。虽然不一定每次都有收获,但一旦发生了,帮助会很大。此外,让教授对你至少有一点了解是个好主意。
7️⃣ 提前很久开始学习。 大脑真的需要时间来吸收材料。随着时间的推移,原本困难的事情会变得容易。你应该为期中考分配约 3 天,为期末考分配约 6 天。
8️⃣ 应急处理。 如果情况真的很糟,你感到极度疲劳,在紧急情况下,喝下一罐能量饮料。它们确实管用,这就是化学的力量。
9️⃣ 对于数学类科目:练习 > 阅读。 复习到足以开始做题的程度即可,然后通过做题来填补知识漏洞。练习会迫使你回头去读那些你不懂的内容。
🔟 自己制作“小抄”(Cheat Sheet)。 哪怕考试不允许带。写下来的过程有助于记忆。你的目标是将整门课程浓缩到一页或几页纸上,最后你可以把它铺在面前,信心满满地说:“这就是我必须知道的所有内容。”
⑪在别人也在学习的地方学习。 当别人都在学而你没在学时,这会让你感到羞愧。这对我有效。背景噪音大的地方不好,图书馆和阅览室效果最好。
考试:当天
⑫理想的饮食习惯:考前 2 小时喝咖啡并吃东西。 对我来说,考前紧接着喝咖啡或吃东西总是很糟糕。在任何潜在的压力情况下,考前立刻喝咖啡都很糟。但完全不喝也不行。
⑬考前那一刻进行极高强度的复习。 我看到很多人在考前就放弃了,声称要“休息一下”。短期记忆是个奇妙的东西,别浪费它!考前尽可能高强度地复习。如果你觉得必须休息,那就考前一小时休,但确保在考试前 30-45 分钟狠狠地复习。
🌟考试期间
1️⃣ 考试务必用铅笔。 你会想要擦掉那些垃圾般的“解题过程”。
2️⃣ 开始前简要浏览所有题目。 每题只需看 1-3 秒。吸收关键词,并对整张试卷的体量有个概念。
3️⃣ 先做简单的题。 不要让自己卡在某个地方太久。稍后再回来做。有些题目在你“热身”之后会变得容易得多。
4️⃣ 卷面整洁。 批改你试卷的是人。一个不爽的阅卷人给分就低。当过助教的人都会强烈证实这一点。
5️⃣ 永远把答案圈起来或框起来。 尤其是当答案周围有一堆推导过程时。这能让阅卷人快速打勾给满分。要有阅卷人思维。
6️⃣ 绝、对、不要、提前交卷。 你肯定犯了愚蠢的错误,把它找出来并纠正。如果找不到,就继续努力直到时间耗尽。提前交卷的人很蠢,因为潜在收益完全超过了付出的时间成本。
7️⃣ 与阅卷人交流。 向阅卷人展示你掌握的知识比写下来的更多。如果你卡在某一步,要明确表示如果你能跨过这一步,你后面知道该怎么做。阅卷人经常会尝试为你多找几分——让他们容易操作一点。
8️⃣ 如果只剩不到 5 分钟且你还卡在某题,停下来。 你的时间最好用来复读所有题目,确保你没有漏掉任何次要的小问,并且回答了所有内容。你无法想象人们因为这种疏忽丢了多少冤枉分。
🌟最后的建议
本科生往往对课程有种“隧道视野”(视角狭隘)。但必须意识到的一个残酷事实是:除非你的成绩很差,否则没人关心你的成绩。最聪明的学生会追求一个不错的绩点(如 4.0 左右),但绝不会过度学习。
你的时间是宝贵且有限的资源。只要达到考试不搞砸的程度,就赶紧把注意力转向更重要的事业:
1️⃣ 获得真实的、现实世界的经验。参与真实的代码库、项目,或解决课后习题之外的问题。
2️⃣ 寻求推荐信。那些能证明你有主动性、热情和动力的教授的评价,其价值完全盖过成绩单。
3️⃣ 想找工作就去暑期实习;想读研就去拿研究经验!主动联系教授参与研究项目。
4️⃣ 建立自己的名声。参与开源项目,开发自己的库,写博客记录你的学习。
这些才是人们在几年后真正关心的东西。至于成绩?它们只是你前进路上不得不处理的麻烦事。好好利用你的时间,祝你好运!
首先,面试过程压力巨大,别忘了保护好心理和身体健康,保持支持网络,合理作息。面试虽看似竞争,实则大家目标一致——希望你成功通过并接受offer。
面试难免会有失败,重要的是坚持和成长。即使被拒,别气馁,未来依然有机会。多家AI/ML公司面试经历告诉我们,面试其实也很有趣——你会接触顶尖专家,学习新技能,体验编程挑战。
准备是成功关键:建议至少投入约100小时刷题,如Leetcode,另花类似时间阅读论文、复习基础知识、模拟面试。所有对话都非“随便聊聊”,每次交流都是展现自我和热情的机会。
技术面试中,面试官希望你成功,切勿紧张。掌握策略:保持简洁介绍,解决一个问题后迅速进入下一个,适应白板和Python编码。善用“todo”注释和断言帮助自己理清思路,遇难题可适当调整思路。
行为面试重在讲故事,使用STAR(I)法则,准备涵盖领导力、失败经历等主题的真实案例,展现成长和反思。
领域面试需熟悉基础与前沿知识,准备好讨论论文和当前项目。利用ChatGPT、Deep Research等工具辅助学习。
拿到面试机会往往靠可见的优秀成果和人脉推荐。保持活跃,发布作品,参加活动,善用LinkedIn和个人主页。面试前务必了解招聘经理背景,真诚表达对职位和团队的热情。
谈判时别只盯着薪资,关注团队、使命、文化和生活品质。最终选择让你每天都乐于工作的地方。
AI research interviews | #面试 #经验
1. 放弃notebooks依赖,拥抱代码仓库。Colab和Kaggle方便,但真正的项目价值在于结构清晰、易维护的git repo,养成使用专业编辑器和工程化脚本的习惯,才是通向工业级开发的必经之路。
2. GPU永远不能闲着。深度学习的加速根本在于大规模并行计算。就像撕散书页在桌面铺开,GPU能同时处理海量数据。利用Wandb等MLOps工具实时监控GPU使用率,避免资源浪费,是保证训练效率的关键。
3. 持续优化代码细节。比如作者通过替换Parquet Reader为Dataloader、用PyTorch内置的Scaled Dot Product Attention替代自定义实现,token处理速度提升近10倍。性能提升往往藏在内核融合和内存优化的细节里,别放过任何提升空间。
4. 时刻关注张量维度。深度学习中Tensor维度变化频繁,做好注释、标明形状,避免因转置、reshape导致的逻辑混乱,是代码可读性和debug效率提升的基础。
5. 深刻理解模型组件差异。GPT用LayerNorm,Llama改用RMSNorm。拆解每个子模块,理解其设计动机和作用,才能更好地把握整张架构图,代码实现也能更加准确高效。
6. 善于横向比较架构演进。新模型往往在旧模型基础上做局部创新,比如Mixture of Experts用多个小网络替代大网络结构。通过对比,抓住关键创新点,快速洞察论文核心,有助于精准实现和性能评估。
最后,初学时别怕依赖如Grok、GPT、Gemini等工具,失败是成长的必经阶段,坚持下来终能独立驾驭复杂模型。
Learnings after coding GPT & Llama from scratch :) | #经验
1. 深度调研模式
“You’re my research assistant. Find the latest studies, reports, and articles on [topic]. Summarize each source with: Title | Date | Key Finding | Source link.”
2. “给行家讲解”模式
“Explain [complex concept] as if I have deep domain knowledge but limited time. Include: key principles, debates, and real-world applications.”
3. 逆向观点生成器
“Summarize the mainstream consensus on [topic]. Then present 3 contrarian or under-discussed perspectives with credible citations.”
4. 多源整合分析
“Summarize how [Company A], [Company B], and [Company C] approach [problem]. Highlight differences in strategy, data use, and outcomes.”
5. 带引用写作助手
“Draft a 500-word article on [topic]. Use academic tone, include 3 cited sources (with links), and end with a future trend prediction.”
6. 数据猎人
“Find the latest available statistics on [metric]. Return: Figure | Source | Date | Link | Context (1 sentence).”
7. 新闻洞察流程
“Summarize this week’s top 5 news stories in [industry]. Highlight implications, patterns, and what most people missed.”
8. 来源可信度鉴定
“Evaluate the credibility of this source: [link]. Check author expertise, citations, publication reputation, and potential bias.”
9. 内容调研引擎
“I’m writing a post about [topic]. Find 5 stats, 3 frameworks, and 2 quotes from experts to support it.”
10. AI工作流伙伴
“When I ask a question, also suggest 3 follow-up queries that expand or deepen understanding.”
这些提示词覆盖调研、写作、数据挖掘、内容策划和信息验证等全链条,极大提升你的AI使用效率。
很多人没被教过如何高效阅读研究论文。学术圈往往默认这是自学技能,圈外则觉得论文太专业、枯燥,不值得花时间。我曾把读论文当成苦差事,耗费三年才逐渐享受其中。回顾经验,最有效的三条原则是:
1. 先直觉理解,再看实证数据,最后才深入细节。
先用三句话总结论文大意,抓住它“做什么、为什么做”;然后重点看图表和数据,判断方法和结论的可信度;细节部分只在确定值得钻研时才深入。不同背景的人理解细节方式差异很大——工程师喜欢边写代码边理解,数学博士则习惯先研读定义和推导。无论哪种,关键是随时可以停下来,投入时间在最有价值的论文上。
2. 读论文要讲效率,找适合自己的方式。
多读且快读,培养“研究品味”,避免在低质量论文上浪费时间。每篇论文不是孤立存在,要从整体研究网络中理解它的意义。找到适合自己的笔记和整理方法,比如用Notion建数据库,记录三句话总结、主观评论和重要性评分。明确阅读目的,有时想快速了解领域现状,有时想找到新视角。多尝试,别盲目跟风别人的阅读方法。
3. 学会提问,保持好奇心。
AI工具可以帮你理解内容,但提出正确的问题仍是你的责任。对一个主题,你要知道自己是“已经理解,可以评价和应用”,还是“还没理解,需要问问题填补知识空白”。遇到困难时,找出需要先掌握的“前置知识”,逐步拆解。保持“不怕问”的心态,才能不断突破理解瓶颈。
最后,虽然AI能简化学习过程,我依然坚持自己写总结和评论,这种“摩擦”才是真正的学习动力。别让表面上的“懂”替代了真正的理解。
基于Agentic Engineering的开发流程已到能自动写几乎100%代码的地步。但很多人还在绕圈子,忙着制造复杂“假象”,反而没真正产出。
这里分享了作者这一年AI辅助开发的心得,直击核心,帮你少走弯路
77个HTML+JavaScript应用和6个Python应用,涵盖多种实用场景;完全通过LLM提示生成代码,无需手动编写;支持GitHub Actions自动化部署,节省大量开发时间
tools.simonwillison.net | #经验
提供 8 种学习提示,涵盖从技能特定学习到资源整理的全方位方法;强调个性化学习计划,帮助用户高效掌握任何技能;结合实际案例和加速学习技巧,让学习事半功倍