MasterAI Now / Stage 1 卡片 1 — 核心想法 第 1 / 5 张卡片
机器学习就是从例子中猜出规则 你不必编写答案,你让数据自己暴露出规则。
Analogy
账单类比
朋友告诉你「4 个人,80 元」和「6 个人,120 元」。没人说规则,你却立刻猜出「10 个人大约 200 元」。你刚刚找到了规则:人均约 20 元。线性回归做的就是同一件事,只不过更精确、全自动。
模型 是一台带旋钮的机器。给它 例子 ——输入加上正确答案——然后不断转动旋钮直到答案正确,这个过程叫 训练 。历史上第一台会转旋钮的机器就是 线性回归 。
它假设世界看起来像 答案 = 权重 × 输入 + 偏置。 权重 表示关系有多陡; 偏置 (截距)表示输入为零时直线从哪里开始。两个旋钮、一条直线,却有无数种拟合方式。
ŷ = w · x + b
ŷ 是预测值,x 是输入,w 是权重(斜率),b 是偏置(截距)。 ? 进入下一张卡片前的一个小检查
模型用面积预测房价。w 和 b 分别代表什么?
a w 是第一套房的价格,b 是平均价格 b w 是每多一平方米增加的价格,b 是面积为零时的基础价格 c w 是训练速度,b 是训练时长
5 个知识检查
🔒
实验区已锁定 完成全部 5 张卡片及其知识检查,即可解锁这个模拟实验。
Read the full stage transcript (all 5 cards, no JavaScript required) 卡片 1 — 核心想法
1. 机器学习就是从例子中猜出规则 你不必编写答案,你让数据自己暴露出规则。
Analogy
账单类比
朋友告诉你「4 个人,80 元」和「6 个人,120 元」。没人说规则,你却立刻猜出「10 个人大约 200 元」。你刚刚找到了规则:人均约 20 元。线性回归做的就是同一件事,只不过更精确、全自动。
模型 是一台带旋钮的机器。给它 例子 ——输入加上正确答案——然后不断转动旋钮直到答案正确,这个过程叫 训练 。历史上第一台会转旋钮的机器就是 线性回归 。
它假设世界看起来像 答案 = 权重 × 输入 + 偏置。 权重 表示关系有多陡; 偏置 (截距)表示输入为零时直线从哪里开始。两个旋钮、一条直线,却有无数种拟合方式。
ŷ = w · x + b
ŷ 是预测值,x 是输入,w 是权重(斜率),b 是偏置(截距)。 Knowledge check: 模型用面积预测房价。w 和 b 分别代表什么?
a. w 是第一套房的价格,b 是平均价格 b. w 是每多一平方米增加的价格,b 是面积为零时的基础价格← correct c. w 是训练速度,b 是训练时长 权重是一个比率(每平方米多少钱),偏置是一个偏移量(起步价格)。两者合起来描述了一整族直线。
卡片 2 — 记分板
2. 我们错了多少?认识平方误差 你无法改进你无法衡量的东西。
对每个数据点,用预测值减去真实值,得到 残差 ——点到直线的垂直距离。正数表示直线太低,负数表示太高。
如果直接把残差相加,一条在某处高 100、在另一处低 100 的直线反而会得满分。所以我们要先把每个残差 平方 。平方消除了符号,并且对大错误的惩罚远重于小错误。这些平方值的平均数就是 均方误差(MSE) ——记分板。
MSE(w, b) = (1/n) · Σ (yᵢ − (w·xᵢ + b))²
始终 ≥ 0。大错误按平方惩罚;只有完美拟合时才是 0。 Analogy
为什么平方是一个严格的裁判
只数「错误次数」的裁判,不管你越位 1 厘米还是 10 米。平方裁判的喊声则成倍放大。机器学习大多使用这位严格裁判,因为它给出一个平滑、可以沿其行走的记分板。
Knowledge check: 为什么要对残差取平方,而不是直接加绝对值?
a. 因为平方后的数字更省存储空间 b. 因为它消除了符号、重罚大误差,而且始终平滑可导← correct c. 因为残差总是负数 贡献恒为正、重大失误占主导,而且处处可导——下一张卡片正需要最后这个性质。
卡片 3 — 地形
3. 每一对 (w, b) 都有一个分数,而分数构成一个碗 把误差对旋钮作图,你就得到一片能闭着眼走的地形。
想象一张巨大的表格:行是权重,列是偏置,每个格子里放着这一对参数的 MSE。把这些格子画成地形——高度是误差,地面是旋钮取值——线性回归永远给出一个平滑的 凸碗 ,只有一个最低点。
Analogy
雾中的行走者
你被放进一个有雾的山谷,看不见谷底。但你能感觉到脚下的地往哪边倾斜。反复向下走,即使看不见也能到达最低点。模型就是这样学习的。
脚下的坡度有个名字: 梯度 。它指向上升方向,所以你要朝相反方向迈步。步子大小就是 学习率 (α)。太小训练慢如蜗牛;太大你就会跳过山谷、在对面墙上弹回来。
w ← w − α · ∂MSE/∂w b ← b − α · ∂MSE/∂b
重复到梯度几乎为零:你已经到达碗底。 Watch out 新手常踩的坑
如果忘记把梯度除以样本数量,梯度就会随数据集规模增大,于是同一个学习率突然爆炸。永远要清楚你的损失是在对什么取平均。
Knowledge check: 损失剧烈震荡、始终不稳定,最可能的原因是什么?
a. 学习率太大,步子越过了最小值← correct b. 数据集太小 c. 线性回归需要 GPU 越过最小值是最典型的症状。只有当步长足够小时,梯度下降才保证收敛到唯一的全局最小值。
卡片 4 — 行走
4. 一个短循环里的梯度下降 价值数十亿美元模型的训练循环,缩小版。
ts let w = 0, b = 0;
const lr = 0.01;
for (let epoch = 0; epoch < 400; epoch++) {
let gradW = 0, gradB = 0;
for (const { x, y } of data) {
const residual = (w * x + b) - y; // prediction - truth
gradW += 2 * residual * x; // dMSE/dw
gradB += 2 * residual; // dMSE/db
}
gradW /= data.length; // average over the batch
gradB /= data.length;
w -= lr * gradW; // step downhill
b -= lr * gradB;
}1 预测:把每个例子送入当前旋钮。 2 衡量:计算残差,并归并成一个损失数值。 3 归责:计算每个旋钮贡献了多少(梯度)。 4 修正:让两个旋钮沿梯度的反方向稍微移动。 5 重复,直到损失不再改善。 这个五步循环再也不会改变。一个 4000 亿参数的语言模型跑的也是同一个循环——只是旋钮和损失更复杂了。
Good to know 有意思的一点
线性回归还有闭式解:w = (XᵀX)⁻¹Xᵀy。梯度下降之所以重要,是因为在没有闭式解时它依然可用——而这一阶段之后的每个模型都属于这种情况。
Knowledge check: 哪一步告诉每个旋钮该如何改变?
a. 预测步骤 b. 由损失计算出的梯度← correct c. 在测试集上的最终评估 梯度是唯一把信息从损失传回参数的步骤。这一阶段之后的一切,都是关于如何更便宜地完成这一步。
卡片 5 — 现实检验
5. 当直线在说谎 模型是关于世界形状的一个承诺。违背承诺,它就会响亮地失败。
线性回归假设四件事:关系大致是直的、误差相互独立、误差离散程度恒定、没有哪个点占主导。破坏其中一条,拟合可能看起来很自信,其实是错的。
离群点 :因为误差被平方,一个极大的数值会把整条直线拖过去。 曲率 :销量对价格不是直线。给模型喂 x 和 x²,它就能拟合曲线——这仍然是「线性」回归,只是对其参数线性。 外推 :用 50–200 平方米的房子拟合出的直线,对一栋 5000 平方米的宅邸毫无可信度。 相关 ≠ 因果 :直线可以完美,而它背后的故事完全荒谬。 Analogy
鞋码陷阱
在 4 到 12 岁的孩子中,鞋码能极好地预测阅读能力。真正的驱动因素是年龄。模型找到了真实的模式,却给出了错误的原因。永远要问:相关性背后藏着什么。
Note 接下来
直线只能回答「多少」。要回答「是或否」,你需要一个会弯折的旋钮:人工神经元。
Knowledge check: 一次录入错误把某套房的价格乘了 1000 倍,拟合出的直线会怎样?
a. 没有影响,线性回归对离群点很稳健 b. 它会被拉向该离群点,因为平方误差放大了大错误← correct c. 学习率会自动降低 在 MSE 下,1000 倍的错误代价是 1,000,000 倍。Huber 损失、RANSAC 和分位数回归正是为此而生。
下一阶段: The Artificial Neuron →