浅谈范数在神经网络中的作用

范数主要是对矩阵和向量的一个表述,在机器学习之中经常频繁出现的话题:如何防止模型过拟合与规则化参数。我们在训练模型的时候会尽可能小的减小损失,而在减小损失的同时我们也需要让我们的模型较好的拟合我们的训练集,而规则化参数则是就是防止我们的模型过分的拟合训练集。我们想要让模型达到一个比较好的效果的时候,难免会对神经网络进行加大加深,但是同样也会导致参数的增多。这样模型的复杂度同样也上去了,在此我们需要引入一个损失函数来对模型进行一个规范,在使其有较好的效果的同时,能防止模型出现过拟合的情况,这里我们引入了范数。防止模型过拟合的方法有很多种,这里就先介绍范数:

L0范数:L0范数是用于统计向量之中非零元素的个数,即w(权重)中的非零元素的个数。使损失L降低就得使L0范数逼近0,当我们让w中的元素逼近于0的时候,也就是让此矩阵(w)变成一个0元素尽可能多的矩阵,即数学中定义的稀疏矩阵。在神经网络之中判断网络复杂度可以用权重的个数来判断,当网络中的权重少的时候也就对应了网络之中的神经元结点较少,此网络的复杂度也就更低。所以L0范数可以帮助我们减少网络之中的特征值,使网络模型变得更加的简单。

L1范数:║x║1=│x1│+│x2│+…+│xn│,L1范数是向量之中所有元素的绝对值之和也被称为”稀疏规则算子“,在网络中我们同样也可以使用L1范数来限制模型的复杂程度,一个模型的复杂程度于参数量是成正比。从L1范式的名字就不难判断其作用,也可以实现对矩阵的一个稀疏,减小网络模型的复杂度,与L0范数有着相同的作用,而我们在对网络优化的时候,为什么往往选择L1而不会选择L0?1.L1的可解释性相对于L0而言更高,且比L0范式更好优化求解。2.L1是L0的最优凸近似。所以我们更青睐于使用L1范数。

L2范数:║x║^2=(│x1│^2+│x2│^2+…+│xn│^2)^1/2,L2范数相比于L1而言就更受人所喜爱,集万千宠爱于一身,它具有一个相当强大的功能,防止模型过拟合。我们知道模型的复杂度越高,越容易过拟合。在神经网络中加入L2损失函数,能有效的防止训练结构出现过拟合的情况,因为一旦在网络中的某个权重出现了比较大的值以后,通过平方会把这个值放大,在反向传播之中,就能迫使其将w值减小。

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值