从一些陈旧的讨论(link1,link2)我得出的结论是'weight_decay'参数是权重上L2丢失的正则化参数。例如,在cifar10 solver中,weight_decay值为0.004。是否意味着要最小化的损失是“交叉熵+ 0.004 * sum_of_L2_Norm_of_all_weights”?无论如何,这是“交叉熵+ 0.004 / 2 * sum_of_L2_Norm_of_all_weights”吗?
答案 0 :(得分:0)
损失似乎是交叉熵+ 0.004 / 2 * sum_of_L2_Norm_of_all_weights。
查看AlexNet的官方caffe实现,解算器文件(https://github.com/BVLC/caffe/blob/master/models/bvlc_alexnet/solver.prototxt)设置weight_decay = 0.0005,而在原始的AlexNet论文(http://papers.nips.cc/paper/4824-imagenet-classification-with-deep-convolutional-neural-networks.pdf,第6页)中,渐变更新包括术语< / p>
-0.0005 * E * w_i
由于梯度是损耗的偏导数,并且损失的正则化分量通常表示为λ* || w || ^ 2,似乎
weight_decay = 2 *波长