1.6 Chapter 1 练习题:深度学习简介

Author

xcherry9988-code

Published

2026-09-21

Modified

2026-09-21

1. 神经网络可以看成一个带参数的函数:

\[ \hat{y} = f(x;\theta) \]

其中,\(\theta\) 表示模型的 ______。训练神经网络的过程,本质上就是不断调整 \(\theta\),使训练数据上的损失函数尽可能 ______。

2. 关于反向传播和参数更新,下列说法正确的是:

A. 反向传播会在计算梯度的同时自动修改模型参数。
B. 反向传播负责计算参数梯度,而参数更新负责根据梯度真正修改参数。
C. 只要完成前向传播,模型参数就会根据 loss 自动更新。
D. 梯度下降负责计算梯度,反向传播负责选择学习率。

3. 在高维神经网络的损失地形中,如果某一点满足梯度为 0,下列说法正确的是:

A. 该点一定是全局最小值。
B. 该点一定是局部最小值。
C. 该点可能是局部最小值、局部最大值或鞍点,还需要结合局部曲率进一步判断。
D. 该点说明梯度下降算法已经失效,无法继续训练。

4. 运行下面的代码,观察一次梯度下降更新前后的参数和 loss:

theta = 5.0
lr = 0.1

loss1 = (theta - 3) ** 2
grad = 2 * (theta - 3)

theta = theta - lr * grad
loss2 = (theta - 3) ** 2

print(f'theta: {theta:.4f}')
print(f'loss1: {loss1:.4f}')
print(f'loss2: {loss2:.4f}')

请写出程序输出,并解释为什么这一步更新会让 theta 向 3 靠近。

参考答案

1. 答案:参数;减小

\(\theta\) 决定了模型当前实现的函数。训练的目标就是不断调整这些参数,使模型预测与真实目标之间的损失尽可能小。

2. 答案:B

反向传播通过计算图和链式法则得到各参数的梯度,但不会自动修改参数。真正的参数更新发生在梯度下降等更新步骤中。

3. 答案:C

梯度为 0 只能说明该点是一类临界点,并不能保证它一定是最小值。在高维参数空间中,它还可能是局部最大值或鞍点,可以结合 Hessian 等局部曲率信息进一步判断。

4. 答案:4.6;4.0;2.56

初始时:

\[ \theta = 5 \]

梯度为:

\[ \frac{dL}{d\theta} = 2(\theta - 3) = 4 \]

梯度为正,说明继续增大 \(\theta\) 会使 loss 增大,因此梯度下降沿负梯度方向更新:

\[ \theta \leftarrow 5 - 0.1\times 4 = 4.6 \]

更新后参数向最小值所在的 \(\theta=3\) 靠近,loss 也从 4.0 降到了 2.56。