【问题标题】:Regularization in Feed-forward Neural Network前馈神经网络中的正则化
【发布时间】:2013-10-07 22:13:11
【问题描述】:

我刚刚在 Coursera 上完成了 Andrew Ng 的一些在线公开课程讲座。在关于神经网络的讲座结束时,他解释了正则化,但我担心我错过了一些东西。通过正则化,代价函数的值计算如下:

J(theta) = -1/m * jValMain + lambda/(2*m)*JValReg

jValMain 是一组超过y 的总和,以及 NN 的输出。第二个组件jValReg 是应用正则化,看起来像这样:

jValReg = lambda/(2*m)*sum( sum( sum( Theta(j)(i)(k)^2 ) ) )

Theta 是一组权重,m 是数据库中所有元素/案例的数量,然后是 lambda。什么是拉姆达?它是标量还是向量或矩阵?我们如何通过 lambda 应用正则化?是 lambda 从第 l 层调节特定的第 j 和第 i 个权重,还是通过一个数字调节所有权重。它以某种方式让我感到困惑。如果有人熟悉这个概念,我将不胜感激。 干杯!

【问题讨论】:

    标签: matlab neural-network


    【解决方案1】:

    lambda 是您估计中的正则化参数。将其视为控制估计偏差的一种手段。它是一个标量,通常用于防止数据过度拟合。以下是从课程作业的笔记中摘录的几行。

    ... lambda 的值可以显着影响正则化多项式回归在训练集和交叉验证集上的结果。特别是,没有正则化的模型(lambda = 0)很好地拟合了训练集,但不能泛化。相反,正则化过多(lambda = 100)的模型不能很好地拟合训练集和测试集。一个好的 lambda 选择(例如,lambda = 1)可以很好地拟合数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-06-04
      • 1970-01-01
      • 1970-01-01
      • 2015-12-23
      • 2016-11-29
      • 2016-08-04
      • 2018-12-23
      • 1970-01-01
      相关资源
      最近更新 更多