settings设置问题
Created by: qingqing01
类似下面设置settings, 如果放在配置文件的最后,会导致 momentum、weight_decay(L2正则) 不起作用。
原因: config_parse.py解析配置文件时,会给parameter的config里填充momentum和weight_decay。而在 paddle/trainer_config_helpers/optimizers.py
里使用 default_xxx()设置的momentum和weight_decay的全局变量,如果setting放在配置文件最后,会先解析网络的layers,再解析settings。 解析网络的layers时,momentum和weight_decay是0,就会导致有问题。
settings(
batch_size=32,
learning_method = MomentumOptimizer(0.9),
regularization = L2Regularization(0.0004),
learning_rate = 0.01,
)
简单的验证方法,可以把配置文件转换为proto string格式,观察即可。
python -m paddle.utils.dump_config config.py > test.protostr