UCL COMP0078《监督学习》:硕士第一学期就要手推定理的机器学习课
UCL 计算机系 COMP0078《监督学习》是硕士级(FHEQ Level 7)Term 1 模块:期末笔试占 86%、小组活动占 14%,核心是从定义出发推导经典监督学习算法。
课程官网(学校官网):https://www.ucl.ac.uk/module-catalogue/modules/supervised-learning-COMP0078
COMP0078 是一门什么课?
一句话:这门课不教你怎么调包跑模型,而是教你怎么用数学从定义出发,把一个监督学习算法「推」出来、并说明它为什么有效。
这是伦敦大学学院(University College London,UCL)计算机系的模块,课程代码 COMP0078,英文名 Supervised Learning,中文常译「监督学习」。
先解释课名。监督学习,指用带标签的数据训练模型,让模型学会从输入预测输出——比如用历史房价数据预测一套新房的价格,或者根据邮件内容判断它是不是垃圾邮件。「监督」指的是训练数据里已经给了正确答案,模型照着这些答案去学。
学校官网给出的 Indicative content(示意内容)是十五项:Nearest Neighbours(最近邻)、Linear Regression(线性回归)、Kernels and Regularisation(核方法与正则化)、Support Vector Machines(支持向量机)、Gaussian Processes(高斯过程)、Decision Trees(决策树)、Ensemble Learning(集成学习)、Sparsity Methods(稀疏方法)、Multi-task Learning(多任务学习)、Proximal Methods(近端方法)、Semi-supervised Learning(半监督学习)、Neural Networks(神经网络)、Matrix Factorization(矩阵分解)、Online Learning(在线学习)、Statistical Learning Theory(统计学习理论)。
这里面藏着几条主线:
- 两大任务:回归(Regression,预测连续数值,比如房价)与分类(Classification,预测离散类别,比如垃圾邮件与否)。全课围绕这两条线展开。
- 经典算法群:线性回归、逻辑回归、支持向量机、决策树、集成方法(如随机森林)。
- 核方法(Kernel Methods):课程用 Kernels and Regularisation 单独列出一块,配合前置的线性代数要求,说明核函数与函数空间那一套理论是重点,不是顺带一提。
- 泛化理论(Generalisation Theory):Statistical Learning Theory 这一项对应 VC 维(VC Dimension,描述模型复杂度的一个数学量)与 PAC 学习框架(Probably Approximately Correct Learning,「大概正确」地回答「模型什么时候能学会」)。这是整门课理论性最强的一块。
- 正则化与模型选择:Sparsity Methods、Kernels and Regularisation 都指向同一件事——用偏差-方差权衡(Bias-Variance Tradeoff)这条主线串起各章节。
学校官网写明本模块 Credit value 为 15,仅对 FHEQ Level 7(硕士或本硕一体化项目)学生开放。按 UCL 的学年结构,它在 Term 1(第一学期)授课,也就是说,入学第一学期就要上,没有缓冲期。
核心特征可以概括成一句:这是一门数学课,用机器学习的问题当例子。 课上的产出不是能跑的模型,而是完整的推导与证明。
和国内机器学习课有什么不同?
最大的差别不是「难不难」,而是目标层次不同:国内课的目标是「理解算法 + 能实现」,这门课的目标是「能推导 + 能证明」。
- 考核取向不同:国内机器学习课(比如配套周志华《机器学习》的课程)考核偏重代码与实验报告;COMP0078 偏重数学严格性,笔试占 86%。
- 覆盖方式不同:国内课程通常从 kNN 一路讲到神经网络,广而浅;这门课覆盖的算法数量相对少,但每个都要挖到理论背景,深而窄。
- 泛化理论是分水岭:VC 维、PAC 学习框架在国内本科机器学习课里几乎不涉及,或点到即止;在这里是核心章节,占比不轻。这是国内背景的学生最明显的一块内容差距。
- 核方法深度不同:国内通常只讲 SVM 加核技巧的使用层面;这门课要从函数空间的角度讲清核方法为什么有效,数学深度不是一个量级。学完再回头看国内教材,很多人会突然通透。
- 不考调包调参:这门课不考「用 Python 实现随机森林并调参」。如果你的训练经历以跑实验为主,需要主动切换成「拿到题目先分析数学结构」的思维方式。
考核怎么算?
期末笔试占 86%,Group activity(小组活动,2 次评估)占 14%;评分方式为 Numeric Marks(数字分)。
学校官网的 Methods of assessment 写的是:86% Exam;14% Group activity (2 assessments)。Mark scheme 为 Numeric Marks。
拆开看:
- 笔试占 86%,是绝对大头。学校官网没有列出考试时长与是否闭卷,这部分属于经验推断,比例本身以 86% 为准。
- Group activity 占 14%,共 2 次,学校官网用的词是 Group activity,不是 coursework(课程作业)。
- 因为前置要求写明学生要能「推导 novel results(全新结论)」,期末大概率包含推导证明题,而不是选择填空或写代码。
这个结构说明一件事:备考标准应该是「能合上讲义,手写完整推导」,而不是「背下结论」。 14% 的小组活动是缓冲,但救不了 86% 的笔试;理论推导不熟,分数结构会直接塌下来。
先修要求是什么?
学校官网的门槛写得非常硬:多变量微积分、概率与组合、线性代数三门数学必须真正掌握,要求「能重新推导基础结论,也能推导全新结论」——「学过但忘了」不够资格。
学校官网 Requisites 原文是:要选这门模块,学生必须(1)注册在该模块正式开放的 programme 与年级;(2)对 Multivariable Calculus(多变量微积分)、Probability and Combinatorics(概率与组合)、Linear Algebra(线性代数)具备高能力水平,达到「能重推基础结论,也能推导全新结论」的程度。
大白话拆解:
- 多变量微积分:偏导数、梯度、Hessian 矩阵这些东西要能熟练操作,因为推导里到处是求导与最优化。
- 概率与组合:条件期望的严格定义、集中不等式这类工具会反复出现;概率基础不牢,推导中途就会卡住。
- 线性代数:需要的不是矩阵计算速度,而是向量空间、内积空间的抽象理解——核方法整块都建立在这个视角上。
- 「能推新结论」是真门槛:不是会做题就行,是要能在没有模板的新设定下独立完成推导。
选课资格方面,学校官网写明本模块仅对以下项目的学生开放:MEng Computer Science、MEng Mathematical Computation,以及 MSc Artificial Intelligence and Data Engineering、MSc Computational Statistics and Machine Learning、MSc Data Science and Machine Learning、MSc Machine Learning、MASc Philosophy Logic and Artificial Intelligence、MSc Scientific and Data Intensive Computing。
适合谁:数学基础扎实的 CS/AI 硕士生,尤其是本科修过实分析(Real Analysis)或抽象代数、对写证明不陌生的同学,上手适应期会短很多;想系统补齐机器学习理论欠账、不满足于只会调包的学生;计划做机器学习研究、准备读博的同学,这门课的「从定义到证明」正是科研基本功;本科数学系背景想转 AI/ML 的同学,已有的数学训练会让门槛大幅降低。反过来,如果目标只是尽快上手部署模型,这门课不是那个路径。
学完能做什么?
核心是四件事:能手推经典算法、能读机器学习理论论文、能从理论解释模型行为、能为后续理论课铺好语言基础。
- 从头推导经典监督学习算法:比如 SVM 的对偶问题推导、核岭回归(Kernel Ridge Regression)的解析解。不再是「黑盒直觉」,每一步都知道从哪来。
- 能读理论论文:泛化界(Generalization Bounds)、PAC 学习框架、VC 维这些论文语言会变得熟悉,看到 O(√(d/n)) 这类上界不再发懵。
- 能从理论解释模型行为:说清一个模型「为什么过拟合」、为什么换一个正则化参数泛化就改善了,而不是靠经验猜。
- 为后续理论课打好框架:深度学习理论、强化学习理论这些课会复用本课建立的数学语言与推导习惯。
- 在偏研究的岗位上有实打实的优势:ML Research Engineer、Quantitative ML、AI 基础设施这类岗位,能手推算法并解释理论来源,是明显区分度——国内背景的同学普遍缺这一块。
难点与常见挂因
这门课的难点不在「概念多」,而在「推导密度」:它要求你从定义出发一步步走完,而不是套公式。课堂节奏是按「能重推基础结论」的学生设计的,一旦落后,欠账会迅速累积。
为什么中国学生容易在这里卡?
- 国内机器学习课以代码为主,理论推导比重低。 很多同学用 PyTorch、scikit-learn 跑过大量实验,却极少被要求从零推导损失函数的梯度,或者证明一个算法的收敛性。到了这里才发现,「会用」和「会推」是两件完全不同的事,需要切换整个学习模式——而这个切换通常要花掉半个学期。
- 全英文数学写作是额外负担。 推导本身已经烧脑,还要用英文规范书写证明步骤:量词的用法、notation 的习惯,都和国内有差异。写得不规范会被扣分,而很多同学根本不知道自己错在「表达」而不是「内容」。
- 线性代数的视角不匹配。 国内线性代数课通常侧重矩阵计算,这门课需要的是向量空间、内积空间的几何直觉与抽象理解。方向不对,练再多计算题也没用,得补「抽象线性代数」那一面。
- 概率论深度不够会在推导时卡壳。 条件期望的严格定义、矩生成函数(Moment Generating Function)这些工具需要扎实概率基础;国内部分院校概率课以工程应用为主,这里会成为明显短板。
- Term 1 开学即高强度。 还没适应英国的学习节奏,就迎来密集的数学课。许多同学在第 3–5 周会突然觉得「全都不会」——这是正常的适应过程,但没有预期的话,容易变成恐慌和拖延。
- 「标准答案」思维要换掉。 中国学生普遍习惯有唯一解法,但这门课的作业经常要求自己选择证明路径,没有标准答案。这不是数学不够好,是思维模式要切换。
卡住之后会发生什么?
- 泛化理论那一块(VC 维、PAC 学习)一旦跳过,期末几乎必考的部分会整块失分,而这部分恰恰是最容易被「看不懂就先放着」的。
- 核方法的概念跨度没消化,后面 SVM、高斯过程、核岭回归会接连听不懂——它们共用同一套语言。
- 只会背公式不会推,遇到全新设定的题目就无从下手:题目给的是没见过的场景,背不到。
- 英文证明写不规范,即使思路对了也拿不到满分,这类失分最隐蔽,也最容易被误判成「我数学不行」。
- 作业拖到最后一天,理论证明题每道都可能卡上很久,突击的成功率极低。
五处高频卡点
- 数学推导密度极高。 课程大量使用不等式(如 Hoeffding 不等式)、期望分析和 VC 理论,不是套公式,要从定义出发一步步推。
- 从「知道公式」到「理解为什么」的跨度巨大。 以岭回归(Ridge Regression,加了 L2 惩罚项的线性回归)为例:多数人会背公式,但能同时从贝叶斯先验(Gaussian Prior)和约束优化两个角度推导、并互相解释的人很少——这门课要的正是这种深度。
- 核方法是第一道硬坎。 核技巧(Kernel Trick,通过内积隐式映射到高维空间、而不显式计算)数学上很优雅,但概念跨度大;Mercer 定理和函数空间的理解需要反复消化。
- 泛化理论抽象度最高。 VC 维、Rademacher 复杂度(衡量假设空间复杂度的工具)完全脱离具体数据,要在「纯粹抽象的数学对象」和「模型实际表现的直觉」之间搭桥,这个过程耗时且容易挫败。
- 考「新结论」而不是「旧结论」。 题目给出全新设定,要求用课内工具独立推导,没有模板可套——这比背公式难一个量级。
哪些章节最容易失守?
把十五项内容按「失守概率」排一下,会看得更清楚:
- Statistical Learning Theory(VC 维、PAC、泛化界):失守概率最高。内容抽象、和具体数据脱钩,上课时容易觉得「听懂了」,做题时写不出。这块是这门课的标志性内容,也是期末最可能出推导题的地方。
- Kernels and Regularisation(核方法与正则化):失守概率次高。它要求你把「内积」「映射」「函数空间」三件事连成一条线,中间断一环,后面 SVM 与高斯过程都会跟着塌。
- Support Vector Machines 与 Gaussian Processes:这两块的推导链条长,前面核方法没打通,这里基本只能背结论。背结论在「给新设定」的题面前没有任何用处。
- Proximal Methods 与 Sparsity Methods:涉及非光滑优化,和前面几章的分析方式不太一样,很多人在学期末才发现这块没跟上。
- Nearest Neighbours、Linear Regression、Decision Trees:前段内容相对好入口,但正因为「看起来简单」,容易被草草带过——线性回归的推导其实是后面所有章节的地基。
判断标准很简单:能不看材料,把某一章的结论从定义推到结果,才算过关;能复述结论不算。
常见挂因与对应动作
- 数学基础不达标就硬选。 如果线性代数只会矩阵乘法、概率只会套贝叶斯公式,第二周就会跟不上。怎么补:开学前用 Gilbert Strang《Introduction to Linear Algebra》和 Sheldon Ross《A First Course in Probability》认真过一遍,重点练证明题,不是计算题。
- 课上跟着推导觉得「懂了」,合上笔记推不下去。 这是理论课里最常见的自我欺骗。怎么补:每次课后合上笔记,把当天推导重推一遍,推不出来的步骤标出来,课前解决。
- 作业拖延。 理论证明题不像编程作业「能跑就行」,每道题都可能卡很久。怎么补:拿到作业先通读、标出难题、提前开始。
- 只背结论不掌握推导路径。 期末出的是新场景,背不到。怎么补:复习时梳理「每个结论怎么推出来的」,而不是背最终公式。
- 忽视泛化理论章节。 这部分抽象、不直观,最容易被跳过,但它是 UCL 机器学习理论课的标志性内容,几乎必考。怎么补:专门留出时间对着教材做习题,不要只看讲义。
留学生特别提醒
中国学生最容易在四处吃亏:把「会调包」当成「会推导」、英文证明写不规范、概率基础偏应用、以及不好意思去问。
- 先承认自己需要换模式。 本科阶段跑过很多实验,不代表能推一遍梯度。前两周就把这个心态调过来,比期中再慌要省力得多。
- 英文数学写作单独练。 量词怎么写、步骤怎么排、notation 怎么统一,这些是有规范的。写完请助教看一遍,比闷头改十遍有效。
- 概率和线代按「理论版」补,不按「计算版」补。 补的方向错了,投入全白费。
- 第 3–5 周的低谷要有预期。 那段时间感觉「全都不会」很常见;按周把欠账清掉,别让它滚成雪球。
- 办公室答疑主动去。 觉得「问太基础的问题丢脸」是很多中国学生的通病,小错误就这样积成知识漏洞。
- 小组活动别当水分。 14% 的 Group activity 同样是分,而且「用英文讲清一个理论思路」这项能力,对笔试的推导表达也有直接帮助。
- 别在 Term 1 同时堆太多高数学强度的课。 这门课需要持续消化时间,和其他理论课撞在一起会互相挤压。
怎么准备?
准备的关键是三条:把三门数学按理论版补到位;把「合上笔记重推」变成日常动作;把泛化理论单独留出时间。
- 入学前补基础。 多变量微积分、概率与组合、线性代数各过一轮,重点是能推、能证,不是能算。
- 每节课后重推一遍。 当天推导当天复现,推不出来就标出来,第二天问掉。
- 用「能不能从定义出发写完整推导」当自检标准。 不满足就回去补,不要靠「看懂了」判断。
- 作业提前开工。 证明题的时间不可预测,留出缓冲。
- 泛化理论专门排时间。 VC 维、PAC、Rademacher 复杂度这几块对着教材做习题,别只看讲义。
- 复习时按「推导路径」整理。 每个结论追问一句:它是从哪一步来的?换一个假设还成立吗?
- 期末按手写推导练。 笔试是纸上推导,平时就用纸笔限时写,别只在电脑上看。
中英术语速查
- Supervised Learning —— 监督学习:用带标签的数据训练模型,学会从输入预测输出。
- regression —— 回归:预测连续数值的任务。
- classification —— 分类:预测离散类别的任务。
- Linear Regression —— 线性回归:用线性函数拟合 input 与 output 的关系。
- Ridge Regression —— 岭回归:加了 L2 惩罚项的线性回归。
- Nearest Neighbours —— 最近邻:按距离最近的样本做预测。
- Kernel Methods / Kernel Trick —— 核方法 / 核技巧:通过内积隐式映射到高维空间,而不显式计算。
- Regularisation —— 正则化:防止过拟合的技术。
- Support Vector Machine (SVM) —— 支持向量机:以最大间隔分类的经典算法。
- Gaussian Process —— 高斯过程:用函数上的分布做回归与分类的贝叶斯方法。
- Ensemble Learning —— 集成学习:组合多个模型提升表现,如随机森林。
- Bias-Variance Tradeoff —— 偏差-方差权衡:串联模型复杂度与泛化表现的核心思想。
- Generalisation —— 泛化:模型在未见数据上的表现能力。
- VC Dimension —— VC 维:描述假设空间复杂度的数学量。
- PAC Learning —— PAC 学习框架:从理论上回答「模型什么时候能学会」。
- Rademacher Complexity —— Rademacher 复杂度:衡量假设空间复杂度的工具。
- Hoeffding's Inequality —— Hoeffding 不等式:推导泛化界常用的集中不等式。
- Reproducing Kernel Hilbert Space (RKHS) —— 再生核希尔伯特空间:描述核方法所在函数空间的数学框架。
- Proximal Methods —— 近端方法:处理非光滑优化的一类方法。
- Multi-task Learning —— 多任务学习:多个相关任务共享信息一起学。
关于我们
鱼之跃做在读留学生的学业支持,服务分两块,界限很清楚:
辅导=老师授课:由 QS 前 200 院校的硕博老师把课程的知识点、推导链、作业要求讲透,按对口专业配课;覆盖同步辅导、论文辅导、考前辅导、预习。
护航=你的学业管家:排计划、理材料、理流程这些杂事都替你打点好,该提前准备的他先想到;你只管学,有事随时找,需要时都在。同地区的留学学姐,熟悉你所在学校的节奏。
学术问题上的申诉,我们做材料梳理与流程陪跑,不代写、不代考、不碰学术诚信边界,也不承诺任何成绩。
课程官网与核对说明
课程官网(学校官网):https://www.ucl.ac.uk/module-catalogue/modules/supervised-learning-COMP0078
本文涉及学校、课程代码、学分、课程内容、考核比例、选课资格与授课学期的教学安排事实,均来自上述学校官网课程页;核对时间为 2026-10-30。文中「与国内课程差异、先修判断、难点、适合谁、怎么准备、学完能力」等属于基于课程内容的分析与学习建议,不代表学校官方要求。