что является керас-эквивалентом этой потери в потоке softmax + регуляризация l2 - PullRequest
0 голосов
/ 26 февраля 2019

Я наткнулся на этот код, который хочу преобразовать в керасы:

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

Как это можно записать как функцию потери Кераса?

Ответы [ 2 ]

0 голосов
/ 26 февраля 2019

См. здесь для описания регуляризаторов в кератах.Вот игрушечный пример:

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)))
0 голосов
/ 26 февраля 2019

Вы можете использовать активацию и kernel_regularizer на слое keras следующим образом:

Dense(..., activation='softmax', kernel_regularizer=regularizers.l2(0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...