深度学习第二课--第一周理论知识

什么是高偏差/高分差?

高偏差:如果训练集和测试集的误差率都在15%左右,欠拟合,训练不充分。
高分差:如果训练集误差率为1%,测试集误差率为15%,过拟合,测试误差高。

如何解决高偏差

  • 更大的网络
  • 更长的时间
  • 新的网络结构

如何解决高分差

  • 更多训练
  • 训练时进行正则化
  • 新的网络结构

正则化

在降低代价函数值得同时,将会对网络的结构进行简化,此时可以有效的防止过拟合的问题。

L2正则化

J=1mi=1m(YlogA+(1Y)log(1A))+1mλ2lkjWk,j[l]2J_{正则化}= -\frac{1}{m} \sum_{i=1}^m(YlogA+ (1-Y)log(1-A))+\frac{1}{m}\frac{\lambda}{2} \sum_l \sum_k \sum_j W_{k,j}^{[l]2}
其中,lkjWk,j[l]2\sum_l \sum_k \sum_j W_{k,j}^{[l]2}代码为=np.sum(np.square(Wl))。

dropout正则化

每次迭代过程中随即将其中的一些节点失效。遍历每层的神经元节点,并设置每层节点随机消失的概率。例如,我们设置所有节点有0.5的概率会消失,在完成这个过程后,会发现有一些节点现在已经被消失,然后,删除掉与这些节点关联的连线。此时,会得到一个节点更少,网络更加简单的模型结构,对于该样本,以同样的结构进行前向传播和反向传播。当下一样本输入时,需要重新随机选择节点置为失效并进行前向传播和反向传播。
ps:
1、由于dropout正则化会随即置节点失效,因此不方便算代价值。
2、在进行验证,测试或应用时,不再适用Dropout函数进行随机失效处理, 主要原因是因为在测试或验证阶段,我们不希望输出的结果是随机的。

什么是梯度消失/梯度下降

梯度消失:当网络很深时,w值很大,y^\hat y呈指数式增长。
梯度下降:当网络很深时,w值很小,y^\hat y呈指数式下降。

梯度校验

即导数校验,θ\theta点的梯度=θ\theta点的导数=g(θ)f(θ+ξ)f(θξ)2ξg^{'}(\theta) \approx \frac{f(\theta + \xi) - f(\theta - \xi)}{2\xi}
dQapprox=J(θ+ξ)J(θξ)2ξdQ _{approx}=\frac{J(\theta + \xi)-J(\theta - \xi)}{2\xi}
error=dQapproxdQ2dQapprox+dQ2error=\frac{||dQ_{approx}-dQ||_2}{||dQ _{approx}||+||dQ||_2}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章