Skip to content

12 · 资源、算力与弹性周计划 ​

这是本系列的"工具箱"章节,随用随查,不需要通读。 它回答三个具体问题:① 我该看哪些课程、书、论文、代码库?② 我只有一张消费级显卡,算力问题怎么解?③ 三档弹性(保底 15h / 标准 30h / 冲刺 50h)到底每天该干什么? 用法:先读第三节选定档位,把它抄进你的日程,然后其余内容当作查阅手册。

本章学习目标 ​

  1. 建立一份按优先级排序的资源清单,避免在"学什么"上反复纠结。
  2. 明确你的本地单卡能做什么、不能做什么,并知道缺口怎么用免费额度与租卡补上。
  3. 把三档弹性计划落到具体的周与日,形成可执行的日程。
  4. 建立每周复盘与反拖延机制,让 18 个月的长跑不中断。

一、学习资源总清单 ​

1.1 优先级说明 ​

优先级含义处理方式
P0 必学不看就做不了项目 / 答不了面试排进周计划,按顺序推进
P1 应学明显提升面试表现,但可以排在项目之后项目间隙穿插
P2 选学加分项,时间充裕再看冲刺档或 P4 阶段

1.2 课程与视频(P0/P1) ​

资源类型优先级怎么用注意
李沐《动手学深度学习》(D2L)书 + 视频P0配合第 03 章一起看,只挑"线性回归→MLP→CNN→注意力→Transformer"这条主线中文生态最友好,但内容偏基础,不要从头到尾看完,按需跳读
Karpathy《Neural Networks: Zero to Hero》视频P0配合第 04 章最推荐的路径:从手写反向传播到手写 GPT,与你的"mini-GPT"练习完全对应
Karpathy 的 nanoGPT 代码代码P0作为第 04 章项目的参考实现只有几百行,是最适合"从零手写"的参照
Stanford CS231n(视觉)公开课P1只看 CNN、训练技巧、注意力几节作业太重,不要做全部
Stanford CS224n(NLP)公开课P1只看词向量、Transformer、预训练几节同上
李宏毅机器学习系列视频(中文)P1中文解释力强,适合补概念直觉内容广,按主题挑
HuggingFace Course / Transformers 文档文档P0学 transformers / datasets / accelerate 时查阅工程向,与你的技能栈契合
HuggingFace diffusers 文档文档P1做生成方向时看—
fast.ai公开课P2自上而下的教学法,工程背景的人会喜欢时间紧可跳过

一个重要建议:不要"刷课"。 你的学习模式应该是**"以项目为纲,缺什么补什么"**。D2L 和 Karpathy 的视频是工具书,不是通关游戏。看完 30% 但项目跑起来了,远胜看完 100% 但一行代码没写。


1.3 论文必读清单 ​

读法:每篇按"读摘要 → 看架构图 → 读方法与损失 → 看实验表 → 记下 3 个我能讲的设计理由"的顺序,不要逐字读。每篇写一张 A4 卡片(方法、关键设计、结论、我能问出的问题)。

P0:面试必问,至少要能画图讲清 ​

#论文arXiv只读什么对应章节
1Attention Is All You Need(Transformer)1706.03762整个架构 + 注意力公式 + 位置编码04
2An Image is Worth 16x16 Words(ViT)2010.11929patchify、架构、与 CNN 的对比05
3CLIP(Learning Transferable Visual Models)2103.00020双塔结构、对称 InfoNCE、温度系数、zero-shot05、06
4LoRA2106.09685低秩分解的动机、A/B 矩阵、秩的影响04
5ZeRO(Memory Optimizations)1910.02054三级切分分别切什么07
6vLLM / PagedAttention2309.06180KV Cache 分页管理的动机与收益07

P1:方向相关,做完项目再精读 ​

#论文arXiv为什么读
7SigLIP2303.15343对比学习损失的改进,能讲清"softmax vs sigmoid"的取舍
8BLIP-2(Q-Former)2301.12597视觉与语言连接方案的代表,面试常问
9LLaVA2304.08485投影层对齐范式,最容易被追问
10DDPM2006.11239扩散模型基础,生成方向必读
11Latent Diffusion / Stable Diffusion2112.10752潜空间扩散与 CFG
12DiT2212.09748视频生成的基础架构
13FlashAttention2205.14135显存与速度优化的经典,面试高频
14DINOv22304.07193自监督视觉表征,选型时会用到
15DPO2305.18290对齐方向的核心方法

P2:加分与前沿 ​

论文/方向为什么
MoCo(1911.05722)动量队列的来源——你在第 06 章用了它的思想
GradCache(2101.06983)你在项目里实现了它,读它比读十篇综述都值
多模态综述类论文建立谱系,配合第 05 章
长上下文 / 稀疏注意力系列面试加分项
你目标岗位团队近两年的工作最高性价比:面试时说出来直接建立好感

读论文的最短路径:不要从 P0 第 1 篇开始按顺序读。先做项目,遇到卡点再回头读对应论文——这样每篇论文你都是带着问题读的,吸收率完全不同。


1.4 代码库清单 ​

库用途读法优先级
nanoGPT最小 GPT 实现逐行读,作为 mini-GPT 的参照P0
timm视觉模型库看 ViT 的实现,学怎么组织模型代码P0
open_clipCLIP 开源实现读它的 InfoNCE 与温度实现,与你的实现对照P0
transformersHF 模型库查 API、看 TrainerP0
accelerate分布式训练封装理解 DDP/FSDP 的封装层次P1
LLaVAVLM 参考实现看投影层与两阶段训练P1
diffusers扩散模型库生成方向用P1
vLLM推理引擎看 PagedAttention 与调度P1
lit-gpt训练框架看训练脚本的工程组织P2
lm-evaluation-harness评测框架学评测设计P2

读开源库的正确姿势:不要通读。先只看你要用的那个模块(例如 open_clip 里的 loss.py),把它和你的实现逐行对照,找出差异。差异就是知识点。


1.5 数据集与数据源 ​

数据集类型语言规模用途
MUGE(阿里天池)电商图文对中文十万到百万级06 章主数据集候选
Wukong(华为)图文对中文亿级取子集,太大
COCO-CN / Flickr30k-CN图文对中文万级评测集来源
COCO Captions图文对英文12 万图可用 VLM 翻译成中文
ImageNet(子集)分类——视觉塔预训练/消融
自建数据集图文对中文3-5 万必做,体现数据构造能力
ModelScope 数据集混合中文—找中文数据的首选入口

数据获取的现实提醒:数据集的可下载性会变,以你实际能拿到的为准。如果某个数据集下不到了,换一个,不要卡在这里超过 3 天。"数据不够"从来不是拖延的理由——2 万对也能开训。


1.6 工具链 ​

工具用途什么时候上手
wandb(或 tensorboard)实验记录与曲线对比06 章 M1 阶段就要用
sentencepiece训练中文分词器06 章 M0
HF datasets数据集加载与缓存M0
nvitop / nvidia-smiGPU 监控M1
torch.profiler性能剖析07 章
hydra / omegaconf配置管理做消融时(强烈推荐)
tmux / nohup长任务后台运行训练时必用
Docker环境固化你已经会

二、算力方案 ​

2.1 你的本地单卡能做什么(能力边界) ​

以 8-12GB 消费级显卡(3060 / 4060 / 4070 级别)为准:

任务可行性说明
训 MNIST / CIFAR 的 CNN、ViT✅ 完全可行几分钟到几十分钟
手写 mini-GPT(1-10M 参数)字符级语言模型✅ 完全可行十几分钟到几小时
从零训 CLIP 式双塔(20M 参数)✅ 完全可行,这是你的主项目每轮几十分钟
从零训 ViT-Small 甚至 Base✅ 可行需要更多数据与时间
LoRA 微调 0.5B-1.5B LLM✅ 大体可行需要 4-bit 量化 + 梯度检查点
全参微调 1B 模型⚠️ 极限,需 ZeRO-offload会很慢,不建议
全参微调 7B❌ 不可行需要多卡或 80GB 卡
从零训扩散模型(小规模)✅ 可行CIFAR / 小分辨率
跑 vLLM 部署 7B(4-bit 量化)⚠️ 勉强12GB 可跑量化版
多机多卡训练❌ 需租云卡见 2.3

2.2 免费额度方案 ​

平台典型资源限制适合什么
Google Colab免费 T4 16GB / 部分时段更高单次时长限制、会断线、需重新装环境快速实验、跑 notebook
Kaggle Notebooks每周固定额度 GPU 时长环境固定、无持久化周赛、实验
阿里云天池 / ModelScope 创空间中文生态,偶有免费算力额度有限中文数据集相关实验
各大模型平台的免费额度API 额度—用 VLM 生成中文 caption(06 章数据构造)

免费额度的正确用法:跑"验证性小实验",不要跑长训练。 因为你永远不知道什么时候断线,长任务会浪费大量时间在重跑上。

2.3 租卡实操 ​

平台类型代表卡型价格量级特点
国内按量租卡平台AutoDL 等3090 / 4090 / A100每小时几元到几十元国内网络好、镜像方便,首选
海外平台RunPod / Lambda 等A100 / H100每小时十几元到上百元卡新但网络与支付麻烦
云厂商阿里云 / 腾讯云 / 华为云V100 / A100按量或包时稳定但贵,适合跑长任务

你的租卡需求只有两类:

  1. 跑一次真实的多卡训练(2-4 卡,几小时)——目的是拿到"我跑过 DDP/多卡"的真实经验,成本约 几十到几百元。
  2. 小 VLM 投影层对齐实验(06 章 M5)——如果要做,成本约 几百元。

租卡省钱 12 条 ​

  • [ ] 先在本地用小规模 debug 到能跑通,再上云——云端调试是烧钱
  • [ ] 提前把脚本、配置、数据准备流程全部写好并本地验证过
  • [ ] 用 tmux 或 nohup 跑,避免 SSH 断线丢任务
  • [ ] 确认关机后不再计费(有些平台的"停止"仍计费,必须"释放")
  • [ ] 数据提前打包上传到数据盘,避免每次从公网下载
  • [ ] 用 torchrun 而不是自己写 mp.spawn,减少调试时间
  • [ ] 训练脚本必须支持断点续训——租卡的机器可能被回收
  • [ ] 开启自动保存 checkpoint 到持久化存储
  • [ ] 设置 nvidia-smi 轮询与超时告警
  • [ ] 用较小规模先跑通一个 epoch,确认 loss 正常再跑全程
  • [ ] 记录每次实验的卡型、时长、花费,形成"算力账本"
  • [ ] 不要在云上读论文、写代码、想方案——那是最贵的学习方式

算力账本建议格式(面试时能说出"我知道训练一个大模型要多少钱"是加分项):

text
【日期】2027-03-15
【任务】2×A100 跑通 DDP 多卡训练
【卡型与数量】2 × A100 40G
【时长】6.5 小时
【花费】¥xxx
【产出】多卡训练跑通;记录 all-reduce 通信耗时占比 18%
【结论】通信不是当前瓶颈,算力是。若扩到 8 卡需重新评估

三、三档弹性周计划 ​

3.1 先算总账 ​

档位每周投入到 2027-02-06 前(17 周)累计能覆盖到哪
保底档15h255h02-04 + 06 到 M1
标准档30h510h02-08 全覆盖,06 到 M3
冲刺档50h850h全部覆盖 + M5 升级 + 论文复现

建议:按标准档排计划,按保底档执行,有余力时按冲刺档加量。 计划的容错空间要留给自己。

注意这张图的用法:档位是每周重选的,不是一开始定死。周一花 2 分钟判断"这周是什么节奏",然后选一档。主动降档不丢人,被动掉档才致命。

3.2 每日时间模板 ​

保底档(工作日 1h + 周末 5h) ​

时段内容时长
通勤/午休看论文或视频(不写代码)30min × 5
睡前写代码 / 做题30min × 5
周六项目主线(唯一不能砍的)5h
周日补课 + 复盘5h

标准档(工作日 2.5h + 周末 8.75h) ​

时段内容时长
早论文/视频/阅读1h × 5
晚写代码 / 做题 / 项目1.5h × 5
周六项目主线(训练、调参、消融)8h
周日理论补课 + 复盘 + 下周计划8h

冲刺档(工作日 3h + 周末 17.5h) ​

在工作日 3h 基础上,周末每天 8-9h:上午项目、下午理论、晚上复盘。不建议连续超过 3 周,容易崩。

一条铁律:每天必须有"写代码"的时间,哪怕只有 30 分钟。 只看不写是转岗失败最常见的原因。

3.3 标准档 17 周计划表 ​

周主线(18h)副线(12h)交付物
103 章 Day1-502 章 线代能训 MNIST > 98%
203 章 Day6-1202 章 概率训练脚本模板(含 resume)
304 章 注意力手推 + 手写02 章 微积分手写 MHSA 单测通过
404 章 mini-GPT02 章 手算题mini-GPT 生成通顺片段
505 章 谱系 + 选型09 章 业务产出项目选型决策记录
605 章 可复现分级 + 定方案09 章 业务产出06 章 方案定稿
706 章 数据构造07 章 显存预算数据集 v1(≥5 万对)
806 章 模型实现 + 跑通 1000 步07 章 混合精度过拟合 100 条 sanity check 通过
906 章 完整训练 + 首评07 章 DDP第一版检索指标
1006 章 数据扩容 + 调参07 章 torch.profiler指标提升记录
1108 章 评测脚本 + 消融07 章 量化对比消融表 v1
1208 章 报告初稿 + Bad case09 章 实习成果整理报告初稿
1308 章 报告定稿 + 讲解视频10 章 简历一版报告 + 90 秒讲解
1406 章 M3 消融补全10 章 手撕题6 组消融完成
15模拟面试 ×210 章 题库六模块能脱稿
16项目整体打磨 + GitHub 整理10 章 投递准备仓库可展示
17京东实习收尾与交接复盘全年G4 门禁达成

保底档怎么砍:每天只保留主线的一半进度;第 5、12、14、15 周的内容可压缩;但第 8 周的 sanity check 和第 11 周的评测脚本不能砍。


四、每周复盘模板 ​

每周日花 30 分钟填,不许跳过。

text
【第 X 周 / 日期区间】
【档位】保底 / 标准 / 冲刺

1. 本周实际投入:__ 小时(计划 __ 小时)
2. 本周完成的三件事:
   - 
   - 
   - 
3. 本周的交付物(可验证的东西):
4. 卡住的地方(技术 + 非技术):
5. 下周要补的盲区(最多 3 个):
6. 项目进度:M0 / M1 / M2 / M3 / M4
7. 自评分(0-10):
8. 需要调整的地方:

每 4 周做一次月度复盘,并重做第 01 章的 100 分自评,记录分数曲线。


五、反拖延与可持续机制 ​

机制做法为什么有效
固定时段把学习时间写进日历,当成会议减少"今天要不要学"的决策消耗
最小启动动作状态差时只做"打开编辑器 + 跑一条命令"启动成本低,往往就顺势做下去了
项目优先时间不够时砍理论,不砍项目项目有状态,断了要重来
公开承诺在 GitHub 上开仓库、写进度社交压力是最便宜的约束
交付物导向每周必须有一个"别人能看见的东西"对抗"学了很多但说不出来"
允许走低档实习攻坚期降到保底档,不要停长期持续 > 短期爆发
物理隔离学习时手机放远老生常谈但有效

一条重要心态:18 个月的规划,你一定会掉队几次。掉队不是失败,停掉才是失败。所以整套计划都设计成"可以降档但不能停"——保底档存在的唯一意义就是让你在最忙的三周里还能继续。


六、常见误区 ​

误区后果正确做法
先刷完课再做项目3 个月后还没写过训练脚本项目优先,缺什么补什么
论文从第一篇开始按顺序读读到第 5 篇就放弃先做项目,带着问题回头读
追求"完备"的数据集卡在数据获取上一个月2 万对也能开训,先跑通再扩
本地跑得动就绝不租卡拿不到多卡经验花几百元跑一次多卡,性价比极高
每天靠意志力硬扛3 周后崩固定时段 + 降档机制
只学不写、只写不记面试讲不出来每周留交付物 + 复盘
三档都按冲刺档排做不到就开始自责,然后放弃按标准排,按保底执行

七、自测清单 ​

资源

  • [ ] 我知道 P0 的 6 篇论文是哪 6 篇,并且读过至少 3 篇
  • [ ] 我读过 open_clip 的损失实现,并与自己的实现对照过
  • [ ] 我确定了自己的数据来源,并且能下载
  • [ ] 我用 wandb 或 tensorboard 记录实验

算力

  • [ ] 我知道自己的显卡型号、显存、算力
  • [ ] 我清楚本地单卡的能力边界(见 2.1 表)
  • [ ] 我注册了至少一个免费算力平台
  • [ ] 我知道租卡的平台、价格量级与省钱清单
  • [ ] 我有一份"算力账本"记录

计划

  • [ ] 我选定了档位(保底 / 标准 / 冲刺)
  • [ ] 我把周计划抄进了自己的日程工具
  • [ ] 我知道"保底档可以砍什么、绝对不能砍什么"
  • [ ] 我建立了每周复盘模板并填过一次
  • [ ] 我重做过第 01 章的自评分并记录了日期

最后的提醒 ​

这套规划一共 12 章、上万字,但真正决定结果的,只有三件事:

  1. 从今天开始,每天写代码。 哪怕 30 分钟。
  2. 项目不能停。 它是你唯一不能被别人替代的证据。
  3. 把每个结论都变成数字。 没有数字的经历,在算法岗面试里等于没发生。

回到总览去确认你的第一个动作。

持续学习,持续构建。