代码语言:javascript
复制
def l2_regularizer(scale, scope=None):
if isinstance(scale, numbers.Integral):
raise ValueError('scale cannot be an integer: %s' % (scale,))
if isinstance(scale, numbers.Real):
if scale < 0.:
raise ValueError('Setting a scale less than 0 on a regularizer: %g.' %
scale)
if scale == 0.:
logging.info('Scale of 0 disables regularizer.')
return lambda _: None
返回一个函数,该函数可用于对权重应用L2正则化。较小的L2值有助于防止训练数据过度拟合。
参数:
- scale:标量乘法器“张量”。0.0禁用正则化器
- scope:可选的作用域名称
返回值:
- 一个带有“l2(权重)”签名的函数,它应用l2正则化
可能产生的异常:
- ValueError: If scale is negative or if scale is not a float.