p2p信贷网站建设,seo网站首页优化排名怎么做,wordpress 模板选择,上传到网站过拟合的应对方法——weight_decay
权重衰退是最广泛使用的正则化方法之一。
模型容量受参数个数和参数范围影响#xff0c;通过L2正则项限制w的取值范围#xff0c;权重w每次更新乘以小于1的数#xff0c;w的数值范围不会太大#xff0c;从而降低模型复杂度#xff0c;…
过拟合的应对方法——weight_decay
权重衰退是最广泛使用的正则化方法之一。
模型容量受参数个数和参数范围影响通过L2正则项限制w的取值范围权重w每次更新乘以小于1的数w的数值范围不会太大从而降低模型复杂度减轻过拟合风险。 两种方法
一、使用正则项权重超参数lambd。
lambd为0w的L2范式很大无作用。lambd趋近无穷大w的L2范式很少参数w趋近于0。通过增加lambdw的取值减小让模型不那么复杂。
# 定义l2范式惩罚
def l2_penalty(w):return torch.sum(w.pow(2)) / 2# 超参数lambd加入损失函数
l loss(net(X), y) lambd * l2_penalty(w)
二、在优化器中设置weight_decay参数。常用框架都包含该参数在更新梯度前对w进行衰减。 总结调大lambdw减少减轻过拟合
当lambd很大欠拟合 问题
1.为什么模型参数范围大模型复杂度高
如下图需要模拟红色的点。如果我们让模型参数取很大的数值可以用很复杂的模型来拟合红色的点如果是二次或者三次函数权重取的很大或者很小可以造成一个非常不平滑的曲线。如果对模型取值限定在一个范围不让学习复杂的模型就会选择比较平滑的模型例图中绿色的曲线。 2.实际中权重参数一般多少
常用值1的-3次方0.0011的-4次方0.0001