损失函数与优化器
约 10 分钟
给错误标价
反向传播那一讲说过,训练就是「预测 → 算误差 → 调权重」的循环。但「误差」具体怎么算?这把尺子叫损失函数。不同任务用不同尺子:预测房价这种连续数字,用均方误差,预测值 100 万、实际 110 万,差的平方是 ,白话就是「差得越远罚得越狠,而且惩罚按平方放大」;做选择题式的分类,用交叉熵——它只管一件事:正确答案被分到多少概率,概率越接近 1 罚得越少,敢把错误答案说得理直气壮就罚到天文数字。
优化器:下山的走法
有了损失这座「山」,优化器决定怎么下山。第一章的梯度下降是最朴素的走法;实际用的多是改进版。SGD 每次只看一小批样本就迈步,快但走得晃;给 SGD 加个「动量」,像推着小球下山——顺着惯性滚,小坑直接碾过去,不会困在浅洼里。目前最常用的是 Adam(2015 年提出):它给每个权重单独调步子,走得慢的参数迈大步,走得快的收着点,省心到几乎成为默认选择。
一个关键旋钮:学习率
步子迈多大由学习率决定:太大,一脚跨过山谷在两边来回蹦;太小,天黑了还没下到山脚。实战里常先大后小——开局大步赶路,快到时碎步逼近。《动手学深度学习》的「优化算法」一章把这些走法逐个拆开讲。
常见误区
没有「最好的损失函数」,任务决定尺子;也别迷信 Adam——调好学习率的 SGD 在很多比赛里成绩更好,Adam 强在省心。
练一练:用「蒙眼下山」描述三种走法:SGD、加动量的 SGD、Adam,说说各自像什么。
小纸条
用蒙眼下山的类比,分别描述 SGD、带动量的 SGD、Adam 三种下山走法。
登录 后可看答案