我想对网络的权重同时应用L1和L2正则化。然而,我找不到一种方法来独立调整这些正则化的强度。Keras的文档也没有提供任何相关信息。
那么,在l1_l2
正则化器中是否有办法使用不同的强度呢?或者有没有其他方法可以达到同样的效果?
我目前的模型非常简单:
stren = 0.001model = Sequential()model.add(Dense(64, input_dim=148, activation='relu', kernel_regularizer=reg.l2(stren)))model.add(Dense(1, activation='sigmoid', kernel_regularizer=reg.l2(stren)))
我希望能够实现类似于下面的效果:
kernel_regularizer=reg.l1_l2(l1_str, l2_str)
回答:
当然,你可以独立地调整正则化器的强度:
from keras import regularizersregularizers.l1_l2(l1=0.001, l2=0.1) # L1的强度设置为0.001,L2的强度设置为0.1