用于训练神经网络的MSE成本函数

时间:2017-05-18 04:27:09

标签: neural-network mean-square-error

在关于神经网络和深度学习的online textbook中,作者用最小化二次成本函数来说明神经网络基础知识,他说这是均方误差的同义词。但有两件事让我对他的功能感到困惑(下面的伪代码)。

MSE≡(1 / 2n)后*Σ‖y_true-y_pred‖^ 2

  1. 不是将平方误差之和除以训练样例数 n ,而是将其除以 2n ?这是什么意思?
  2. 为什么使用双条记法代替括号?这让我觉得还有一些其他计算正在进行,例如L2规范,没有明确说明。我怀疑情况并非如此,该术语旨在表达普通的平方误差总和。虽然超级混乱。
  3. 非常感谢您提供的任何见解!

3 个答案:

答案 0 :(得分:2)

成本函数乘以的0.5因子并不重要。事实上,你可以将它乘以你想要的任何实常数,并且学习将是相同的。它仅用于使得成本函数相对于输出的导数仅为$$ y - y_ {t} $$。这在某些应用中很方便,例如反向传播。

答案 1 :(得分:0)

  

符号∥v∥仅表示向量v的常用长度函数。来自您引用的online textbook

在双栏here上查找更多信息。但根据我的理解,你基本上可以将其视为绝对术语。

我不确定为什么会说 2n ,但它并不总是 2n 。例如,Wikipedia按如下方式编写函数:

enter image description here

谷歌搜索Mean Squared Error也有很多使用维基百科的来源,而不是来自在线教科书的知识。

答案 2 :(得分:0)

双杠是距离度量,如果y是多维的,括号是不正确的。 对于均方误差,n 中没有 2,但这并不重要。它将被学习率吸收。 然而,在求导数时经常需要取消平方数 2。