【深度学习-吴恩达】课程疑问及解答-持更
@
深度学习-吴恩达课程疑问及回答
梯度下降法
P16
Q1:为什么m个样本,在遍历完m个样本之后将 dw1/m
,dw2/m
,db/m
,J/m
?
A:首先J的公式即为各个样本损失函数之和的平均,这个根据吴老师前面所讲的知识可以知道这里遍历完所有样本之后J需要除以m。关于w1和w2以及m除以m的原因是防止样本过大而导致数值过大的情况。
Q2:为什么右侧w1、w2、b只进行了一次更新,而不是每个样本计算出来就更新一次?
A:这个可以倒回到P10回顾一下梯度下降法的定义,由于这里仅更新一次,所以相当于只进行了一次梯度下降法。梯度下降法dw1的实际含义是 dJ/dw1
,由 dJ
的公式可以知道它是所有样本的损失函数之和,所以想要计算 dj
就必须要遍历所有的样本,因此在这里,遍历所有样本之后才更新一次w1、w2、b的值。在训练模型的时候,更新w1、w2、b这些参数的次数由参数batch_size指定,也就是人为决定,如果想要多次更新,就在外面加一层循环。