Есть ли способ добавить керас «пользовательский слой» на основе / указать c штраф к общей функции потерь? - PullRequest
0 голосов
/ 03 марта 2020

У меня есть последовательная модель keras с некоторыми пользовательскими слоями. Теперь на одном из слоев, основываясь на вводе этого определенного c слоя, я хочу рассчитать штраф и хочу добавить штраф к функции потерь, которую оптимизатор пытается минимизировать в целом.

Я прошел через концепцию tf.keras.layers.ActivityRegularization, но изо всех сил пытался понять, как решить мою проблему.

1 Ответ

0 голосов
/ 03 марта 2020

Если вы хотите «добавить», вам просто нужно рассчитать выход / потерю слоя и использовать model.add_loss(loss_tensor)

....
loss_tensor = MyCustomLayer(...)(layer_inputs)
....

model = Model(model_inputs, model_outputs)
model.add_loss(loss_tensor)
model.compile(loss=any_normal_loss)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...