1.在实现前向传播和反向传播中使用的“cache”是什么?
【 】用于在训练期间缓存成本函数的中间值。
【★】 我们用它传递前向传播中计算的变量到相应的反向传播步骤,它包含用于计算导数的反向传播的有用值。
【 】它用于跟踪我们正在搜索的超参数,以加速计算。
【 】 我们使用它将向后传播计算的变量传递给相应的正向传播步骤,它包含用于计算计算激活的正向传播的有用值。
the “cache” records values from the forward propagation units and sends it to the backward propagation units because it is needed to compute the chain rule derivatives. “cache”记录来自正向传播单元的值并将其发送到反向传播单元,因为需要链式计算导数。
2.以下哪些是“超参数”?
【★】隐藏层的大小n[l]
【★】学习率α
【★】迭代次数
【★】神经网络中的层数L
博主注:我只列出了正确选项。
3.下列哪个说法是正确的?
【★】 神经网络的更深层通常比前面的层计算更复杂的输入特征。
【 】神经网络的前面的层通常比更深层计算输入的更复杂的特性。
4.向量化允许您在L层神经网络中计算前向传播,而不需要在层(l = 1,2,…,L)上显式的使用for-loop(或任何其他显式迭代循环),正确吗?
【 】正确
【★】 错误
请注意:在层间计算中,我们不能避免for循环迭代。
5.假设我们将n[l]的值存储在名为layers的数组中,如下所示:layer_dims = [n_x,4,3,2,1]。 因此,第1层有四个隐藏单元,第2层有三个隐藏单元,依此类推。 您可以使用哪个for循环初始化模型参数?
for(i in range(1, len(layer_dims))):
parameter[‘W’ + str(i)] = np.random.randn(layers[i], layers[i - 1])) * 0.01
parameter[‘b’ + str(i)] = np.random.randn(layers[i], 1) * 0.01
6.下面关于神经网络的说法正确的是:.
【★】层数L为4,隐藏层数为3。
注意:输入层(L[0])不计数。
As seen in lecture, the number of layers is counted as the number of hidden layers + 1. The input and output layers are not counted as hidden layers.
正如视频中所看到的那样,层数被计为隐藏层数+1。输入层和输出层不计为隐藏层。
7.在前向传播期间,在层l的前向传播函数中,您需要知道层l中的激活函数(Sigmoid,tanh,ReLU等)是什么, 在反向传播期间,相应的反向传播函数也需要知道第l层的激活函数是什么,因为梯度是根据它来计算的,正确吗?
【★】 正确
【 】错误
During backpropagation you need to know which activation was used in the forward propagation to be able to compute the correct derivative.
在反向传播期间,您需要知道正向传播中使用哪种激活函数才能计算正确的导数。
8.有一些功能具有以下属性:
(i) 使用浅网络电路计算函数时,需要一个大网络(我们通过网络中的逻辑门数量来度量大小),但是(ii)使用深网络电路来计算它,只需要一个指数较小的网络。真/假?
【★】 正确
【 】错误
请注意:参见视频,完全相同的题。
9.在2层隐层神经网络中,下列哪个说法是正确的?
【★】W[1] 的维度为 (4, 4)
【★】b[1] 的维度为 (4, 1)
【★】W[2]的维度为 (3, 4)
【★】b[2] 的维度为 (3, 1)
【★】b[3] 的维度为 (1, 1)
【★】W[3]的维度为 (1, 3)
10.前面的问题使用了一个特定的网络,与层l有关的权重矩阵在一般情况下,W[1]的维数是多少
W[l]的维度是 (n[l],n[l−1])