分布式系统
讲授精读 MapReduce、GFS、Raft、ZooKeeper、Spanner 等经典论文,逐篇剖析复制、一致性与容错之间的取舍。
实验 · Go依次实现 MapReduce、Raft(领导者选举、日志复制、持久化与快照)、构建于其上的容错键值服务与分片键值存储,全部通过网络分区、节点崩溃与消息乱序的随机化测试。
第二版
在深圳大学读完计算机科学与技术,之后一直没停下:工作里缺什么就补什么,感兴趣的也会去学。
选课没有固定计划,通常从工作里碰到的问题出发:某个系统没完全弄懂,就去找讲它原理的那门课,从第一讲听到最后一讲,实验也一起做。
毕业后的学习主要靠公开课。计算机和人工智能是本行,数学和物理用来补底子,经济学、心理学、语言学和哲学则是出于兴趣。目前在法语联盟学法语。
2020 — 2024
工学学士 · 计算机科学与技术
四年制工科本科,课程覆盖计算机系统、软件开发和相关的数学基础,配套大量编程作业和实验。主要课程列在下方。
主修课程
好的大学没有围墙
讲授精读 MapReduce、GFS、Raft、ZooKeeper、Spanner 等经典论文,逐篇剖析复制、一致性与容错之间的取舍。
实验 · Go依次实现 MapReduce、Raft(领导者选举、日志复制、持久化与快照)、构建于其上的容错键值服务与分片键值存储,全部通过网络分区、节点崩溃与消息乱序的随机化测试。
讲授自底向上拆解关系型数据库:页布局与缓冲池、B+ 树与哈希索引、排序与连接算法、查询优化、并发控制(2PL、OCC、MVCC)与 ARIES 故障恢复。
实验 · C++在教学数据库 BusTub 上实现带 LRU-K 替换策略的缓冲池管理器、索引、查询执行器与事务并发控制。
讲授以《深入理解计算机系统》(CS:APP)为教材,从程序员视角看软硬件交界:位级表示、x86-64 机器码、缓存、链接、进程与信号、虚拟内存、内存分配、I/O 与并发。
实验 · CData Lab、Bomb Lab 与 Attack Lab(位运算、汇编逆向、缓冲区溢出),再到 Cache、Shell、Malloc 与 Proxy Lab。
讲授逐行研读 xv6(仿照 Unix V6 编写、运行于 RISC-V 的教学操作系统)源码:系统调用、页表、陷阱与中断、调度、锁、文件系统与崩溃恢复。
实验 · C为 xv6 扩展新的系统调用、写时复制 fork、E1000 网卡驱动、更细粒度的内存分配器、大文件、符号链接与 mmap。
由 Keith Winstein 主讲,从分层模型与端到端原则出发,讲授分组交换、可靠传输、流量控制与拥塞控制、IP 寻址与路由、ARP、NAT 与 DNS 等互联网核心机制。实验用 C++ 自底向上搭建一个能真正联网的 TCP/IP 协议栈(Sponge/Minnow):字节流与乱序重组器、处理序号回绕的 TCP 接收端、带重传计时器与滑动窗口的 TCP 发送端、基于 ARP 的网络接口,以及最长前缀匹配的 IP 路由器,把教科书中的协议变成能与真实主机通信的代码。
由 Erik Demaine、Jason Ku 与 Justin Solomon 主讲,以「接口与实现」的区分为主线:从计算模型与渐近分析出发,覆盖数据结构(哈希表、AVL 平衡树、二叉堆)、归并排序与基数排序、图算法(BFS、DFS、拓扑排序、Bellman–Ford、Dijkstra、Johnson 全源最短路),并以 SRTBOT 框架系统讲授动态规划,最后引入归约与 NP 完全性。习题集兼顾正确性证明、复杂度分析与 Python 实现,训练把实际问题建模为图或递推、再给出可证明高效解法的能力。
以「建模—推断—学习」为主线,从反射模型、状态模型、变量模型到逻辑逐层推进,覆盖搜索(UCS、A*)、马尔可夫决策过程与强化学习、博弈(Minimax、Expectimax)、约束满足与贝叶斯网络等核心内容。作业用 Python 实现吃豆人对抗搜索、车辆追踪(粒子滤波)等项目,培养将现实问题形式化为可计算模型的能力。
斯坦福经典的机器学习课程,以严格的数学推导为核心:从线性回归、逻辑回归与广义线性模型(GLM)出发,覆盖生成学习算法(GDA、朴素贝叶斯)、核方法与 SVM、偏差-方差权衡与学习理论,以及 K-means、EM、PCA 等无监督方法,并延伸至强化学习。习题集兼顾公式推导与 NumPy 实现,把机器学习从调包工具还原为可推导、可证明的数学对象。
采用翻转课堂模式,配合 deeplearning.ai 系列模块,从用 NumPy 手写前向与反向传播起步,覆盖参数初始化、正则化(Dropout、BatchNorm)、优化算法(Momentum、Adam)、CNN 与 RNN/LSTM 等核心结构,并专门讲授误差分析、数据集划分与超参数调优等工程方法论,最后以完整的深度学习项目收尾,培养从原型到落地的系统化实践能力。
以图像分类为切入点,先在 Python/NumPy 中手写 kNN、Softmax、全连接网络与卷积网络的前向与反向传播,再过渡到 PyTorch,依次实现 BatchNorm、Dropout、图像描述(RNN/Transformer)、GAN 与自监督学习,并延伸至目标检测、语义分割与 Vision Transformer 等现代视觉架构,从像素到语义完整打通深度视觉模型的设计与训练。
从 word2vec 词向量与依存句法分析出发,经由 RNN/LSTM、带注意力机制的 Seq2Seq 机器翻译,到 Transformer、预训练(BERT/GPT)与微调,系统梳理现代 NLP 的演进脉络。作业用 PyTorch 推导词向量、实现神经依存句法分析器、神经机器翻译与 Transformer 预训练,让大语言模型背后的核心机制落到可运行的代码上。
以「从零构建」为原则,用 PyTorch 手写 BPE 分词器、Transformer 与 AdamW 优化器,并依次完成五大作业:基础模型、系统优化(用 Triton 实现 FlashAttention、分布式数据并行)、Scaling Laws 拟合、海量网页数据的清洗与去重,以及基于 SFT 与强化学习(GRPO)的对齐,完整贯穿大语言模型从数据、训练到对齐的全流程工程实践。
MIT 实分析中更抽象、更严格的版本,以 Rudin《数学分析原理》为蓝本:从确界性质与实数构造出发,在度量空间的框架下系统讲授开集、闭集、紧性与连通性,再展开数列与级数、连续与一致连续、微分、Riemann 积分以及函数列的一致收敛(如 Weierstrass 逼近定理),以纯证明式习题训练从定义出发严密推理的数学功底。
将线性代数与分析推广到无穷维:从赋范空间与 Banach 空间出发,经由 Lebesgue 积分与 L² 空间的构造,到 Hilbert 空间、正交基与 Riesz 表示定理,并讲授 Baire 纲定理、一致有界原理、开映射与闭图像定理、Hahn–Banach 定理等泛函分析支柱,最后以紧自伴算子的谱定理与 Fourier 级数收尾,为量子力学中的 Hilbert 空间与算子语言打下严格的数学基础。
由 John Tsitsiklis 主讲、配套 Bertsekas 与 Tsitsiklis 经典教材:从概率公理与条件概率(贝叶斯法则)出发,覆盖离散与连续随机变量、联合分布与导出分布、条件期望,以及贝叶斯推断(MAP、LMS)与经典统计(极大似然、置信区间),再到极限定理(大数定律、中心极限定理)、Bernoulli/Poisson 过程与马尔可夫链,为机器学习与不确定性推理打下概率直觉与计算功底。
由 Philippe Rigollet 主讲:从统计建模与参数估计出发,系统讲授极大似然与矩估计、M 估计、Fisher 信息与渐近正态性(Delta 方法),再到假设检验(Wald 检验、似然比检验、卡方拟合优度检验、Kolmogorov–Smirnov 检验)与贝叶斯统计(共轭先验、Jeffreys 先验),并延伸至线性回归、广义线性模型与主成分分析,以严格的数学推导回答「如何从数据中得出可信的结论」,与概率论形成从模型到推断的完整闭环。
由 Michael Sipser 本人以其经典教材《计算理论导引》主讲:从有限自动机、正则语言与泵引理,到上下文无关文法与下推自动机,再到图灵机、Church–Turing 论题、不可判定性与归约;后半程转入复杂性理论,讲授 P 与 NP、Cook–Levin 定理与 NP 完全性、空间复杂性(Savitch 定理、PSPACE 完全性)、层级定理与概率计算,回答「什么能被计算、要付出多少代价」这一计算机科学的根本问题。
以离散数学为工具解决实际问题:从计数与生成函数、概率与 Chernoff 界出发,覆盖线性规划与对偶理论、数论与 RSA 加密、信息熵与数据压缩(Huffman 编码)以及纠错码(如 Hamming 码),展示离散结构如何支撑算法、通信与密码学中的核心技术。
由 Barton Zwiebach 主讲,从光电效应、康普顿散射与电子衍射等动摇经典物理的实验出发,引入波粒二象性与德布罗意关系,建立波函数的概率诠释、傅里叶分析与不确定性原理,再系统求解薛定谔方程:定态与一维势(无限深与有限深势阱、δ 势、势垒与隧穿)、用升降算符代数求解谐振子,最后推广到三维中心势、角动量与氢原子,搭起量子力学的计算骨架与物理直觉。
Barton Zwiebach 量子力学三部曲的第二部,以线性代数重建量子力学:从 Stern–Gerlach 实验与自旋 1/2 出发,系统讲授向量空间、线性算符、内积与谱定理,引入狄拉克符号与广义不确定性原理;再以此处理谐振子的相干态与压缩态、二能级系统(核磁共振、氨分子微波激射器)、薛定谔绘景与海森堡绘景下的时间演化,最后讲授角动量理论、中心势与角动量耦合(氢原子精细结构),把波动力学提升为基于 Hilbert 空间的抽象框架。
三部曲的最后一部,转向没有精确解的真实问题:从电磁场中的带电粒子与朗道能级出发,系统讲授非简并与简并微扰论,并用于计算氢原子精细结构、塞曼效应与斯塔克效应;再讲授 WKB 近似(隧穿与连接公式)、含时微扰论与费米黄金法则、绝热近似与 Berry 相位,最后以散射理论(分波法、Born 近似)收尾,培养用近似方法从复杂系统中提取物理结论的能力。
MIT 研究生阶段量子场论的第一学期,研究量子力学与狭义相对论如何结合:从经典场论、拉格朗日量与 Noether 定理出发,讲授洛伦兹群及其表示,依次对自由标量场、狄拉克场与规范场做正则量子化,理解反粒子与自旋—统计关系;再引入相互作用,借助 Wick 定理与微扰展开推导费曼规则,计算散射截面与衰变率,最后以树图阶的量子电动力学过程(如 e⁺e⁻ → μ⁺μ⁻、康普顿散射)收尾,为粒子物理标准模型打下理论基础。
由 Scott Hughes 主讲,参考 Carroll 教材:从用张量语言重述狭义相对论出发,系统建立微分几何工具(流形、度规、协变导数与平行移动、测地线、黎曼曲率张量),推导爱因斯坦场方程;再讲授弱场极限与线性化引力、引力波的产生与传播、Schwarzschild 解与黑洞,以及 FRW 宇宙学模型,把「引力即时空弯曲」从一句口号变成可以计算的几何理论。
由暴胀理论的提出者 Alan Guth 主讲:从哈勃膨胀与宇宙学原理出发,以牛顿力学推导 Friedmann 方程,讲授物质主导与辐射主导的宇宙演化、开放与封闭宇宙的非欧几何、黑体辐射与宇宙微波背景、宇宙热历史与太初核合成,以及暗物质与暗能量(宇宙学常数)的观测证据;后半程聚焦标准大爆炸模型的平坦性问题、视界问题与磁单极子问题,讲授暴胀理论如何解决它们并给出原初密度扰动的起源,最后延伸至永恒暴胀与多重宇宙,从观测数据出发理解宇宙的起源与演化。
由 Jonathan Gruber 主讲:从供需模型出发,以效用最大化与预算约束推导消费者需求,以生产函数与成本曲线刻画企业决策,再分析完全竞争、垄断与寡头的市场结构及其福利后果(消费者剩余与生产者剩余);后半程转向要素市场(劳动与资本)、不确定性下的选择、国际贸易,以及外部性、公共物品、税收与收入再分配,理解市场何时有效、何时失灵,以及政府干预的依据与代价。
由 Ricardo Caballero 主讲,以 Blanchard《宏观经济学》为教材:从商品市场与金融市场出发构建 IS-LM 模型,结合劳动力市场与菲利普斯曲线推导 AS-AD 模型,分析货币政策与财政政策在短期、中期与长期的不同效果;再讲授 Solow 增长模型与技术进步、预期在消费与投资中的作用,以及开放经济中的汇率与 Mundell–Fleming 模型,并用这些工具解读金融危机与流动性陷阱,建立分析宏观经济波动与政策的完整框架。
MIT 研究生阶段的发展经济学课程,延续 J-PAL 以随机对照实验研究贫困的传统:从农户模型与市场不完善出发,系统讲授人力资本(教育与健康)、家庭内部资源配置、信贷市场与小额信贷、风险分担与消费平滑、储蓄、土地与劳动力市场以及技术采纳,并延伸至治理、腐败与政治经济学。课程以研读前沿实证论文为主,强调随机对照实验、工具变量与自然实验等因果识别方法,理解发展中国家的家庭究竟如何决策,以及哪些政策真正改善了贫困人口的生活。
由 John Geanakoplos 主讲,以一般均衡为基础自底向上搭建金融学:从 Irving Fisher 的跨期模型推导利率与现值,讲授债券定价、收益率曲线、抵押贷款与提前还款、社会保障等应用;再引入不确定性,讲授风险厌恶、资产组合、资本资产定价模型(CAPM)与动态对冲;最后以主讲人本人提出的杠杆周期理论收尾,分析杠杆与抵押品如何放大繁荣与崩溃,并用于解读 2008 年金融危机,把华尔街的实践还原为严格的经济学模型。
由 2013 年诺贝尔经济学奖得主 Robert Shiller 主讲,从风险管理的视角审视金融体系:从概率、风险分散与保险原理出发,讨论有效市场假说与行为金融的分歧,再逐一讲授债券、股票、房地产、远期与期货、期权等市场,以及银行、投资银行、中央银行与货币政策、金融监管的制度设计,辅以业界嘉宾讲座,理解金融如何服务于社会,以及它为何会出现泡沫与危机。
由 Ben Polak 主讲,以大量课堂博弈实验引入概念:从严格占优与重复剔除劣策略出发,讲授纳什均衡及其在 Cournot 与 Bertrand 竞争中的应用、混合策略与演化稳定策略;再转向序贯博弈,讲授逆向归纳、Stackelberg 模型、信息集与子博弈精炼纳什均衡,并延伸至重复博弈中的合作、议价、信号传递与拍卖等信息不对称问题,培养把现实中的策略互动形式化并求解的能力。
由梭状回面孔区(FFA)的发现者 Nancy Kanwisher 主讲:从神经解剖与真实的大脑解剖演示出发,系统讲授认知神经科学的研究方法(fMRI、EEG 与 MEG、TMS、脑损伤患者研究、颅内记录),并追问每种方法能证明什么、不能证明什么;再逐个剖析大脑的功能特异化:面孔识别、场景知觉与空间导航、身体与视觉运动、数量、音乐、语言,以及理解他人心智的脑网络,并延伸至可塑性与发育如何塑造这种分工、深度神经网络作为视觉皮层模型的可能,从实验证据出发理解心智在大脑中如何组织。
由 John Gabrieli 主讲:从心理学的研究方法与行为的生物学基础出发,覆盖知觉与注意、意识与睡眠、学习(经典条件反射与操作性条件反射)、记忆(如失忆症患者 H.M. 的案例)、语言、思维与智力,再到情绪与动机、毕生发展、人格、社会心理学(Asch 从众实验与 Milgram 服从实验)、压力与健康,以及心理障碍及其治疗,结合支撑每个结论的经典实验,建立从神经元到社会的完整心智图景。
从心理物理学(感觉阈限、韦伯定律、信号检测论)出发,沿视觉通路从眼的光学成像、视网膜、侧抑制与感受野,经外侧膝状体到初级视觉皮层,再讲授颜色视觉(三色理论与拮抗过程)、明度恒常性与视错觉、空间视觉与对比敏感度、运动知觉、深度与立体视觉、物体识别与注意,并延伸至听觉(耳蜗、音高与声源定位)、触觉、味觉与嗅觉,理解知觉并非对世界的被动记录,而是大脑基于不完整信号做出的推断,也为对照人类视觉与计算机视觉提供了基础。
由 Michale Fee 主讲:从单个神经元的生物物理出发,依次建立细胞膜的等效电路模型、动作电位的 Hodgkin–Huxley 模型、积分发放神经元、树突与电缆理论以及突触传递;再转向神经编码,讲授动作电位序列与发放率、感受野与脉冲触发平均。课程同时系统讲授数据分析的数学工具(卷积与滤波、傅里叶与频谱分析、矩阵、特征向量与主成分分析),最后以网络模型收尾:发放率模型、前馈网络与感知机、循环网络、作为神经积分器的线吸引子,以及用于记忆的 Hopfield 网络。习题用 MATLAB 模拟和分析每个模型,理解计算如何从生物神经回路中涌现,以及它与人工神经网络的异同。
以 MIT 生成语言学的传统为底色,把语言当作人类心智的一种属性来研究:从描写与规定、语言能力与语言运用的区分出发,依次讲授形态学(语素与词的层级结构)、语音学与音系学(国际音标、音位与音位变体、区别特征、音节结构与音系规则)、句法学(成分结构、短语结构、移位与 wh 疑问句、约束理论)以及语义学(组合性、量化与蕴涵),并延伸至语言习得与刺激贫乏论证、语言变异与演变、手语。习题集要求从陌生语言的真实语料中归纳规则,培养像科学家一样分析语言数据的能力,也为对照 18.404J 的形式文法与 CS224N 的语言模型提供了语言学的视角。
由 Michael Sandel 主讲,在千人大课堂上以苏格拉底式的辩论推进:从电车难题、海难求生等疑难案例出发,依次讲授边沁与密尔的功利主义、诺齐克的自由至上主义、洛克的财产权与同意理论,并以兵役制度与代孕检验市场的道德边界;再转向康德的绝对命令、罗尔斯的无知之幕与差异原则,以及亚里士多德的目的论正义观,把每种理论带入平权法案、爱国主义与同性婚姻等争议中,培养把直觉背后的原则说清楚、并推演其全部后果的能力。
由 Shelly Kagan 主讲,他不做观点罗列,而是明确为物理主义立场辩护:从支持与反对非物质灵魂的论证出发(包括柏拉图的《斐多篇》),讨论人格同一性(身体论、灵魂论与人格论,以及复制与分裂的思想实验)以及「死亡」究竟意味着什么;再追问死亡为何是坏事,审视剥夺论以及伊壁鸠鲁与卢克莱修认为死亡并不可怕的论证、永生是否值得向往、对死亡的恐惧是否恰当,最后以自杀的理性与道德问题收尾,展示严谨的论证能把一个多数人只凭本能回答的问题推进到多远。
牛津哲学本科一年级的入门课,由 Peter Millican 主讲并公开了课程录音:从笛卡尔的《第一哲学沉思集》与开启近代哲学的怀疑论论证出发,讲授洛克与贝克莱关于知觉与外部世界的理论、休谟的归纳问题与因果理论,再到自由意志与决定论(以及二者能否相容)、人格同一性、从二元论到功能主义的心身问题,以及上帝存在的论证,尤其是设计论证与休谟对它的批判。课程紧扣原典精读,训练把一个论证逐条拆解为前提、并找出它在哪里失效的分析哲学功底。
2026年9月 — 至今
法语联盟
在法语联盟(Alliance Française,1883 年创立于巴黎的法语与法国文化推广机构)系统学习法语:在语法、词汇与发音的基础上同步训练听、说、读、写,课程对标欧洲语言共同参考框架(CEFR)。