什么是这个张量流softmax损失+ l2正则化的keras等价物

问题描述 投票:0回答:2

我遇到了我要转换为keras的代码:

l2 = lambda_loss_amount * sum(
   tf.nn.l2_loss(tf_var) for tf_var in tf.trainable_variables()
) # L2 loss prevents this overkill neural network to overfit the data
cost = tf.reduce_mean(tf.nn.softmax_cross_entropy_with_logits_v2(labels=y, logits=pred)) + l2 # Softmax loss

如何将其写成Keras损失函数?

tensorflow keras
2个回答
1
投票

有关keras中正则化器的描述,请参阅here。这是一个玩具示例:

from keras import regularizers
model.add(Dense(64, input_dim=64,
            kernel_regularizer=regularizers.l2(lambda_loss_amount),
            bias_regularizer=regularizers.l2(lambda_loss_amount)))

1
投票

您可以在keras层上使用activation和kernel_regularizer,如下所示:

Dense(..., activation='softmax', kernel_regularizer=regularizers.l2(0))
© www.soinside.com 2019 - 2024. All rights reserved.